/* * Copyright 2009 Glencoe Software, Inc. All rights reserved. * Use is subject to license terms supplied in LICENSE.txt */ package ome.services.blitz.repo; import ome.services.blitz.fire.Registry; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import Ice.ObjectAdapter; /** * Simple configuration class which is created via repository.xml Spring * configuration file after the OMERO.repository context is loaded. Used as a * factory for creating the InternalRepository, similar to BlitzConfiguration. * * @since Beta4.2 */ public class InternalRepositoryConfig { private final static Logger log = LoggerFactory .getLogger(InternalRepositoryConfig.class); private final Ice.InitializationData id; private final Ice.Communicator ic; private final Ice.ObjectAdapter oa; private final Registry reg; public InternalRepositoryConfig(String repoDir) throws Exception { // // Ice Initialization // id = new Ice.InitializationData(); id.properties = Ice.Util.createProperties(); String ICE_CONFIG = System.getProperty("ICE_CONFIG"); if (ICE_CONFIG != null) { id.properties.load(ICE_CONFIG); } ic = Ice.Util.initialize(id); reg = new Registry.Impl(ic); oa = ic.createObjectAdapter("RepositoryAdapter"); oa.activate(); /* * String serverId = * ic.getProperties().getProperty("Ice.Admin.ServerId"); Ice.Identity id * = Ice.Util.stringToIdentity(serverId); */ } public Ice.Communicator getCommunicator() { return ic; } public ObjectAdapter getObjectAdapter() { return oa; } public Registry getRegistry() { return reg; } }