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

Using timezone: Eastern Standard Time
* barmintor joins02:07
* barmintor leaves02:32
* barmintor joins03:13
* barmintor leaves04:36
* kaarefc joins08:28
* eddies joins08:53
* eddies leaves
* eddies joins
* kaarefc leaves09:02
* avessey joins09:05
* eddies leaves09:28
* eddies joins09:42
* eddies leaves
* eddies joins
* kaarefc joins09:56
* kaarefc leaves10:11
* kaarefc joins
* ajs6f joins
Hey, Chris "C-note" Beer?10:12
<eddies>he's just getting ready to head out10:14
want me to get him?
<ajs6f>Not urgent.
<eddies>nm. he's gone anyway10:15
<ajs6f>I'm starting to factor the http stuff out of the kernel, and wanted to check with him about his recent changes.
I'll catch him later.
<cbeer>ajs6f: i'm here now.10:53
<ajs6f>Hoy!
So, the questin was...
when you pulled the JCR code out of the HTTP code, did you leave the deleteResource method in AbstractResource, or did you factor that too?10:54
I'm working on https://www.pivotaltracker.com/story/show/44145229
<cbeer>ajs6f: no, i left it in there. the business logic should probably go into those service models, no?10:55
<ajs6f>Exactly.
That's cool— I'll do it.
<cbeer>ajs6f++
i got some pointers about lucene from ndushay
<ajs6f>You can get a lot of karma in duraspace-ff just by promising to do stuff.
<cbeer>and it seems like calculating on the fly may just work.
<ajs6f>Calculating the _total size_?10:56
<cbeer>if we can get the right data in there, of course.
yeah, total siz.e
<ajs6f>Sweet. That's DYYYYNAMIIiii…. no, just dynamic.
{Goodtimes reference}
* github-ff joins11:24
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/TU1C4g
fcrepo4/master 7d401ff ajs6f: Added fcrepo-http-commons as per https://www.pivotaltracker.com/story/show/44145229
* github-ff leaves
* barmintor joins11:28
<cbeer>wow, i totally misread the merritt storage spec11:57
<ajs6f>?
<cbeer>they aren't posting content to the add version endpoint11:58
they're posting a MANIFEST with links to the content.
<ajs6f>Hm.
Not sure whether I like more or less.
<cbeer>even less RESTful, certainly.
<ajs6f>Aye.
<cbeer>but i think i understand why they went that way.11:59
makes me really hate them for doing this as multipart/form-data though.12:03
<ajs6f>Yah, even if you are going to do a manifest, you can do that in a more transparent way.12:04
* github-ff joins12:19
[fcrepo4] cbeer force-pushed merritt from b4cc4e4 to 2602def: http://git.io/hAIRSw
fcrepo4/merritt 05130bc Chris Beer: update merritt webapp to use the merritt REST API
fcrepo4/merritt 16ef934 Anusha Ranganathan: Add merritt <-> fcrepo 3.x mapping document
fcrepo4/merritt 5a5f3fd Chris Beer: wire in merritt API to fcrep-webapp
* github-ff leaves
<ajs6f>Do we want a breakout session for DevChallenge?12:26
* github-ff joins12:30
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/da-_fg
fcrepo4/master a0bb36e ajs6f: Moved JAXB resources to fcrepo-http-commons
* github-ff leaves
* github-ff joins12:35
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/fj6lTw
fcrepo4/master 8179493 ajs6f: Reduced size of Spring dependencies
* github-ff leaves
<barmintor>eddies: I'm trying to get the organizers to make an announcement about dev challenge today12:39
<eddies>barmintor++
* ajs6f leaves12:42
* ajs6f joins
* ajs6f leaves
* ajs6f joins
Ben, when you look at:12:43
https://www.pivotaltracker.com/story/show/44206401
be aware that my recent commits moved the FOXML stuff from kernel to legacy-api.
Nothing is more legacy that FOXML.
<barmintor>eddies: talked to Margaret Heller earlier, copied you on the email I just sent12:45
<eddies>ok. i'm running out to deal w/ having a car for tonight12:46
will hopefully be at the forum by 1
is there lunch at the forum or is everyone on their own?
<ajs6f>I think on-own.12:47
I was eying that deli across the highway,
.
<barmintor>ajs6f: the kreplach was tasty. the corned beef was decent.12:48
<eddies>someone text/email me with where folks end up for lunch, maybe i can meet you after i sort out the car
<ajs6f>Tasty+decent = good enough for me. I'm starved.
* github-ff joins12:55
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/PtEg2Q
fcrepo4/master 1e0ccb1 ajs6f: Cleaning up Enunciate config and adding it to fcrepo-dc (which supplies HTTP endpoints)
* github-ff leaves
* eddies leaves12:56
* barmintor leaves13:09
* barmintor joins13:17
<ajs6f>I wonder if that deli does good takeout. Maybe instead of pizza, we get a big bag of sandwiches?13:59
* github-ff joins14:05
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/Wqm2Ow
fcrepo4/master 165e352 ajs6f: Added CXF dependencies back into fcrepo-webapp to support mvn jetty:run
* github-ff leaves
<ajs6f>I don't see an FF breakout— should we add one, or just circulate and use our formidable charms to attract people?14:06
<cbeer>ajs6f: yes, let's add one.14:08
<ajs6f>You or me. If we both try, we could destroy the server.
<cbeer>i'll do it
<ajs6f>Thnks!
I owe you one commit.
<cbeer>Except I can't get to the doc
<ajs6f>{Sigh}
<cbeer>in.14:09
* ajs6f leaves14:13
* eddies joins14:16
* eddies leaves
* eddies joins
* eddies leaves
* eddies joins
<cbeer>checkm--14:31
i don't want to parse that.
* eddies leaves
* ajs6f joins14:33
* github-ff joins14:34
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/kfCs1w
fcrepo4/master 798627c ajs6f: Improved namespace JAX-RS resource
* github-ff leaves
* github-ff joins14:43
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/ET9xSA
fcrepo4/master ede56f0 ajs6f: Removed explicit JSON mapper bean that was supporting JAX-RS resources. We are fully JAX-RS/JAXB.
* github-ff leaves
<cbeer>ajs6f++14:44
<ajs6f>They call me… the CODE JANITOR!
* bess joins14:59
* BHSPiMonkey joins
ohai
<kaarefc>EHLO15:00
<BHSPiMonkey>so, hacking
<barmintor>BHSPiMonkey: what's on your mind?
<BHSPiMonkey>making sure I understand: the dev challenge is for work -on- the fedora codebase, and not on things that consume fedora's APIs, yes?15:01
<cbeer>BHSPiMonkey: i think consuming the APIs is in-scope for the challenge15:02
<barmintor>it needs to interact with the fcrepo4 project, but it could be an upstream app15:03
* eddies joins15:05
* eddies leaves
* eddies joins
* eddies leaves
* eddies joins
<BHSPiMonkey>I see15:06
are projects getting presented/finalized at tonight's thing?15:07
<ajs6f>That would be wonderful.
barmintor will give you a lovely beer if you do that.15:08
<cbeer>doesn't the competition go later than that, though?
<ajs6f>Sure, but that's for the BIG CASH MONEY.
<cbeer>yes: "By Thursday"
we left ourselves a lot of wiggle room there
<ajs6f>I'm happy to promise Ben's beer as an intermediate prize.15:09
<cbeer>encouragement to participate?
<barmintor>The competition is judged early on Thrusday
<ajs6f>BHSPiMonkey: what are you thinking about building?
* github-ff joins15:11
[fcrepo4] cbeer pushed 1 new commit to merritt: http://git.io/TWa9dA
fcrepo4/merritt 1146fa7 Chris Beer: Checkm manifest parsing
* github-ff leaves
<BHSPiMonkey>ajs6f: but it's super top secret, duh15:12
<ajs6f>Fair enough. cbeer and I (and probably other FFfolk will be around for consultation during the breakout sessions.15:13
<BHSPiMonkey>I might attend the breakout sesh, I think. I wasn't able to add my name to the signup gdoc, though
<ajs6f>No worries. We'll be happy to see you.
<BHSPiMonkey>(So I don't know how well the headcount estimates are gonna work out)15:14
Disclaimer: I don't know anything about fedora
<ajs6f>Popularity hurts. We'll take the hit.
* eddies leaves15:17
<cbeer>ajs6f: should we have a service to map the fedora object model to JCR paths?15:32
or is it a feature to leak those downstream?
<ajs6f>Both.
It's nice to make things easy for people who don't care what's going on under Fedora's hood.15:33
<cbeer>so. a service that does JCR paths, but the create services just take a JCR path string?
<ajs6f>But it's also nice to let people who have unusual needs or special expertise to get their hands dirty.
"the create services"— you mean like ObjectService?
<cbeer>ajs6f: yes, sorry. create methods.
<ajs6f>No, I get you.15:34
Yeah, I think that makes sense. Maybe a singleton that looks up JCR paths for a given Fedora resource?
E.g. getJCRLocation(String pid)15:35
and
getJCRLocation(String pid, String dsIs)
s/dsIs/dsId
both returning String.
<cbeer>and probably a datastream-content-location method15:36
<ajs6f>That would be a non-mutating service, so it could just keep a single session open at all times.
Oh, yeah, good point.
That weird JCR convention jcr:content/jcr:data.
<cbeer>or, maybe that's better wrapped in the DatastreamService15:37
actually.
<ajs6f>Hm. So no new singleton, just another method or two on [Object|Datastream]Service?
<cbeer>i think the JCR path lookup happens on a singleton15:38
but getting a datastream's content InputStream can probably just live on the DatastreamService
<ajs6f>Oh, the InputStream itself.
<cbeer>i don't think we need to leak jcr:content/jcr:data downstream
<ajs6f>Right, I get you.
Okay, that makes sense. I like the idea of switching stances:15:39
From trying to hide the engine-works from clients, to trying to _protect_ them from having to know about it, but not _preventing_ them from learning about it, if they want.
<cbeer>ok. then jcr:content/jcr:data is a JCR convention, so we don't need to worry about it15:41
<ajs6f>I guess if you're going to get that far into the works, you're going to have to learn that anyway, right?15:42
We did.
* bess leaves15:44
<ajs6f>See you in a bit, cbeer.
* eddies joins15:54
* eddies leaves
* eddies joins
* kaarefc leaves15:56
* github-ff joins16:04
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/T6ZDyg
fcrepo4/master c52a989 Chris Beer: JCR path service and datastream inputstream service
* github-ff leaves
<ajs6f>Eddie— where you at?16:14
* github-ff joins16:25
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/shNrNA
fcrepo4/master 2ad6e52 Chris Beer: tests for datastream service
* github-ff leaves
* github-ff joins16:27
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/mTLaQg
fcrepo4/master a4328c5 Chris Beer: paths tests; paths are relative to the root node, not absolute paths.. we'll see if that's a good idea
* github-ff leaves
* ajs6f leaves16:50
* kaarefc joins17:15
* barmintor leaves17:17
* ajs6f joins17:33
Cbeer, when you made the new DSService and ObjService, did you make the legacy api _use_ thm?
* github-ff joins17:53
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/nvx0Nw
fcrepo4/master 54a087b ajs6f: Changed to use the fact that non-mutating methods do not need to create new sessions
* github-ff leaves
* BHSPiMonkey is still being bad at using maven18:00
http://pastie.org/private/7ejziv8uzeuxk9t1medmxg18:07
<ajs6f>BHSPiMonkey: You want to start in the root: fcrepo4. Do a 'mvn clean install' there. Then, after having done that, you can do 'mvn jetty:run' in fcrepo-webapp.18:12
This is due to the fact that our built artifacts are not yet being published to a public Maven repo.18:13
And that's due to the fact that we're in early days and developing at light-speed. Especially cbeer.
Give that a try and let us know if it doesn't work.
---18:15
Monsters of Fedora, I'm heading out back to the hotel to make a few calls and so forth. I'll catch up with you at Fedora Mansion. Don't drink _all_ the beer before I get there. :)18:16
* ajs6f leaves
<BHSPiMonkey>Now I'm getting Child module /home/stephen/Code/fcrepo4/fcrepo-standalone of /home/stephen/Code/fcrepo4/pom.xml does not exist18:20
* barmintor joins18:28
* kaarefc leaves18:32
* JasonDGI joins18:36
<cbeer>BHSPiMonkey: i think ajs6f committed more than he meant to18:38
* eddies leaves18:39
<cbeer>BHSPiMonkey: want an easy pull request? you just need to delete this line: https://github.com/futures/fcrepo4/commit/54a087b037d010f18e06a5feee13e6895c8db58b#L5R41
<BHSPiMonkey>yeah that's what I was about to try18:40
* eddies joins
* eddies leaves
* eddies joins
<BHSPiMonkey>seems to be building18:41
oh, right. Happen to know if the codebase is openjdk/gcj-friendly or if I'll need the Oracle JDK?18:44
<cbeer>https://github.com/infinispan/infinispan-quickstart/blob/master/clustered-cache/src/main/resources/infinispan-replication.xml18:49
https://github.com/infinispan/infinispan-quickstart/blob/master/clustered-cache/src/main/resources/infinispan-distribution.xml
* ajs6f joins19:01
"BHSPiMonkey: i think ajs6f committed more than he meant to"
What did I do?
Oh, the standalone thing.
Cripes. I thought I managed to exclude that.19:02
Sorry, FFfolks.
See y'all in a bit.
* ajs6f leaves19:03
* github-ff joins19:08
[fcrepo4] eddies pushed 1 new commit to master: http://git.io/UCv7Bw
fcrepo4/master 1dd62d1 Edwin Shin: Removes reference to Maven child module that does not exist (fcrepo-standalone)
* github-ff leaves
<eddies>@BHSPiMonkey haven't tried a build against gcj, so dunno19:09
cbeer: mvn jetty:run MAVEN_OPTS="-Xmx512m -Dfcrepo.modeshape.ispn.configuration=jgroups-udp.xml -Dfcrepo.modeshape.jgroups.configuration=jgroups-udp.xml"19:15
* kaarefc joins19:25
<eddies>http://turntable.fm/511ae5e0aaa5cd50e4dfc12120:06
<kaarefc>I'm running a bit late - heading out from the hotel now. Don't eat all the pizza before I'm there :-)20:12
* kaarefc leaves20:18
* ajs6f joins
<eddies>MAVEN_OPTS="-Xmx512m -Dfcrepo.modeshape.ispn.configuration=jgroups-udp.xml -Dfcrepo.modeshape.jgroups.configuration=jgroups-udp.xml" mvn jetty:run
<cbeer>https://github.com/ModeShape/modeshape/tree/master/modeshape-jcr/src/test/resources/config20:32
https://github.com/infinispan/infinispan/tree/master/core/src/main/resources20:34
https://github.com/infinispan/infinispan/blob/master/core/src/main/resources/jgroups-udp.xml20:35
* github-ff joins20:41
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/rYL2DA
fcrepo4/master 3986f91 ajs6f: Extra clustering config for Fedora Mansion
* github-ff leaves
* eddies leaves20:49
* eddies joins20:54
* eddies leaves
* eddies joins
* eddies leaves21:04
* eddies joins21:11
* eddies leaves
* eddies joins
* kaarefc joins21:14
<ajs6f>MAVEN_OPTS="-Xmx512m -Dfcrepo.modeshape.ispn.configuration=jgroups-udp.xml -Dfcrepo.modeshape.jgroups.configuration=jgroups-udp-alt.xml" mvn jetty:run21:15
<cbeer>curl "http://localhost:8080/rest/objects/asdf" -I21:19
MAVEN_OPTS="-Djgroups.tcpping.initial_hosts=192.168.1.128[7800] -Djgroups.modeshape.tcp.address=192.168.1.128[7850]" mvn jetty:run21:22
MAVEN_OPTS="-Djgroups.tcpping.initial_hosts=192.168.1.128[7800] -Djgroups.modeshape.tcpping.initial_hosts=192.168.1.128[7850]" mvn jetty:run
MAVEN_OPTS="-Xmx512m -Djgroups.modeshape.tcp.address=0.0.0.0 -Djgroups.tcp.address=0.0.0.0 -Dfcrepo.modeshape.ispn.configuration=jgroups-udp.xml -Dfcrepo.modeshape.jgroups.configuration=jgroups-udp-alt.xml" mvn jetty:run21:25
MAVEN_OPTS="-Xmx512m -Djgroups.modeshape.tcp.address=0.0.0.0 -Djgroups.tcp.address=0.0.0.0" mvn jetty:run21:28
MAVEN_OPTS="-Xmx512m -Djgroups.modeshape.tcp.address=0.0.0.0 -Djgroups.tcp.address=0.0.0.0 -Djgroups.tcpping.initial_hosts=192.168.1.128[7800] -Djgroups.modeshape.tcpping.initial_hosts=192.168.1.128[7850]" mvn jetty:run
<ajs6f>{cheers from the stadium}21:29
You can do it!
Cluster that repo!
* wmene joins21:30
<cbeer>MAVEN_OPTS="-Xmx512m -Djgroups.modeshape.tcp.address=0.0.0.0 -Djgroups.tcp.address=0.0.0.0 -Djgroups.tcpping.initial_hosts=192.168.1.128[7800] -Djgroups.modeshape.tcpping.initial_hosts=192.168.1.128[7850]" mvn jetty:run21:32
* eddies leaves21:44
* eddies joins21:45
* eddies leaves
* eddies joins
* eddies leaves21:56
<JasonDGI>http://turntable.fm/511ae5e0aaa5cd50e4dfc12122:18
* eddies joins22:19
* eddies leaves
* eddies joins
* github-ff joins22:22
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/vDxidg
fcrepo4/master d9a331b Chris Beer: fix webapp config paths
* github-ff leaves
* eddies leaves22:39
* eddies joins22:43
* eddies leaves
* eddies joins
* eddies leaves22:53
* github-ff joins23:05
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/uR511g
fcrepo4/master c57b07a Chris Beer: clean up left-over config files
* github-ff leaves
<cbeer>MAVEN_OPTS="-Xmx512m -Djgroups.modeshape.tcp.address=0.0.0.0 -Djgroups.tcp.address=0.0.0.0 -Djgroups.tcpping.initial_hosts=192.168.1.128[7800] -Djgroups.modeshape.tcpping.initial_hosts=192.168.1.128[7850]" mvn jetty:run
* github-ff joins23:16
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/g0KDbA
fcrepo4/master 51755b0 Chris Beer: bind jgroups to 0.0.0.0
* github-ff leaves
* eddies joins23:28
* eddies leaves
* eddies joins
* ajs6f leaves23:30
* wmene leaves23:33
<cbeer>jcoyne: https://docs.jboss.org/author/display/MODE/Query+language+grammars00:14
https://docs.jboss.org/author/display/MODE/Query+and+search
* kaarefc leaves00:32
* JasonDGI leaves01:11
* eddies leaves01:23
* kaarefc joins01:45
* eddies joins01:53
* eddies leaves
* eddies joins
* eddies leaves02:02
* kaarefc leaves02:10
* barmintor leaves02:20
* barmintor joins02:27
* eddies joins02:58
* eddies leaves
* eddies joins
* eddies leaves03:06
* eddies joins04:03
* eddies leaves
* eddies joins
* eddies leaves04:08
* eddies joins05:04
* eddies leaves
* eddies joins
* eddies leaves05:08
* eddies joins06:04
* eddies leaves
* eddies joins
* eddies leaves06:09
* eddies joins07:04
* eddies leaves
* eddies joins
* eddies leaves07:09
* eddies joins08:05
* eddies leaves
* eddies joins
* eddies leaves08:10
* kaarefc joins08:18
* cbeer leaves08:41
* cbeer joins
* kaarefc leaves09:02
* eddies joins09:52
* eddies leaves
* eddies joins
* eddies leaves09:54
* barmintor leaves10:09
* bess joins10:11
* kaarefc joins10:44
* barmintor joins11:08
* ajs6f1 joins11:46
* ajs6f1 leaves11:51
<barmintor>cheer, ajs6f: fcrepo-http-commons seems very fcrepo3-ish11:52
* ajs6f joins
* kaarefc leaves
<ajs6f>"cheer, ajs6f: fcrepo-http-commons seems very fcrepo3-ish"11:53
How do you mean?
<barmintor>cheer ajs6f names and whatnot
DAMMIT11:54
* barmintor turns off spellcheck
* kaarefc joins
<ajs6f>Like "AbstractResource"?
<barmintor>sorry, I'm starting a branch for jaxb requests
<ajs6f>Cool.
I think it would be best if response and requests were symmetrical. Same JAXB classes. The FedoraNamespace resource does that now.11:55
<barmintor>we're considering the uuids as the new pid, right? no need for a namespace parm.
<ajs6f>I think a pid is a pid is a pid— we're not privileging the namespace.11:56
<barmintor>there is no namespace, right?
<ajs6f>Only as far as the users define them. We just see an opaque string.
Did I leave a scarf at Fedora House last night?11:57
<cbeer>didn't see it. didn't look either.
<ajs6f>Fair enough.
It's a long plaid knit scarf— please let me know if you see it before you move out.11:58
<barmintor>ajs6f: so it has no impact on the id, it's just an association of an idea with… a workspace?
is that valuable if there's no associated node?11:59
<ajs6f>No, it's not even that.
<barmintor>I think it might be a dead concept.
<ajs6f>The reason it exists at all...
is that people are used to using namespaces, and we wanted to let them keep doing that.
JCR privilege namespaces, so if we want to let people use them, we have to offer a resource of some kind.12:01
Or demand that they pre-configured everything, which seems like a no go.
<BHSPiMonkey>Can the (legacy) API serve up a list of all publishers (or subjects, or creators) in the repo?12:02
<barmintor>BHSPiMonkey: you mean a list of all the dc values?12:15
I don't think that exists, but it would be trivial to write one if you wanted to.12:17
<BHSPiMonkey>alright12:18
<ajs6f>Keep in mind that Fedora doesn't define semantics for that kind of descriptive metadata, and the DC datastream is _not_ a good place to put it. DC datastream was only ever meant for the simplest kind of administrative metadata.
Most people put their rich description in a separate datastream in a form of their choice (e.g. MODS, VRA Core, etc.).12:19
<BHSPiMonkey>I was just going off of some of the available query parameters in the 3.x api (/objects?subjects=foo&publisher=bar)12:20
<ajs6f>Right. That's perfectly understandable.
The use of DC has been a thorny issue for Fedora almost from the beginning.
Can you tell us something about the specifics of your case? Maybe we can help you figure out a good content design.12:21
* github-ff joins12:33
[fcrepo4] jcoyne opened pull request #12: Admin webapp (master...admin_webapp) http://git.io/R6puHA
* github-ff leaves
* jcoyne joins12:48
cbeer: deployment hasn't been tackled yet. I'm just trying to have something to show.12:49
<cbeer>yeah, makes sense.
i'm getting this error when i try to run it:12:50
NoMethodError in Admin#index
Showing /Volumes/TempStorage/Projects/fcrepo4/fcrepo-admin/src/fedora-admin/app/views/admin/index.html.erb where line #15 raised:
undefined method `model_name' for FedoraObject:Class
<jcoyne>do you happen to have a file in lib/fedora_object.rb?12:51
<cbeer>in lib? i see one in app/model12:54
<BHSPiMonkey>ajs6f: I'm just doing a dumb little novelty thing, not important enough to put that level of thought into :P12:59
<ajs6f>Okay. Just remember, if there's one thing the Fedora community is good at, it's putting insane levels of thought into content modeling.13:00
<jcoyne>cbeer: hmm, that's odd.
* jcoyne leaves13:03
* ajs6f leaves13:04
* jcoyne joins13:05
* jcoyne leaves13:13
* jcoyne joins13:16
* bess leaves13:26
* jcoyne leaves13:30
<barmintor>yaaaar uuid13:32
thpppppppt
<BHSPiMonkey>https://dl.dropbox.com/u/1077900/DropShot/2013-02-13--12-31-45.png13:33
It's coming together :P
<barmintor>is that a python fcrepo4 client?
<BHSPiMonkey>barmintor: it's a script that mounts a (external, via the REST API) fedora repo as a FUSE filesystem13:43
(written in python-fuse)
<barmintor>Oh. Linus Torvalds hates you, but I think it's pretty cool.
<BHSPiMonkey>so, running "ls" on $mount_point/objects/all/ is equivalent to calling "/objects" on the REST API13:44
none of this is a good idea, of course
but it seemed fun :P
<barmintor>are you submitting for the dev challenge?
<BHSPiMonkey>I guess so; That's what prompted me, at least
Even though it's kind of a silly submission13:45
<barmintor>It's less silly if you, say, want to build a live directory for ingest
<BHSPiMonkey>(Maybe non-API-savvy people would find this helpful for exploring/querying their fedora server? idk)
barmintor: currently it's read-only, though it wouldn't be that hard to implement ingest/modification support13:46
<barmintor>also that! But the contest is to prompt engagement, anyway.
<BHSPiMonkey>yeah
<barmintor>SUBMIT
* jcoyne joins
<BHSPiMonkey>I just need to warn people not to try and use something like this as part of a real workflow ;P
barmintor: what is the official mode of submission, besides talking in here?13:47
<barmintor>put it up on github, tweet it at us with #fedora4lib, or email ff-tech@googlegroups.com
* jcoyne leaves
<BHSPiMonkey>ah, well I'm not finished hacking on it (also the code quality is awful)13:48
<barmintor>well, you've got some time left ;)13:49
<BHSPiMonkey>when's the cutoff
<barmintor>Tomorrow morning
* jcoyne joins14:06
* bess joins
<cbeer>barmintor: seen ajs6f?14:17
<barmintor>thought he was with you
<cbeer>barmintor: oh, i see him. back where we were before14:19
but not on irc.
* ajs6f joins14:20
* github-ff joins14:21
[fcrepo4] ajs6f created RSSFeed (+1 new commit): http://git.io/3wjkLA
fcrepo4/RSSFeed ab5f2bd ajs6f: RSS feed is available as a JAX-RS resource
* github-ff leaves
<cbeer>ajs6f: there he is.14:22
<ajs6f>who?
<cbeer>s/he is/you are/
https://www.pivotaltracker.com/story/show/44405883
is JNDI the right way to do that?
<ajs6f>It's a perfectly good way.
there are three other options that occur to me:
Java's ServiceLocator. I assume that JRuby has some way to take advantage of that.14:23
OSGi's service registry. But that would imply our use of OSGi, which isn't real right now.
* jcoyne1 joins
<BHSPiMonkey>When issuing a PUT to /objects/{pid}, what is the payload supposed to be exactly? Object profile XML?
* jcoyne leaves
<BHSPiMonkey>(In other words, the same format as the GET response for the same url?)14:24
<ajs6f>And if we're in the same container and in the same classpath, a simple singleton might be enough.
<cbeer>BHSPiMonkey: what's PUT?
<ajs6f>But JNDI should be fine.
<BHSPiMonkey>cbeer: I'm referring to the legacy API, sorry
<cbeer>BHSPiMonkey: ok, i don't think we've implemented a PUT /objects/{pid}14:25
<ajs6f>I don't think we have a PUT-to-/objects/{pid}
What cbeer said.
<BHSPiMonkey>oh, okay
<ajs6f>Would you like one?
<cbeer>BHSPiMonkey: in fcrepo 3, it's just an update-object-properties method
and we don't have any of those yet, really.
<ajs6f>I think we could very easily do a PUT object proile to that endpoint.
We have a JAXB-annotated class that could be used.
Want to file a ticket?14:26
<BHSPiMonkey>ajs6f: if it's that easy, that would be cool; otherwise, no worries
<ajs6f>Just file a ticket and watch the magic happen!
<cbeer>"magic"++
<BHSPiMonkey>I feel guilty asking for legacy API features, for this little toy program that isn't important to myself or anybody
<ajs6f>It's cool. It's a good idea, period.
It's our job to prioritize, but it's your job to give us stuff to prioritize. :)14:27
* github-ff joins14:28
[fcrepo4] ajs6f opened pull request #13: RSS feed is available as a JAX-RS resource (master...RSSFeed) http://git.io/y36wlQ
* github-ff leaves
<cbeer>ajs6f++ # well put.14:29
<BHSPiMonkey>submitted14:30
<cbeer>ajs6f: i'm afraid of the singleton-model, but any of the others are about the same to me. want to pick one?
* github-ff joins
[fcrepo4] cbeer pushed 1 new commit to master: http://git.io/D83xHA
fcrepo4/master 5f4ab72 Chris Beer: Merge pull request #13 from futures/RSSFeed...
* github-ff leaves
* bess leaves14:33
<BHSPiMonkey>Are object "Label"s unique?
(Or is it valid for >1 objects to have the same label)
<cbeer>BHSPiMonkey: in fcrepo 3, they are using14:35
in fcrepo 4, i'm not sure we've created a label field yet
(see https://github.com/futures/fcrepo4/blob/master/fcrepo-webapp/src/main/resources/config/fedora-node-types.cnd)
<BHSPiMonkey>using==unique?14:36
<cbeer>yes, sorry.
BHSPiMonkey: if you think labels are useful and want them in fcrepo 4, file a bug with a use case.
<BHSPiMonkey>I don't have a use case, I just wanted to make sure I was modelling fedora's model astutely14:37
<ajs6f>cbeer: well, I don't want to make jcoyne wait on OSGi.14:39
<cbeer>ajs6f: true. so. JNDI? something else?14:40
<ajs6f>Let me look at ServiceLocator real quick and see if makes more sense than JNDI.14:41
Sorry, meant "http://docs.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html".
<BHSPiMonkey>Another github issue flung your way14:47
* bess joins
<BHSPiMonkey>My condolences14:48
<ajs6f>cbeer/jcoyne: Can JRuby use DI the same way our Java code does? Could jcoyne just do the Ruby equiv of @Inject or @Resource?14:58
That would obviously be simplest of all (no new code).14:59
<jcoyne1>ajs6f: I don't know.
<ajs6f>Okay, I'll check into it.
<jcoyne1>   java_annotation 'org.jbehave.core.annotations.Given("a date of $date")'15:00
seems like you can annotate methods.
<ajs6f>That's a good start.15:01
Do we have a canonical list of usable annotations, or is it a general facility (any annotation you want)/
<jcoyne1>Looks like any class or method annotation.15:02
<ajs6f>Awesome.
We can do this easily.
So you ned access to the JCR repo, right?
So we start here:15:03
http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/dynamic-language.html#dynamic-language-beans-jruby
You can write a bean in Ruby to wrap your access to the repo.
We put that bean in Spring config.15:04
Then you annotate that bean with an @Inject or @Resource on a setter method or directly on a field or constructor.
And Spring takes care of plugging the repo into your code at runtime.
Actually, it could be any DI framework, but we're using Spring for now.15:05
Does make sense to you as a design?
<jcoyne1>I'm not entirely clear how that would work.
<ajs6f>Which part is opaque?
<jcoyne1>What's wrong with the current approach?15:06
<ajs6f>I didn't know we had a current approach.
I thought you were blocked trying to get access to the repo.
<jcoyne1>No, we are just using Spring in the "classic" way
<ajs6f>"Classic" way?
You mean setter injection?15:07
Or constructor injection?
Or something else?
<jcoyne1>https://github.com/jcoyne/fcrepo4/blob/admin_webapp/fcrepo-admin/src/fedora-admin/lib/spring.rb
context.getBean("modeshapeRepofactory")15:08
<ajs6f>Okay, now I see. Using an annotation would be better, because it would keep the code independent of the framework. I wouldn't worry too much about it. IMNSHO it's not good practice to programmatically manipulate DI contexts from within code that executes in those contexts (except for test scenarios), but it's not going to kill us and if you're making new functionality, that's more important for the mo than architectural considerati15:12
<jcoyne1>ajs6f: Tom Enebo says there's no current way of annotating instance methods.
<ajs6f>We want to annotate a class method.
Or a field.
Or a constructor.
<jcoyne1>er, sorry, I meant fields.
<ajs6f>Oh, really. That's too bad.
<jcoyne1>Well, he said we could write a preprocessor, but that seems worse than the current approach.15:13
<ajs6f>Yes, defintely.
Like I said, the whole idea is to stay independent of the framework, but let's not set our hair on fire about it.
<cbeer>so, i've got clustering going on the oxford vms15:30
<ajs6f>cbeer++!
<cbeer>or, they were all connected in the right ways
i didn't try to push content through it
<ajs6f>I think we were making a really hard test for ourselves last night.15:31
Random routers, people's laptops...
It was like an episode of the A-Team, and we were trying to build a tank out of an ice cream truck and the contents of a costume supply store.15:32
<cbeer>yeah, but it would have been col.
cool.
<ajs6f>I vote Ben for Mr. T.
<cbeer>hm. clustering isn't sharing state like it used to.15:41
oh well
tomorrow's chore, i guess
<ajs6f>MODE state?
<cbeer>yes. like i should be able to go to any node and retrieve an object i put in anywhere else.
i'm sure it's just a config issue15:42
<ajs6f>Isn't that ISPN state?
<cbeer>because it did work before.
oh, maybe?
<ajs6f>I think so.
MODE state would be session content.
I _think_
I'm in the back of the room, and we're supposed to try to meet some MErritt cats back here.
So come on back.15:43
<cbeer>k
* bess leaves15:45
* kaarefc leaves15:48
* jcoyne1 leaves16:20
* jcoyne joins16:22
* jcoyne leaves16:33
* barmintor leaves17:01
* barmintor joins
<ajs6f>We want to fork jcoyne's admin app, but he wrote it as a fork of fcrepo4. Github won't let me fork a fork. Anyone involved with this project has better git-fu than do I: what should I do with this?17:06
* kaarefc joins17:09
* kaarefc leaves17:17
* kaarefc_ joins
* jcoyne joins17:23
* bess joins17:35
* eddies joins17:38
* eddies leaves
* eddies joins
* eddies leaves
* eddies joins
fyi: https://bitbucket.org/merritt
(brew install mercurial && hg clone https://bitbucket.org/merritt/mrt-core)
<jcoyne>Apparently Jython is still active. They had a release this week.17:50
* bess leaves17:51
* bess joins
* barmintor_ joins17:52
* jcoyne1 joins
* barmintor leaves
* jcoyne leaves17:54
* github-ff joins17:59
[fcrepo4] ajs6f pushed 1 new commit to master: http://git.io/ChJOaQ
fcrepo4/master 0c48e63 ajs6f: Added PUT method to /rest/objects/{pid} endpoint for https://github.com/futures/fcrepo4/issues/14
* github-ff leaves
<ajs6f>BHSPiMonkey: You got your PUT method… enjoy, and do something cool with it! :)18:02
* jcoyne1 leaves18:05
* jcoyne joins18:06
* eddies leaves18:14
<BHSPiMonkey>ajs6f: I'm trying, I'm trying!18:16
<ajs6f>:)
<BHSPiMonkey>my little toy is pretty functional now (well, all things considered)
<ajs6f>Fantastic! When can we see?
<BHSPiMonkey>you can browse the repo's objects with cd/ls, create objects or datastreams with mkdir...
ajs6f: are we showing these things off at some point, or just posting code?18:17
<ajs6f>GOod question.
It would be nice to have a moment together.
I'm not sure how we go about that with the limited time we have left in the gig.
<cbeer>i'd do a screencast, maybe.18:18
<ajs6f>The challenge officially ends tomorrow morning, I believe.
+1 to screencasts. Be famous on the Web!
<BHSPiMonkey>I might do a little document instead
<ajs6f>Okay. And be sure to put your code in a public place (e.g. Github).
<BHSPiMonkey>it's already on a gist, but I need to update it18:19
<ajs6f>Okay.
* JasonDGI joins18:25
eddies barmintor have you seen http://sw.deri.org/2004/06/yars/?
ajs6f have you checked out that link?18:26
<ajs6f>Aye. It looks intriguing, but
Release beta3 (2006-06-28):
I'm not sure how live it is.18:27
<cbeer>sounds like a great masters/phd project.
<ajs6f>Jason, time to go back to school. :)
Build us a phenomenal triple store.
{j/k}
<JasonDGI>2006, eh? im gonna graduate in a year
<ajs6f>Fedora U.18:28
<JasonDGI>Fedo Radmin Institute of Technology
* jcoyne leaves18:29
* bess leaves18:30
* barmintor leaves18:32
* kaarefc leaves
* ajs6f leaves18:34
* JasonDGI leaves18:42
* kaarefc_ joins18:52
* kaarefc_ leaves
* eddies joins19:26
* eddies leaves
* eddies joins

Generated by Sualtam