/** * Calculator component that provides all services by itself. */ @Description("This agent is a minimal calculator.") @ProvidedServices({ //@ProvidedService(type=IAddService.class, expression="new AddService($component)"), @ProvidedService(type=IAddService.class, implementation=@Implementation(PojoAddService.class)), @ProvidedService(type=ISubService.class, implementation=@Implementation(expression="new SubService($component)")) }) @Agent public class CalculatorAgent { }
/** * Micro kernel. */ @Imports("jadex.commons.*") @ProvidedServices({@ProvidedService(type=IComponentFactory.class, implementation=@Implementation( expression="new MicroAgentFactory($component.getServiceProvider(), SUtil.createHashMap(new String[]{\"debugger.panels\"},new Object[]{\"jadex.tools.debugger.micro.MicroDebuggerPanel\"}))")) }) public class KernelMicroAgent extends MicroAgent { }
/** * Component kernel. */ @Properties({ @NameValue(name="kernel.types", value="new String[] { \"component.xml\"}") }) @ProvidedServices({ @ProvidedService(type=IComponentFactory.class, implementation=@Implementation(expression="new jadex.component.ComponentComponentFactory($component.getServiceProvider())")) }) public class KernelComponentAgent extends MicroAgent { }
/** * Chat micro agent with a registry service. */ @Description("This agent provides a registry service.") @Agent @ProvidedServices(@ProvidedService(type=IRegistryServiceE3.class, implementation=@Implementation(RegistryServiceE3.class))) public class RegistryE3Agent { }
/** * 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 @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 { }
/** * 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 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 publishes the rs publication service. */ @Agent @ProvidedServices( { @ProvidedService(name="publish_rs", type=IWebPublishService.class, implementation=@Implementation(GrizzlyRestServicePublishService.class)) }) @Properties(@NameValue(name="system", value="true")) public class LegacyGrizzlyRSPublishAgent { }
/** * Agent that provides the marshal service. */ @Agent @ProvidedServices(@ProvidedService(type=IMarshalService.class, implementation=@Implementation(value=MarshalService.class, proxytype=Implementation.PROXYTYPE_RAW))) @Properties(value=@NameValue(name="system", value="true")) public class MarshalAgent { }
/** * Micro kernel. */ @Imports("jadex.commons.*") @ProvidedServices({@ProvidedService(type=IComponentFactory.class, implementation=@Implementation( expression="new MicroAgentFactory($component, SUtil.createHashMap(new String[]{\"debugger.panels\"},new Object[]{\"jadex.tools.debugger.micro.MicroDebuggerPanel\"}))")) }) @Agent @Properties(@NameValue(name="system", value="true")) public class KernelMicroAgent { }
/** * 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 { }
/** * 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 { }
/** * 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 { }