If your implementation is available in the classpath of a running repository webapp (for example, by putting a jar file containing it into the WEB-INF/lib directory) you should be able to engage your FedoraStorageHintsProvider via Spring configuration without touching any of the fcrepo code. It doesn't matter whether you add it by itself or with an Akubra plugin or with some other package of code. It does not need to be an alteration in fcrepo.
--- A. Soroka The University of Virginia Library On Mar 6, 2013, at 9:44 AM, Tayal, Nikhil wrote: > Thank you for your reply Benjamin. > > It seems you did do something similar to what we need to do as well (placing > some metadata content from the FCRepo to a low level storage). > As I mentioned earlier, our implementation of the akubra plugin automatically > processes the hints it gets with the object. Moreover, in > DefaultDomManager(https://github.com/fcrepo/fcrepo/blob/master/fcrepo-server/src/main/java/org/fcrepo/server/storage/DefaultDOManager.java), > the following line takes care of populating and sending the hints to the low > level store. > > m_permanentStore.addObject(obj.getPid(), > new ByteArrayInputStream(out.toByteArray()), > objectHints); > > > Hence I will need to just implement the interface > FedoraStorageHintsProvider(https://github.com/fcrepo/fcrepo/blob/master/fcrepo-server/src/main/java/org/fcrepo/server/storage/FedoraStorageHintProvider.java) > such that the overriding methods return the required metadata. > I wanted to know if I will need to sumbit my code(the class that will > implement the above interface) as a part of FCRepo only?(That’s the only way > I see it as of now) > > Or precisely, does this mean that my implementation would/should be a part of > the FCRepo rather than being a part of my akubra plugin? > > Thanks, > Nikhil > > From: Benjamin Armintor [mailto:armin...@gmail.com] > Sent: Tuesday, March 05, 2013 9:42 AM > To: fedora-commons-developers@lists.sourceforge.net > Subject: Re: [fcrepo-dev] Fedora Commons Release 3.6: Suggestion regarding > Fedora Hints Provider API > > Nikhil- > Not only is that appropriate, but it's something the FedoraFutures tech > team worked on earlier this year, too (I was trying to get FCRepo to place > some content into AWS-Glacier). I think you may find, depending on how your > Akubra plugin works, that the lack of a hints provider on retrieval is an > obstacle, too. There's also some uncomfortable division of labor between the > actual client of the hints provider (the DOManager, if I remember right) and > the consumer of the hints (the LLStore). > > - Ben > > > On Tue, Mar 5, 2013 at 8:41 AM, Tayal, Nikhil <ntay...@illinois.edu> wrote: > Hi, > > I am currently working on adding some features to a Plugin built by our > Library Software development group at UIUC Library. The plugin enables > support for Dell DX6000 devices with Fedora Commons. > (https://github.com/medusa-project/akubra-dell-dx) > > One of the requirements we have is to be able to get the metadata like > ‘Content/MIME-type’ from fedora before persisting the fedora object to device. > > I read about the new features in the 3.6 release of Fedora and I wanted to > leverage the FedoraHintsProvider interface which enables us to send metadata > in the hints argument while persisting the object to akubra. > (We already have the capability in our plugin to capture the information sent > in the hints argument and use it further, hence all I need to do is to > implement the above interface to send those hints). > > The obvious way to do that is to add a class which has the implementation of > the methods of the FedoraHintsProvider interface in the Fedora Commons > repository. These methods will fetch the required metadata information. Then > we can inject that implementation as a dependency using the spring > configuration file. > > However, this will require me to change the codebase of fedora repository and > add my implementation there. Ideally, I want the implementation to be a part > of our plugin(the akurba-dell-dx implementation that interfaces with Dell > storage devices). > > Can you please let me know if what I am considering to do is even > possible(and an appropriate approach)? > > Thanks and Regards, > Nikhil Tayal > Graduate Student(Masters in Computer Science) and Programmer(Digital Library > Research Lab) > University of Illinois at Urbana Champaign > > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_d2d_feb > _______________________________________________ > Fedora-commons-developers mailing list > Fedora-commons-developers@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/fedora-commons-developers > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev_______________________________________________ > Fedora-commons-developers mailing list > Fedora-commons-developers@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/fedora-commons-developers ------------------------------------------------------------------------------ Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the endpoint security space. For insight on selecting the right partner to tackle endpoint security challenges, access the full report. http://p.sf.net/sfu/symantec-dev2dev _______________________________________________ Fedora-commons-developers mailing list Fedora-commons-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/fedora-commons-developers