@Override
 public void assemble(ModuleAssembly module) throws AssemblyException {
   module.services(TestAlarmModel.class);
   module.services(AlarmSystemService.class);
   module.entities(AlarmPointEntity.class);
   new EntityTestAssembler().assemble(module);
   module.values(AlarmStatus.class);
   module.values(AlarmCategory.class);
   module.values(AlarmEvent.class);
   module.entities(AlarmPointEntity.class);
   module.forMixin(AlarmHistory.class).declareDefaults().maxSize().set(30);
 }
Example #2
0
  private void assembleContextLayer(LayerAssembly contextLayer) throws AssemblyException {
    ModuleAssembly roleMapModule = contextLayer.module("CONTEXT-RoleMap");

    // Role-playing entities
    roleMapModule
        .entities(CargoRoleMap.class, CargosRoleMap.class, HandlingEventsRoleMap.class)
        .visibleIn(application);

    // Non-role-playing entities
    roleMapModule
        .entities(HandlingEventEntity.class, LocationEntity.class, VoyageEntity.class)
        .visibleIn(application);

    ModuleAssembly interactionModule = contextLayer.module("CONTEXT-Interaction");
    interactionModule.transients(ProcessHandlingEvent.class).visibleIn(application);

    ModuleAssembly contextServiceModule = contextLayer.module("CONTEXT-Service");
    contextServiceModule
        .addServices(
            ParseHandlingEventData.class,
            RoutingService.class,
            RouteSpecificationFactoryService.class)
        .visibleIn(application);

    contextServiceModule.values(ParsedHandlingEventData.class).visibleIn(application);
  }
Example #3
0
 private void assembleDomainLayer(LayerAssembly dataLayer) throws AssemblyException {
   // Non-role-playing values
   ModuleAssembly structureModule = dataLayer.module("DATA-Structure");
   structureModule
       .values(
           TrackingId.class,
           RouteSpecification.class,
           Delivery.class,
           NextHandlingEvent.class,
           UnLocode.class,
           Itinerary.class,
           Leg.class,
           CarrierMovement.class,
           Schedule.class,
           VoyageNumber.class)
       .visibleIn(application);
 }