package com.vci.server; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.vci.server.mw.ServerContextInterceptor; import com.vci.server.volume.VolumeServiceImpl; import com.zeroc.Ice.Communicator; import com.zeroc.Ice.Identity; import com.zeroc.Ice.ObjectAdapter; import com.zeroc.Ice.Util; import com.zeroc.IceBox.Service; public class VolumeBoxService implements Service { private static final Logger LOGGER = LoggerFactory.getLogger(VolumeBoxService.class); protected ObjectAdapter _adapter; protected Identity id; @Override public void start(String name, Communicator communicator, String[] args) { LOGGER.info("start servant: " + name); // IceBox // 创建objectAdapter,这里和service同名 _adapter = communicator.createObjectAdapter(name); // 创建servant com.zeroc.Ice.Object object = new VolumeServiceImpl(); _adapter.add(object, Util.stringToIdentity(name)); // 激活 _adapter.activate(); LOGGER.info("start servant success: " + name); } @Override public void stop() { LOGGER.info("VolumeService stoped, args"); _adapter.destroy(); } }