]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/services/EventPublisherAspect.java
Restructure SLC
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / services / EventPublisherAspect.java
diff --git a/runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/services/EventPublisherAspect.java b/runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/services/EventPublisherAspect.java
deleted file mode 100644 (file)
index a2fb8b4..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright (C) 2007-2012 Mathieu Baudier
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *         http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.argeo.slc.services;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.slc.msg.MsgConstants;
-import org.argeo.slc.msg.event.SlcEvent;
-import org.argeo.slc.msg.event.SlcEventPublisher;
-import org.argeo.slc.msg.process.SlcExecutionStatusRequest;
-import org.argeo.slc.process.SlcExecution;
-import org.argeo.slc.runtime.SlcAgentDescriptor;
-import org.aspectj.lang.JoinPoint;
-import org.aspectj.lang.annotation.After;
-import org.aspectj.lang.annotation.Aspect;
-
-@Aspect
-public class EventPublisherAspect {
-       public final static String EVT_AGENT_REGISTERED = "agentRegistered";
-       public final static String EVT_AGENT_UNREGISTERED = "agentUnregistered";
-       public final static String EVT_NEW_SLC_EXECUTION = "newSlcExecution";
-       public final static String EVT_UPDATE_SLC_EXECUTION_STATUS = "updateSlcExecutionStatus";
-
-       private final static Log log = LogFactory
-                       .getLog(EventPublisherAspect.class);
-
-       private List<SlcEventPublisher> eventPublishers;
-
-       @After("execution(void org.argeo.slc.services.AgentService.register(..))")
-       public void registerAgent(JoinPoint jp) throws Throwable {
-               SlcAgentDescriptor agentDescriptor = (SlcAgentDescriptor) jp.getArgs()[0];
-               SlcEvent event = new SlcEvent(EVT_AGENT_REGISTERED);
-               event.getHeaders().put(MsgConstants.PROPERTY_SLC_AGENT_ID,
-                               agentDescriptor.getUuid());
-               publishEvent(event);
-       }
-
-       @After("execution(void org.argeo.slc.services.AgentService.unregister(..))")
-       public void unregisterAgent(JoinPoint jp) throws Throwable {
-               SlcAgentDescriptor agentDescriptor = (SlcAgentDescriptor) jp.getArgs()[0];
-               SlcEvent event = new SlcEvent(EVT_AGENT_UNREGISTERED);
-               event.getHeaders().put(MsgConstants.PROPERTY_SLC_AGENT_ID,
-                               agentDescriptor.getUuid());
-               publishEvent(event);
-       }
-
-       @After("execution(void org.argeo.slc.services.SlcExecutionService.newExecution(..))")
-       public void newSlcExecution(JoinPoint jp) throws Throwable {
-               SlcExecution slcExecution = (SlcExecution) jp.getArgs()[0];
-               SlcEvent event = new SlcEvent(EVT_NEW_SLC_EXECUTION);
-               event.getHeaders().put(MsgConstants.PROPERTY_SLC_EXECUTION_ID,
-                               slcExecution.getUuid());
-               publishEvent(event);
-       }
-
-       @After("execution(void org.argeo.slc.services.SlcExecutionService.updateStatus(..))")
-       public void updateSlcExecutionStatus(JoinPoint jp) throws Throwable {
-               SlcExecutionStatusRequest msg = (SlcExecutionStatusRequest) jp
-                               .getArgs()[0];
-               SlcEvent event = new SlcEvent(EVT_UPDATE_SLC_EXECUTION_STATUS);
-               event.getHeaders().put(MsgConstants.PROPERTY_SLC_EXECUTION_ID,
-                               msg.getSlcExecutionUuid());
-               event.getHeaders().put(MsgConstants.PROPERTY_SLC_EXECUTION_STATUS,
-                               msg.getNewStatus());
-               publishEvent(event);
-       }
-
-       public void setEventPublishers(List<SlcEventPublisher> eventPublishers) {
-               this.eventPublishers = eventPublishers;
-       }
-
-       protected void publishEvent(SlcEvent event) {
-
-               for (Iterator<SlcEventPublisher> it = eventPublishers.iterator(); it
-                               .hasNext();) {
-                       SlcEventPublisher eventPublisher = it.next();
-                       if (log.isTraceEnabled())
-                               log.debug("Publish event: "
-                                               + event.getHeaders().get(SlcEvent.EVENT_TYPE) + " to "
-                                               + eventPublisher);
-                       eventPublisher.publish(event);
-               }
-       }
-}