/** * Get a required service of a given name. * @param name The service name. * @return The service. */ public <T> IFuture<T> getRequiredService(String name) { return getServiceContainer().getRequiredService(name); }
/** * Get a required services of a given name. * @param name The services name. * @return The service. */ public <T> ITerminableIntermediateFuture<T> getRequiredServices(String name) { return getServiceContainer().getRequiredServices(name); }
/** * Send a message. * @param me The message content (name value pairs). * @param mt The message type describing the content. */ public IFuture<Void> sendMessage(final Map<String, Object> me, final MessageType mt, final byte[] codecids) { final Future<Void> ret = new Future<Void>(); getServiceContainer().searchService(IMessageService.class, RequiredServiceInfo.SCOPE_PLATFORM) .addResultListener(new ExceptionDelegationResultListener<IMessageService, Void>(ret) { public void customResultAvailable(IMessageService ms) { // System.err.println("send msg1: "+getComponentIdentifier()+" "+me.get(SFipa.CONTENT)); ms.sendMessage(me, mt, interpreter.getAgentAdapter().getComponentIdentifier(), interpreter.getModel().getResourceIdentifier(), null, codecids) .addResultListener(createResultListener(new DelegationResultListener<Void>(ret))); } }); return ret; }
/** * Get the current time. * @return The current time. */ public IFuture<Long> getTime() { final Future<Long> ret = new Future<Long>(); getServiceContainer().searchService(IClockService.class, RequiredServiceInfo.SCOPE_PLATFORM) .addResultListener(new ExceptionDelegationResultListener<IClockService, Long>(ret) { public void customResultAvailable(IClockService cs) { ret.setResult(Long.valueOf(cs.getTime())); } }); return ret; }
/** * Kill the agent. */ public IFuture<Map<String, Object>> killAgent() { final Future<Map<String, Object>> ret = new Future<Map<String, Object>>(); getServiceContainer().searchService(IComponentManagementService.class, RequiredServiceInfo.SCOPE_PLATFORM) .addResultListener(new ExceptionDelegationResultListener<IComponentManagementService, Map<String, Object>>(ret) { public void customResultAvailable(IComponentManagementService cms) { cms.destroyComponent(getComponentIdentifier()) .addResultListener(new DelegationResultListener<Map<String, Object>>(ret)); } }); return ret; }
/** * Get the version for a resource. */ protected IFuture<IResourceIdentifier> getVersion(final IResourceIdentifier rid) { final Future<IResourceIdentifier> ret = new Future<IResourceIdentifier>(); IFuture<IDependencyService> fut = agent.getServiceContainer().getRequiredService("depser"); fut.addResultListener(new ExceptionDelegationResultListener<IDependencyService, IResourceIdentifier>(ret) { public void customResultAvailable(IDependencyService depser) { depser.loadDependencies(rid, false).addResultListener(new ExceptionDelegationResultListener<Tuple2<IResourceIdentifier, Map<IResourceIdentifier, List<IResourceIdentifier>>>, IResourceIdentifier>(ret) { public void customResultAvailable(Tuple2<IResourceIdentifier, Map<IResourceIdentifier, List<IResourceIdentifier>>> result) { IResourceIdentifier newrid = result.getFirstEntity(); // System.out.println("versions: "+rid.getGlobalIdentifier().getVersionInfo()+" "+newrid.getGlobalIdentifier().getVersionInfo()); ret.setResult(newrid); } }); } }); return ret; }
getServiceContainer().searchService(IClockService.class, RequiredServiceInfo.SCOPE_PLATFORM) .addResultListener(new ExceptionDelegationResultListener<IClockService, TimerWrapper>(ret)
/** * Create awareness info of myself. */ public IFuture<AwarenessInfo> createAwarenessInfo() { final Future<AwarenessInfo> ret = new Future<AwarenessInfo>(); final String awa = SReflect.getInnerClassName(this.getClass()); // System.out.println("awa: "+awa); IFuture<IMessageService> fut = agent.getServiceContainer().getRequiredService("ms"); fut.addResultListener(agent.createResultListener(new ExceptionDelegationResultListener<IMessageService, AwarenessInfo>(ret) { public void customResultAvailable(IMessageService cms) { cms.updateComponentIdentifier(getRoot()).addResultListener(agent.createResultListener( new ExceptionDelegationResultListener<IComponentIdentifier, AwarenessInfo>(ret) { public void customResultAvailable(IComponentIdentifier root) { AwarenessInfo info = new AwarenessInfo(root, AwarenessInfo.STATE_ONLINE, getDelay(), getIncludes(), getExcludes(), null, awa); ret.setResult(info); } })); } })); return ret; }
/** * Create awareness info of myself. */ public IFuture<AwarenessInfo> createAwarenessInfo(final String state, final String masterid) { final Future<AwarenessInfo> ret = new Future<AwarenessInfo>(); IFuture<IMessageService> fut = agent.getServiceContainer().getRequiredService("ms"); fut.addResultListener(agent.createResultListener(new ExceptionDelegationResultListener<IMessageService, AwarenessInfo>(ret) { public void customResultAvailable(IMessageService cms) { cms.updateComponentIdentifier(getRoot()).addResultListener(agent.createResultListener( new ExceptionDelegationResultListener<IComponentIdentifier, AwarenessInfo>(ret) { public void customResultAvailable(IComponentIdentifier root) { AwarenessInfo info = new AwarenessInfo(root, state, getDelay(), getIncludes(), getExcludes(), masterid); ret.setResult(info); } })); } })); return ret; }
/** * Create awareness info of myself. */ public IFuture<AwarenessInfo> createAwarenessInfo(final String state, final String masterid) { final Future<AwarenessInfo> ret = new Future<AwarenessInfo>(); final String awa = SReflect.getInnerClassName(this.getClass()); IFuture<IMessageService> fut = agent.getServiceContainer().getRequiredService("ms"); fut.addResultListener(agent.createResultListener(new ExceptionDelegationResultListener<IMessageService, AwarenessInfo>(ret) { public void customResultAvailable(IMessageService cms) { cms.updateComponentIdentifier(getRoot()).addResultListener(agent.createResultListener( new ExceptionDelegationResultListener<IComponentIdentifier, AwarenessInfo>(ret) { public void customResultAvailable(IComponentIdentifier root) { AwarenessInfo info = new AwarenessInfo(root, state, getDelay(), getIncludes(), getExcludes(), masterid, awa); ret.setResult(info); } })); } })); return ret; }
/** * Create awareness info of myself. */ public IFuture<AwarenessInfo> createAwarenessInfo() { final Future<AwarenessInfo> ret = new Future<AwarenessInfo>(); IFuture<IMessageService> fut = agent.getServiceContainer().getRequiredService("ms"); fut.addResultListener(agent.createResultListener(new ExceptionDelegationResultListener<IMessageService, AwarenessInfo>(ret) { public void customResultAvailable(IMessageService cms) { cms.updateComponentIdentifier(getRoot()).addResultListener(agent.createResultListener( new ExceptionDelegationResultListener<IComponentIdentifier, AwarenessInfo>(ret) { public void customResultAvailable(IComponentIdentifier root) { AwarenessInfo info = new AwarenessInfo(root, AwarenessInfo.STATE_ONLINE, getDelay(), getIncludes(), getExcludes(), null); ret.setResult(info); } })); } })); return ret; }
getServiceContainer().searchService(IClockService.class, RequiredServiceInfo.SCOPE_PLATFORM) .addResultListener(new ExceptionDelegationResultListener<IClockService, ITimer>(ret)
IFuture<IAwarenessManagementService> awa = agent.getServiceContainer().getRequiredService("awa"); awa.addResultListener(new ExceptionDelegationResultListener<IAwarenessManagementService, Void>(ret)
IFuture<IDaemonThreadPoolService> tpfut = agent.getMicroAgent().getServiceContainer().getRequiredService("threadpool"); tpfut.addResultListener(new IResultListener<IDaemonThreadPoolService>()
IFuture<IDaemonThreadPoolService> tpfut = agent.getMicroAgent().getServiceContainer().getRequiredService("threadpool"); tpfut.addResultListener(new IResultListener<IDaemonThreadPoolService>()
IFuture<IMessageService> msfut = agent.getServiceContainer().getRequiredService("ms"); msfut.addResultListener(new ExceptionDelegationResultListener<IMessageService, Void>(fut)
IFuture<IMessageService> msfut = agent.getServiceContainer().getRequiredService("ms"); msfut.addResultListener(new ExceptionDelegationResultListener<IMessageService, Void>(fut)