trellis-ldp / trellis

Trellis is a platform for building scalable Linked Data applications
https://www.trellisldp.org
Apache License 2.0
105 stars 21 forks source link

Add an abstraction that collects Trellis services #168

Closed acoburn closed 6 years ago

acoburn commented 6 years ago

As suggested in https://github.com/trellis-ldp/trellis/pull/164#pullrequestreview-137204194, it would simplify a lot of method signatures to have a “bundle” sort of object, containing the required services for a trellis application. This is most clearly seen in the HTTP layer, so that may be the best place for this abstraction to reside.

acoburn commented 6 years ago

What if we call this interface, simply: org.trellisldp.api.TrellisServices? Instances would be immutable and have ::get*Service methods, some of which could return Optionals. That would be the primary object that is accessed in the HTTP layer, which would cut down considerably on the number of arguments in the various method signatures.