You can add it to a List of project locations inside your Module 'configure':
public void configure(Binder binder) { binder.bindList(Constants.SERVER_PROJECT_LOCATIONS_LIST).add("cayenne-xyz.xml"); } Or explicitly pass it to ServerRuntime, when you are creating it. Though the first approach provides better encapsulation of your framework. Andrus > On Aug 27, 2015, at 6:45 PM, Hugi Thordarson <h...@karlmenn.is> wrote: > > That’s pretty awesome. One question though, how do I tell the Module about > the location of it's Cayenne Model? (like I do with the configurationLocation > parameter in ServerRuntime) > > Thanks! > - hugi > > > >> On 27. ágú. 2015, at 10:44, Andrus Adamchik <and...@objectstyle.org> wrote: >> >> Hi Hugi, >> >> Are you using DI by any chance in your app? Cause if you do, it becomes as >> simple as making ServerRuntime one of the "services" and injecting it into >> your framework. >> >> Or maybe you can invert that? Instead of telling the framework about >> ServerRuntime, you tell ServerRuntime about your framework (essentially >> relying on Cayenne to be your DI provider). To do that you expose your >> framework as a DI Module. That's our preferred way of loading Cayenne >> extensions. Maybe you can use the same approach with your own code: >> >> // this comes from your framework. The module can define a class that decla >> public class MyModule implements Module { >> public void configure(Binder binder) { >> >> // MyFrameworkImpl may inject ObjectContextFactory to obtain contexts >> binder.bind(MyFramework.class).to(MyFrameworkImpl.class); >> } >> } >> >> // this is how you bootstrap both Cayenne and your framework in your app >> MyModule m = new MyModule(); >> ServerRuntime runtime = new ServerRuntime("myproject.xml", m); >> >> MyFramework f = runtime.getInjector().getInstance(MyFramework.class); >> // now you can call methods on f. >> >> >> Andrus >> >> >>> On Aug 27, 2015, at 11:54 AM, Hugi Thordarson <h...@karlmenn.is> wrote: >>> >>>> On 27/08/2015 6:37pm, Hugi Thordarson wrote: >>>>> I’m writing a Cayenne-based CRUD framework of sorts, in the form of a jar >>>>> that plugs into Cayenne applications. >>>> >>>> Is there overlap with this: http://nhl.github.io/link-rest/ which was >>>> already built over the top of Cayenne? >>> >>> Not really, what we're doing works at a little lower level and serves more >>> specific requirements. Framework looks nice though—and it’s fun to see >>> Cayenne in the wild. >>> >>> - hugi >> >