/** * A minimal micro agent. */ @Agent public class MinimalAgent { }
/** * Just a simple agent that holds remote platform proxies. */ @Agent public class RemotePlatformAgent { }
/** * The invocation agent is used to execute the * synchronous web service call. The agent is * blocked during the call is running. For each * call a new invocation agent is used. */ @Agent public class WebServiceInvocationAgent { }
/** * Chat micro agent. */ @Description("This agent offers a chat service.") @Agent public class ChatB2Agent { }
@Agent @GuiClass(GuiPanel.class) public class GuiBDI { }
/** * The translation agent A1. * * Empty agent that can be loaded and started. */ @Agent @Description("The translation agent A1. <br> Empty agent that can be loaded and started.") public class TranslationBDI { }
@Agent @Goals(@Goal(clazz=StampGoal.class, publish=@Publish(type=IStampService.class))) public class StampBDI { @Plan(trigger=@Trigger(goals=StampGoal.class)) public void stamp(IComponentIdentifier wp, String text) { // transport work piece to stamp and stamp with text System.out.println("Stamped workpiece: "+wp+" with text: "+text); } }
/** * Agent that provides the file transfer service. */ @Agent @ProvidedServices(@ProvidedService(type=IFileTransferService.class, implementation=@Implementation(FileTransferService.class))) @Properties(value=@NameValue(name="system", value="true")) public class FileTransferAgent { }
/** * */ @Agent @ProvidedServices(@ProvidedService(type=ITransportAddressService.class, implementation=@Implementation(TransportAddressService.class))) @Properties(value=@NameValue(name="system", value="true")) public class TransportAddressAgent { }
/** * Agent that provides the simulation service. */ @Agent @ProvidedServices(@ProvidedService(type=ISimulationService.class, implementation=@Implementation(SimulationService.class))) @Properties(value=@NameValue(name="system", value="true")) public class SimulationAgent { }
/** * Default monitoring agent. */ @Agent @ProvidedServices(@ProvidedService(type=IMonitoringService.class, implementation=@Implementation(MonitoringService.class))) @Properties(value=@NameValue(name="system", value="true")) public class MonitoringAgent { }
/** * Default registry synchronization agent. */ @Agent @ProvidedServices(@ProvidedService(type=IRegistrySynchronizationService.class, implementation=@Implementation(RegistrySynchronizationService.class))) @Properties(value=@NameValue(name="system", value="true")) public class RegistrySynchronizationAgent { }
/** * Agent that provides the DF service. */ @Agent @ProvidedServices(@ProvidedService(type=IDF.class, implementation=@Implementation(DirectoryFacilitatorService.class))) @Properties(value=@NameValue(name="system", value="true")) public class DirectoryFacilitatorAgent { }
/** * Agent providing a direct service. */ @Arguments(@Argument(name=TagProperty.NAME, clazz=String.class, defaultvalue="\"direct\"")) @ProvidedServices(@ProvidedService(type=IServiceCallService.class, implementation=@Implementation(value=ServiceCallService.class, proxytype=Implementation.PROXYTYPE_DIRECT))) @Agent public class DirectServiceAgent { }
/** * Agent that provides the clock service. */ @Agent @Arguments(@Argument(name="simulation", clazz=boolean.class, defaultvalue="false")) @ProvidedServices(@ProvidedService(type=IClockService.class, implementation=@Implementation( expression="$args.simulation==null || !$args.simulation.booleanValue()? new jadex.platform.service.clock.ClockService(new jadex.platform.service.clock.ClockCreationInfo(jadex.bridge.service.types.clock.IClock.TYPE_SYSTEM, \"system_clock\", System.currentTimeMillis(), 100), $component, $args.simulation): new jadex.platform.service.clock.ClockService(new jadex.platform.service.clock.ClockCreationInfo(jadex.bridge.service.types.clock.IClock.TYPE_EVENT_DRIVEN, \"simulation_clock\", System.currentTimeMillis(), 100), $component, $args.simulation)", proxytype=Implementation.PROXYTYPE_RAW))) @Properties(value=@NameValue(name="system", value="true")) public class ClockAgent { }
/** * Agent that provides the context service. */ @Agent @Arguments(@Argument(name="contextserviceclass", clazz=Class.class)) @ProvidedServices(@ProvidedService(type=IContextService.class, implementation=@Implementation(expression="$args.contextserviceclass!=null ? jadex.commons.SReflect.classForName0($args.contextserviceclass, jadex.commons.SReflect.class.getClassLoader()).newInstance() : jadex.commons.SReflect.isAndroid() ? jadex.platform.service.context.AndroidContextService.class.getConstructor(new Class[]{jadex.bridge.IComponentIdentifier.class}).newInstance(new Object[]{$component.getComponentIdentifier()}): jadex.platform.service.context.ContextService.class.getConstructor(new Class[]{jadex.bridge.IComponentIdentifier.class}).newInstance(new Object[]{$component.getComponentIdentifier()})"))) @Properties(value=@NameValue(name="system", value="true")) public class ContextAgent { }
/** * Daemon agent provides functionalities for managing platforms. */ @Description("This agent offers the daemon service.") @GuiClassName("jadex.tools.daemon.DaemonViewerPanel") @RequiredServices(@RequiredService(name = "libservice", type = ILibraryService.class, binding = @Binding(scope = RequiredServiceInfo.SCOPE_PLATFORM))) @ProvidedServices(@ProvidedService(type = IDaemonService.class, implementation = @Implementation(DaemonService.class))) @Agent public class DaemonAgent //extends MicroAgent { }
@Imports( { "jadex.bridge.service.types.factory.*", "jadex.bridge.service.types.cms.*" }) @Arguments(@Argument(name="extensions", clazz=String.class)) @ProvidedServices(@ProvidedService(type=IExtensionLoaderService.class, implementation=@Implementation(ExtensionLoaderService.class))) @RequiredServices(@RequiredService(name="cms", type=IComponentManagementService.class, binding=@Binding(scope=Binding.SCOPE_PLATFORM))) @Agent public class ExtensionsAgent { }
@Imports( { "jadex.bridge.service.types.factory.*", "jadex.bridge.service.types.cms.*" }) @Arguments(@Argument(name="extensions", clazz=String.class)) @ProvidedServices(@ProvidedService(type=IExtensionLoaderService.class, implementation=@Implementation(ExtensionLoaderService.class))) @RequiredServices(@RequiredService(name="cms", type=IComponentManagementService.class, binding=@Binding(scope=Binding.SCOPE_PLATFORM))) @Agent public class ExtensionsAgent { }
/** * Test if pojo services can be passed as local parameters. */ @Agent @ProvidedServices(@ProvidedService(type=IDService.class, implementation=@Implementation(PojoDService.class))) @RequiredServices(@RequiredService(name="cms", type=IComponentManagementService.class, binding=@Binding(scope=Binding.SCOPE_PLATFORM))) @Results(@Result(name="testresults", clazz=Testcase.class)) @Configurations({@Configuration(name="first"), @Configuration(name="second")}) public class ServiceParameterAgent { }