Log of the #duraspace-ff channel on chat.freenode.net

Using timezone: Eastern Standard Time
* JasonDGI joins07:59
* jonathangee joins08:03
* jonathangee leaves08:56
<JasonDGI>ff-modeshape-prototype git reports a successful build, but when i clone it I have 1 missing dependency (FOXMLParser)09:09
* jonathangee joins09:36
<cbeer>JasonDGI: sounds like a question for ajs6f. i think FOXMLParser is one of the things in our code09:49
<JasonDGI>i think so because the package is org.fcrepo.modeshape.foxml.FOXMLParser, but all i see FedoraOXML09:52
* ajs6f joins10:31
* elschlomo joins10:32
* fasseg leaves
<cbeer>ajs6f: infinispan is driving me crazy already.10:43
<ajs6f>What's up?
<cbeer>ajs6f: apparently they hold file handles open for everything in the filecache
(as a feature)10:44
<ajs6f>Like you've checked, and they know they're doing that?
<cbeer>i'm sure we can write a better (preservation) cache, but.. gah.
<ajs6f>Well, can we turn it off?
<cbeer>ajs6f: yup. they have a couple tickets in the tracker slated for infinispan 5.2
<ajs6f>Hm. Let me see what the slated date is for that.
<cbeer>ajs6f: nope. the workaround is to not use the file cache, and use jdbc/cassandra/etc instead10:45
* barmintor joins
<cbeer>ajs6f: yeah, let me dig the ticket out
ajs6f: the other annoyance: their proposed solution is to do a B-tree in a single large file.. not sure that's what we want anyway.
<ajs6f>https://issues.jboss.org/browse/ISPN/fixforversion/12314720
It was due yesterday, so it should be out soon. {grin}
No, a giant single file doesn't sound very nice. Neil would be terrified.10:46
<cbeer>https://issues.jboss.org/browse/ISPN-1362
and
https://issues.jboss.org/browse/ISPN-1936
anyway, nothing we probably can't do something about
(and, in fact, we'd probably want to anyway.. those int-based file names are kinda funky. imo)10:47
<ajs6f>Well, if we need to do a "preservation" cache anyway...
* anusha joins
<cbeer>in the short-term, i bumped the open file handles to 400k. ought to be enough for any one (of course, they promise to open up to 4m... ah well)
<ajs6f>Are they just maintaining some gigantic data structure in memory with all these file handles?10:48
<cbeer>i think so.
<ajs6f>Urg.
<cbeer>i think that's what the buckets thing is all about10:49
<ajs6f>Yeah, we can do better.
<cbeer>yeah, fortunately the API should be pretty close to a simple akubra plugin.. might even be a straightforward make-the-method-signatures-match port.
</optimism>
<ajs6f>org.infinispan.api.BasicCache just extends ConcurrentMap and a Lifecycle interface.10:50
That's a pretty simple cotract.
afk10:51
* ajs6f leaves
* ajs6f joins10:53
<cbeer>ajs6f: oh, and JasonDGI notice a problem in the prototype, but i haven't looked at it yet.10:55
[06:20:20] ff-modeshape-prototype git reports a successful build, but when i clone it I have 1 missing dependency (FOXMLParser)
7:16 cbeer
[07:00:36] JasonDGI: sounds like a question for ajs6f. i think FOXMLParser is one of the things in our code
7:16 JasonDGI
[07:03:23] i think so because the package is org.fcrepo.modeshape.foxml.FOXMLParser, but all i see FedoraOXML
<JasonDGI>oh yeah, FOXMLSequencer has a broken dependency in my cloned copy
i need to change my name so its easier to type10:56
<cbeer>autocomplete :)10:59
<ajs6f>FOXMLParser is the actual parser (in main/scala). FedoraOXML is the JAX-RS resrouce that accepts and retrieves FOXML (in main/java).11:00
Can't get in on Skype, trying phone.11:01
<JasonDGI>good luck ajs6f11:02
<ajs6f>Just getting busy ginal?!
Finally.11:03
<eddies>+1(805)399-120011:04
<ajs6f>You may have to try several times.
<eddies>https://www.pivotaltracker.com/projects/68482511:05
<anusha>got back11:07
* github-ff joins11:12
[ff-modeshape-prototype] ajs6f pushed 1 new commit to master: http://git.io/jWsMlA
ff-modeshape-prototype/master e6228e2 ajs6f: Cleaned up unused imports
* github-ff leaves
<cbeer>JasonDGI: i'm going to take this ticket: https://www.pivotaltracker.com/story/show/4306059711:13
and upload the graphs i got
<JasonDGI>isnt it done already?
<eddies>https://wiki.duraspace.org/display/FF/Lily11:19
<cbeer>JasonDGI: doesn't:11:22
https://www.pivotaltracker.com/story/show/43060661
duplicate
https://www.pivotaltracker.com/story/show/43060421
<JasonDGI>isnt that lily vs modeshape?
<cbeer>oh, duh.11:23
eddies, jonathangee: a bit of housekeeping later.. can we just refer to the sprints with the sprint numbers pivotal is using?11:28
<ajs6f>cbeer: let me know when you have a Lily comment in, and I'll close that ticket.11:30
<cbeer>JasonDGI: I'm thinking we should set up a hydra head and an islandora instance on one of the oxford VMs.11:34
JasonDGI: you guys use solr right? and solr4 would be ok?
(if so, i'll deploy a multicore solr into futures6 )11:35
5000 lines, huh? more like 50 :P
<JasonDGI>i think islandora can do solr 411:37
<ajs6f>https://issues.jboss.org/browse/MODE-295
<cbeer>"ow"++11:43
<ajs6f>Oh, please! No!11:44
<cbeer>ok, solr4 runs on futures6:8080/solr11:48
* anusha leaves11:51
<cbeer>https://issues.jboss.org/browse/ISPN-1362
7:46
and
7:46
https://issues.jboss.org/browse/ISPN-1936
ajs6f: want to send that email about modules you sent me the other day?11:52
<ajs6f>Sure.
* anusha joins
<cbeer>(we should also choose a final package name for this stuff)11:56
out-of-the-box-modeshape-apis--11:58
<ajs6f>org.fcrepo.awesome
<JasonDGI>org.fcrepo.f**kn.awesome11:59
<cbeer>i've started filing tickets for these features
<ajs6f>http://www.day.com/specs/jcr/2.0/12_Observation.html
<cbeer>JasonDGI: can islandora be mounted at a suburi?12:00
<JasonDGI>???12:01
<cbeer>http://futures6/islandora/ ? or does it need to live at /?
<jonathangee>yup12:02
you just setup drupal in a subfolder
<cbeer>cool
<jonathangee>something like this12:03
http://drupal.org/node/135206
<ajs6f>I want to do OWL inferencing in our prototype!12:04
https://docs.jboss.org/author/display/MODE/Using+JTA+Transactions12:05
<JasonDGI>hydraland the amusement park?12:06
<ajs6f>barmintor— if you're listening, any thouhts?12:07
<barmintor>I am listening… to the Drive-By Truckers while I work out this dataset ingest12:08
<cbeer>i guess i just suffer from fedora/stockholm syndrome.
<barmintor>& discuss next week's meetings crammed in before c4l w/ my boss
<ajs6f>Eddie was asking what we (thinking of ourselves _not_ as FF project people, but simply as users of Fedora) would like to see shown off at code4lib...?12:09
<barmintor>Glacier on FCRepo 3.7-SNAPSHOT12:10
<ajs6f>Fair enough. Eddie was asking more about the 4 prototype. How about Glacier on that?12:11
<anusha>I'l ask for more storage on the VMs
<cbeer>anusha++
<barmintor>Yeah, I told Eddie I'd look into Glacier under Modeshape ASAP
<cbeer>it hasn't been a real issue yet, until we fix this file handle issue
<ajs6f>https://docs.jboss.org/author/display/MODE/REST+Service+3.x12:13
<cbeer>https://www.pivotaltracker.com/story/show/4349571512:17
ajs6f: is there a story for you to tell us how to do OSGi/Spring right?12:19
<ajs6f>Urg. That'll take a bit of doing, but I can start writing it.
I guess the acceptance condition is "It's easy to add a new module."
{grin}
https://www.pivotaltracker.com/story/show/4349580112:20
On that one, Chris, I already chnged the pakacge name to org.fcrepo.modeshape.
That happened after initiali Springification.
<cbeer>is there a non-modeshape-specific programmatic api we want to expose?12:21
or YAGNI?
<ajs6f>There's the JCR Java API itself.
<JasonDGI>org.fcrepo4.modeshae?12:23
*shape12:24
<cbeer>which works until we do fcrepo5 :P
<ajs6f>I'm already on Fedora 8. Haven't you guys pulled lately?
<jonathangee>fedora 8. i just installed fedora 1812:26
<JasonDGI>race ya
<jonathangee>why can't we have cool names like "Spherical Cow"
<JasonDGI>org.fcreopX.modeshape - because X makes everything more eXciting
<ajs6f>How about "Akubra"? Oh, wait.12:27
<JasonDGI>bolar?
<cbeer>https://gist.github.com/465699512:37
futures1:/opt/ff-jmeter-madness/log12:39
anusha: here's my R script too: https://gist.github.com/9c1ebad95eb929c292f912:40
<anusha>cbeer: Thanks :)12:41
<cbeer>(i'm still confused what this task actually is... data visualizations for what/who?)12:42
but not my problem any more :P
(anusha++)
<anusha>better than dealing with java12:46
<JasonDGI>eddies: get some sleep12:51
* anusha leaves
<cbeer>better than java, faster than glacier.
<eddies>cbeer: viz for us, so we get a sense of performance across different axes, including data size, threads, nodes, api operations13:00
and also viz for public consumption
i also want this as a benchmark to measure against as we do new work, so we have a sense of whether we're doing things that are improving or worsening performance against those various axes13:02
<JasonDGI>hydra is being installed on futures6 too, right?13:13
<cbeer>yes.13:14
<JasonDGI>does hydra use tomcat/apache as a frontend? or does it supply its own?13:15
*frontent = container, sorry
<cbeer>i was going to use passenger under apache
i'm 99% sure it plays nice with mod_wsgi
(which i assume you need?)
<JasonDGI>islandora runs inside drupal (im dont know what passenger is)13:16
<cbeer>passenger is the rack equivalent of mod_wsgi
unless mod_wsgi isn't cool any more.13:17
duh. php.13:18
sorry, had databank on my mind.
equivalent of mod_php.
<JasonDGI>can i install drupal on futures6, or does anyone have an issue with that13:25
<cbeer>go for it. i think it should have php and all that already.13:27
<JasonDGI>is port 80 even open on these machines?
<cbeer>nope.
<JasonDGI>:(
<cbeer>nothing's exposed outside but port 5678 afaict
ssh tunnels are your friend
<JasonDGI>+113:29
<cbeer>JasonDGI: i'm seeing the same FOXMLParser error in my IDE13:47
<JasonDGI>netbeans or eclipse?13:48
im using netbeans
<cbeer>intellij
<JasonDGI>i managed to find the file: scala/org/fcreop/modeshape/foxml/FOXMLParser.scala, but netbeans wont recognize it13:49
<cbeer>yeah, i was about to say.
that's what is should be, ajs6f wrote that stuff in scala
<JasonDGI>and intellij doesnt recognize it?
<cbeer>maybe our IDEs are just more stupid than eclipse
<JasonDGI>haha, more stupid than eclipse, good one!13:50
<cbeer>yeah, it looks like my IDE doesn't know about scala?
<JasonDGI>netbeans has a scala plugin, and ive installed it but it still cant resolve the dependency, derp
i blame ajs6f, its his fault13:51
(and thanks for the tab=autocomplete :)
<cbeer>maybe it's just back to eclipse for us.
<JasonDGI>those were dark days
<cbeer>ok, i installed a scala plugin and i think my stuff is happy13:55
ok. now to remember what i wanted to do when i opened the IDE up..13:57
man. spring is just magic.14:01
<barmintor>I can't tell if you're being sarcastic or not, but it let me do some things that would have required magic before we re-jiggered Fedora to use it :P14:03
<ajs6f>Spring is not magic. It's DI. _DI_ is magic.14:06
Did y'all get the Scala thing straightened out?
I wrote it that way to get it done quick.
We can rewrite it in Java if need be.
If you look at it, youll see how much nicer XML is in Scala.14:07
<JasonDGI>the scala still doesnt work right in netbeans14:08
the scala itself is fine, but the java can't find it
<ajs6f>Hm. Maven will take care of that in actual build or run. I guess there are some settings to use in NetBeans for Scala-awareness?14:09
Can you do the NetBeans equiv of Eclipse's "Add as a Source Directory"
?
<JasonDGI>i feel like i know how to do it, but its not working14:11
* ajs6f1 joins14:13
* ajs6f leaves14:14
<cbeer>barmintor: i wasn't making value judgements about magic14:15
but the auto-wiring stuff is entirely opaque to me.14:16
<ajs6f1>Is this is the ModeShape prototype?
Can I help?
<barmintor>cbeer: oh, yes, in that sense it really is magic.
<cbeer>ajs6f1: oh, i don't care. i don't need to mess with it now.14:17
but presumably i should use spring to wire in these observers.
<ajs6f1>Okay. let me know if it starts blocking you.
<cbeer>some day.
<ajs6f1>Yes, you should.
<cbeer>but i need to get my observer working first :P
<ajs6f1>Do you want me to set up a bit of Spring ready to recieve your EventListener?
Or send you an example?14:18
<cbeer>sure, that'd be awesome
<ajs6f1>Okay. Give me a bit.
Are you working on a branch i can use? Or should I just send you an email with example?14:19
<cbeer>or push your branch up somewhere and i'll merge my changes into it
i'm all local right now.14:20
<ajs6f1>P.S. If you use Camel, Camel has a nice JCR listener ability all ready to go.
Okay, I'll make a "EventingSpring" branch. I'll expect a listener called "CHRISLISTENER".
So it's be easy to find.
* github-ff joins14:21
[ff-modeshape-prototype] ajs6f created EventingSpring from master (+0 new commits): http://git.io/ubMLmg
* github-ff leaves
* jonathangee leaves14:23
<ajs6f1>Chris— given that (I think) we will want more than one type of event publishing, let me suggest that you listen to JCR events and publish the Fedora-interesting ones onto an internal queue (just something like a java.util.concurrent .ConcurrentLinkedQueue), then have a bean that listens to that internal queue and publishes to JMS. Then we can add other forms of publishing by adding more listeners to the internal queue without directly loading the repo.14:26
WDYT?
I can have Spring inject the internal queue for you, so you needn't set it up or anything.
You should certainly expect Spring to inject the Repository for you.14:27
<cbeer>sounds good to me
<ajs6f1>And I can have it inject an ActiveMQ broker, if you want.
<cbeer>sure. we can break that part out later anyway14:28
<ajs6f1>Sure thing. I'll inject all three (repo, internal queue, JMS broker).14:29
You should pick them up with annotation javax.inject.Inject.
That keeps Spring out of our actual code.
* github-ff joins14:39
[ff-modeshape-prototype] ajs6f pushed 1 new commit to EventingSpring: http://git.io/H2KGbA
ff-modeshape-prototype/EventingSpring 1515c9f ajs6f: Set up Spring for eventing
* github-ff leaves
<ajs6f1>There ya go.
It won't work until you replace CHRISLISTENER with an actual class.14:40
<cbeer>ajs6f1++
<ajs6f1>You can inject those three tihings, as well as other stuff that you wouldn't care about (related to the JAX RS resources and whatnot).
This is exactly why we need to modularize. We're going to end up with Spring XML coming out of our ears.14:41
<JasonDGI>springing out of our ears?
<ajs6f1>Badump, ching!
also, Chris, notice that I moved all the Spring into src/main/resources/spring, just to keep it a little organized.14:42
In the new Spring (eventing.xml), see how I imported repo.xml? That sets up the repo. rest.xml also imports that.
Then you can see how I set up the internal queue and the broker (which looks at activemq.xml for its config).
And the repository comes in from repo.xml.14:43
And since these guys are all type-unique in our ecosystem, you can inject them without having to specifiy a particular bean. Spring reflects on the classes and realizes that only one bean will do for what you want.
If you want to see how to get a particular bean injected without using Spring-specific Java, look at o/f/m/s/ModeShapeRepositoryConfiguration. that's a metaannotation that qualifies what would ordinarily be just a Spring Resource as one we want to use for confiuring the repo. I use it in repo.xml in the line:14:45
<bean class="org.springframework.core.io.ClassPathResource">
<qualifier type="ModeShapeRepositoryConfiguration"/>
<constructor-arg type="String" value="my_repository.json"/>
</bean>
At this point, we could rip out all of the Spring XML and replace it with Guice or Blueprint or anything that support JSR330 injection annotations.14:46
that's why I say that DI is the magic.14:47
Not Spring.
afk brb14:49
* ajs6f1 leaves
* ajs6f joins14:52
* elschlomo leaves14:53
<cbeer>ajs6f: ok, i've been studying your code, and i think i'm getting lost at the ModeShapeRepositoryFactoryBean14:56
i've wired in the queue fine
time to read up on Spring/DI i guess14:57
<JasonDGI>dont do it, its a trap!
<barmintor>Yaar, Bean is an extra word in that className; it don't mean nothin'.15:00
<ajs6f>What's uncoll about that class?
Basically, it allow Sprig to generate a repostiroy.15:01
Ben— I agree, but it seemed like the usual style of name that Spring itself uses.
<JasonDGI>umm.. i believe you mean Capt.?
<ajs6f>Chris— take a loo at:
http://blog.springsource.org/2011/08/09/whats-a-factorybean/
It's a nice explanation for the whole "is it a bean, is it a fatory— it's the CONFUSER!" thing.15:02
http://www.youtube.com/watch?v=uwx8qGXSAv815:04
<CaptCodestyle>I like Spring but I don't need their naming style (cf. SimpleRemoteStatelessSessionProxyFactoryBean)
<ajs6f>Fair enough.
<CaptCodestyle>(tho I guess that's what autocomplete is for)
<ajs6f>One of the things I like about Scala is the way its fine-grained type system makes naming make more sense.15:05
One of the many things.
<CaptCodestyle>they also make affordable wool hats, though the quality is suspect and the coarse sizing never fits me.
<ajs6f>? There's a hat co. named "Scala"?15:06
<CaptCodestyle>yeah
<ajs6f>Hm. Maybe we should go for hats and beer as our schwag.15:07
Fedora: It's beer hats!
<CaptCodestyle>http://beeradvocate.com/beer/profile/9414/?view=beerfly&ba=Bourre15:09
Scala is a hatmaker, a language, and a brewpub in France
<ajs6f>Sounds like our next hackfest location.
Fedora: the beer that tastes like it was made in a wool hat!15:10
In France!
<cbeer>doh. i was setting my property as JcrRepository, not Repository.15:11
<ajs6f>Ah. JcrRepository is the ModeShape-specific subclass.
It brings extra MS-supplied goodness.
We could inject JcrRepository instead, but I don't think you should have to be using any extra-JCR functionality, eh?
<cbeer>i should have just had the IDE auto-complete all of that.15:12
nah, vanilla Repository is good with me
<ajs6f>It's a little annoying, because so many ModeShape-specific classes implement JCR-defined interfaces, which confuses the IDE a little. It may not correctly figure out which one to offer.15:13
<cbeer>boo.. back to the IDE not recognizing scala15:19
i wonder what magic incantation i did before..15:20
hm, looks like i have to use mvn first, then it'll get it (out of target, i guess)15:21
<ajs6f>Is the Scala folder recognized as a source folder?
<cbeer>yep15:22
<ajs6f>Also, have "Enable Scala Nature"?
* JasonDGI leaves15:24
* github-ff joins15:30
[ff-modeshape-prototype] cbeer pushed 2 new commits to EventingSpring: http://git.io/h2XP8Q
ff-modeshape-prototype/EventingSpring 27a643b Chris Beer: Fix up test context after spring .xml files moved
ff-modeshape-prototype/EventingSpring 9834aa6 Chris Beer: stdout logging observer
* github-ff leaves
<ajs6f>Ooh, sorry about the test context, Chris.
Forgot to move that.
<cbeer>ajs6f: one question about that.. it's only loading /rest right now
(/spring/rest.xml rather)15:31
<ajs6f>Yep. rest,xml imports repo.xml
<cbeer>i guess i want to write a test with /spring/eventing.xml too
<ajs6f>That annotation takes a list of contexts.
You can just add it where you want to .
<cbeer>ok
<ajs6f>I think you can just use annotation({"mycontext","othercontext"})
ike that.
Check the docs on that annotation. I _am_ sure that you can use more than one.15:32
<cbeer>cool. i think i pushed something i shouldn't have, but i'll give that a try
hm, or maybe i didn't... i wish intellij was smart enough to reload on changes
<ajs6f>The Maven Jetty plugin can be configured to do that. Might be worth doing.15:33
Then you could run the app, make changes, and watch them;.
<cbeer>ajs6f: ok, and it looks like i need to add a maven dependency on activemq?15:35
or is now a good time to build fedora-events-activemq or whatever
<ajs6f>Oh, fudge! Oh course you do. I can't believe I forgot that.
It should just be activemq-spring, which will pull in whatever else it needs.15:36
No, I don't want to bother modularizing the build without modularizing the architecture, because the latter should rive the former.
s/rive/drive
And we haven't got that going yet.
<cbeer>cool. and then, just make sure i have this right, and have something to copy/paste into documentation later..15:41
<ajs6f>Can we itest it in some simple way? Like by connecting a listener to the JMS queue from outside the app?15:42
<cbeer>this observer is the simplest possible observer, and is mainly there to shield our downstream consumers from the raw JCR feed
it may filter the raw events into logical chunks about "fedora" objects
<ajs6f>Right. It just puts Fedora-related stuff on the internal queue (because there ar egoing to be a lot of JCR events that aren't interesting at the Fedora layer).15:43
<cbeer>and gives a place for the activemq-based thing to latch onto (and could be swapped out with that erlang thing or otherwise)
and, if you were as fancy as UVa or Stanford, you might reject the entire component and just use camel-jcr to accomplish the same thing (only better)
<ajs6f>{grin}15:44
So now we just need a something that listens to the internal queue and publishes to JMS.
<cbeer>i guess we should expose the filtering algorithm in some camel-consumable way, eventually
i guess that's a good class to have and inject too
<ajs6f>Yeah. Let me look and see if there is a JCR way to do that.15:45
<cbeer>in JCR you just pass in params to addEventListener
node path, node type, event type, and a list of UUIDs, i think
<ajs6f>Right. We could use nodeType to filter. like nodeType = fedora:resource.15:46
That would cut out a lot of traffic.
<cbeer>yeah, let me check the docs on that again.. i seem to remember something tricky about that, though
<ajs6f>Or we could plug in a filtering step in the Listener and offer implementaions ffor that.
Like "FedoraObservationFilter"
with one method Boolean filter(Event);15:47
<cbeer>yeah, that was my initial thinking. that way we could shield future implementations from our jcr types
<ajs6f>Oh, that's a good reason to do it.
We could even use DI to inject it. {grin}15:49
<cbeer>yeah, if i can figure that out (and it seems plausible) that's how i'll do it15:50
<ajs6f>Let me now if you need help.
It might look like:
@Inject
FedoraObservationFilter filter;
in the listener. And in the Spring,
<bean name="observationFilter" class="org.fcrepo.modeshape.observation.DefaultFilter"15:51
</bean>
<cbeer>is there a good list of common java interfaces somewhere?15:52
<ajs6f>Much as I wouldn't want to use Spring-specific anything in the code itself, I'm all in favor of relying on Spring wiring to establish configuration. (Or any other DI framework, for that matter.)
Common Java interfaces?
You mean the class libraries?
<cbeer>i briefly wondered if there was a good interface or class to extend for this filter class
but maybe i just shouldn't care, huh?15:53
<ajs6f>Oh, right. I don't know if there is anything in Java's core, but I'll take a look, and after that, I'll take a look at Guava.
No, I thin you've got the right idea.
http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/base/Predicate.html15:54
Bingo.
And it can be used with the nice Collections apparatus in Guave, which we alre already using.
<cbeer>cool, thanks.15:55
<ajs6f>Seems like one way to do it would be with FilteredCollection<E>.
That's convenient.15:56
Then there's a static Collections2.filter(Collection, Predicate)
(P.S. this kind of functional idiom is all built into Scala).
Y'know, the internal queue maybe shouldn't be a queue if more than one mechanism will be publishgin out of it.16:06
Maybe it shoud be more like a JMS Topic.
<cbeer>so, maybe we don't need the internal one at all? just something to go from JCR direct to JMS?16:09
and JCR to XXX?
<ajs6f>Mm. I don't like that because it's more connections between more things.16:10
There must be something like a JMS Topic that isn't JMS.
<cbeer>i saw something in the google stuff.. let me find it again
<ajs6f>Cool.
<cbeer>http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/eventbus/package-summary.html
i'm not sure what it gives us over just listening to JCR though?16:11
<ajs6f>Oh, _fantastic_!
That's perfect.
We could use this for any number of things
Triggering serialization to the durable store(s).
Event publishing.
Audit management.
Oh, this is just what we need, and it's nice and light.16:12
<cbeer>ok. while we think of those things, i'll finish this basic thing up so islandora can be happy
<ajs6f>{grin}
<cbeer>i'm unconvinced we actually need that abstraction, but.. it's the java way.
<ajs6f>So you can just replace the Queue that's now being injected with one of these widgets.
<cbeer>and i guess we are trying to shield things from JCR
<ajs6f>And JCR from things.
We don't want to load the repo itself with any more synchronous operations than we have to.16:13
Let's keep that nice tight transactional core we enisioned in DC.
Looks like to use this, you'll need to pull in Guava Commons.16:15
I wonder if there is an overarching dependency we can pull from Guava. We're already using Guava Collections.16:16
I'm heading out. See y'all soon.16:33
quit
That didn't work.
* ajs6f leaves16:34
* github-ff joins16:36
[ff-modeshape-prototype] cbeer pushed 2 new commits to EventingSpring: http://git.io/enUO-Q
ff-modeshape-prototype/EventingSpring f2e243c Chris Beer: add activemq-spring dependency
ff-modeshape-prototype/EventingSpring 745a902 Chris Beer: add SimpleObserver that (could) filter JCR events to salient events and tosses them on a queue for someone else to pick up.
* github-ff leaves
* github-ff joins17:00
[ff-modeshape-prototype] cbeer opened pull request #24: Eventing spring (master...EventingSpring) http://git.io/Rjrchw
* github-ff leaves
<CaptCodestyle>Google: SWORD REST repository; RESULT: http://en.wikipedia.org/wiki/File:Sword_rest_TQ3280_427.jpg17:03
* CaptCodestyle leaves17:10
<cbeer>socks++17:54
ok. i was going to get islandora going18:16
but no such luck.
* github-ff joins19:59
[ff-modeshape-prototype] cbeer pushed 1 new commit to master: http://git.io/75LT8A
ff-modeshape-prototype/master 55641d4 Chris Beer: check if the object exists before trying to return a datastream
* github-ff leaves
* github-ff joins21:52
[ff-modeshape-prototype] ajs6f pushed 1 new commit to EventingSpring: http://git.io/qob2_Q
ff-modeshape-prototype/EventingSpring 9c0e7ee ajs6f: Added more Guava goodness
* github-ff leaves
* jonathangee joins22:46
* jonathangee leaves23:20
* github-ff joins
[ff-modeshape-prototype] ajs6f pushed 1 new commit to EventingSpring: http://git.io/E6TZkQ
ff-modeshape-prototype/EventingSpring ee42888 ajs6f: Now with two event filter implementations. NOOP does nothing, Default looks only at nodes with a mixin type in the fedora namespace
* github-ff leaves
* github-ff joins23:25
[ff-modeshape-prototype] ajs6f pushed 1 new commit to EventingSpring: http://git.io/SXO7Dw
ff-modeshape-prototype/EventingSpring 3e7f536 ajs6f: Added some comments
* github-ff leaves
* github-ff joins23:37
[ff-modeshape-prototype] cbeer pushed 1 new commit to master: http://git.io/XcemMQ
ff-modeshape-prototype/master 18326dc Chris Beer: Merge pull request #24 from futures/EventingSpring...
* github-ff leaves

Generated by Sualtam