Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
titleGetting OSID Providers
org.osid.repository.RepositoryManager repositoryManager = (org.osid.repository.RepositoryManager) getManager(org.osid.REPOSITORY,
                                           														             "net.tom.impl.FunRepositoryManager",
                                           											                         net.okapia.osid.kilimanjaro.Versions.LATEST.getVersion());
 
org.osid.tracking.TrackingProxyManager trackingManager = (org.osid.tacking.TrackingProxyManager) getManager(org.osid.TRACKING,
                                           														            "net.tom.impl.TrackingProxyManager",
                                           														            net.okapia.osid.kilimanjaro.Versions.LATEST.getVersion());

However, the puppet strings between the OSID Consumer and OSID Provider increase as more OSID Providers are named and requested through the OSID Runtime. The Orchestration OSID is a useful tool to minimize this touch point in OSID Consumers.

Code Block
titleGetting Orchestrated OSID Providers via Orchestration
org.osid.orchestration.OrchestrationManager orchestration = (org.osid.orchestration.OrchestrationManager) getManager(org.osid.Orchestration,
                                           														                     "net.tom.impl.MyOrchestrationManager",
                                           											                                 net.okapia.osid.kilimanjaro.Versions.LATEST.getVersion());
 
org.osid.repository.RepositoryManager repositoryManager = orchestration.getRepositoryManager();
org.osid.tracking.TrackingProxyManager trackingManager  = orchestration.getTrackingProxyManager();

The Orchestration OSID provides a single touchpoint to access OSID Providers encapsulating a number of issues such as identity of the other OSID Providers and the reusability of an OSID Provider instance. Even if every application had it's own customized Orchestration OSID Provider, this extra insulation is worth it whenever there is more than one OSID in play. OSIDs should have only permitted Orchestration OSID Providers to be instantiated through its runtime. This is the useful consumer-facing service bus and moves the configuration of other OSID Providers out of the OSID Consumers.

The Configuration Two-Step