Сложно объяснить, я полагаю, что лучше всего проверить inMemoryServer из SVN. Ссылка на документацию является примером клиентского API, где интерфейс сеанса содержит наиболее важные операции CMIS.
SessionFactory factory = SessionFactoryImpl.newInstance();
Map<String, String> parameter = new HashMap<String, String>();
..........
parameter.put(SessionParameter.LOCAL_FACTORY, "my.local.factory");
..........
Session session = factory.createSession(parameter);
После того, как у вас есть источник, взгляните на «InMemoryServiceFactoryImpl», который является значением параметра LOCAL_FACTORY
. У этой фабрики есть метод service()
, который возвращает InMemoryService
, который содержит ссылки на все типы служб CMIS и серверы в качестве своего рода фасада для упрощенного использования через клиентский API (Session way).
Другим способом является использование Client Binding API, где вы получаете прямой доступ к конкретным службам CMIS.
CmisBindingFactory factory = CmisBindingFactory.newInstance();
CmisBinding binding = factory.createCmisLocalBinding(parameters); // LocalBinding !!
fFactory = binding.getObjectFactory();
fRepSvc = binding.getRepositoryService();
fObjSvc = binding.getObjectService();
fNavSvc = binding.getNavigationService();
fVerSvc = binding.getVersioningService();
fMultiSvc = binding.getMultiFilingService();
fDiscSvc = binding.getDiscoveryService();
и т. Д., И т. Д., Посмотрите на тесты, которые практически охватывают большинство случаев использования.