@Override public Set<OutgoingEventInstance> getBoundaryOutgoingEvents(final ActivityInstanceUUID activityUUID) { final Set<OutgoingEventInstance> outgoings = getDbSession().getBoundaryOutgoingEvents(activityUUID); if (outgoings == null) { return Collections.emptySet(); } return outgoings; }
@Override public void removeSubscriptions(final ProcessInstanceUUID instanceUUID) { final Set<IncomingEventInstance> events = getIncomingEvents(instanceUUID); if (events != null && !events.isEmpty()) { for (final IncomingEventInstance event : events) { removeSubscription(event); } } }
@Override public void removeFiredEvents(final ProcessInstanceUUID instanceUUID) { final Set<OutgoingEventInstance> events = getOutgoingEvents(instanceUUID); if (events != null && !events.isEmpty()) { for (final OutgoingEventInstance event : events) { removeFiredEvent(event); } } }
@Override public void removeEvent(final EventInstance event) { if (event instanceof OutgoingEventInstance) { removeFiredEvent((OutgoingEventInstance) event); } else { removeSubscription((IncomingEventInstance) event); } }
@Override public void storeJob(final Job job) { final int retries = EnvTool.getEventExecutor().getRetries(); job.setRetries(retries); getDbSession().save(job); if (LOG.isLoggable(Level.INFO)) { LOG.info("New job: " + job + "..."); } refreshJobExecutor(); }
@Override public void fire(final OutgoingEventInstance outgoingEventInstance) { getDbSession().save(outgoingEventInstance); if (LOG.isLoggable(Level.FINE)) { LOG.fine("Firing event outgoing event: " + outgoingEventInstance + "..."); } refreshMatcher(); }
@Override public void enablePermanentEventsInFailure(final ActivityDefinitionUUID activityUUID) { final Job job = getDbSession().getJob(activityUUID); final int retries = EnvTool.getEventExecutor().getRetries(); if (job.getRetries() == 0) { job.setRetries(retries); } refreshJobExecutor(); }
@Override public void subscribe(final IncomingEventInstance incomingEventInstance) { final long originalEnableTime = incomingEventInstance.getEnableTime(); incomingEventInstance.setEnableTime(Long.MAX_VALUE); getDbSession().save(incomingEventInstance); EnvTool.getTransaction().registerSynchronization( new EventAdded(getDbSession(), incomingEventInstance.getId(), originalEnableTime)); if (LOG.isLoggable(Level.FINE)) { LOG.fine("Firing event incoming event: " + incomingEventInstance + "..."); } refreshMatcher(); }
@Override public Set<OutgoingEventInstance> getOutgoingEvents(final String eventName, final String toProcessName, final String toActivityName, final ActivityInstanceUUID activityUUID) { final Set<OutgoingEventInstance> outgoings = getDbSession().getOutgoingEvents(eventName, toProcessName, toActivityName, activityUUID); if (outgoings == null) { return Collections.emptySet(); } return outgoings; }
@Override @SuppressWarnings("deprecation") public void enableEventsInFailureIncomingEvents(final ActivityInstanceUUID activityUUID) { final Execution execution = EnvTool.getJournal().getExecutionOnActivity(activityUUID.getProcessInstanceUUID(), activityUUID); final List<Job> jobs = getDbSession().getJobsOfExecution(execution.getEventUUID()); final int retries = EnvTool.getEventExecutor().getRetries(); for (final Job job : jobs) { if (job.getRetries() == 0) { job.setRetries(retries); } } refreshJobExecutor(); }
@Override public void removeSubscriptions(final ActivityDefinitionUUID activityUUID) { final Set<IncomingEventInstance> events = getIncomingEvents(activityUUID); if (events != null && !events.isEmpty()) { for (final IncomingEventInstance event : events) { removeSubscription(event); } } }
public void removeFiredEvent(final OutgoingEventInstance outgoing) { getDbSession().deleteIncompatibleEvents(outgoing); getDbSession().delete(outgoing); if (LOG.isLoggable(Level.FINE)) { LOG.fine("Removing outgoing event: " + outgoing + "..."); } }
@Override public OutgoingEventInstance getOutgoingEvent(final long outgoingId) { return getDbSession().getOutgoingEvent(outgoingId); }
@Override public Set<IncomingEventInstance> getSignalIncomingEvents(final String signal) { return getDbSession().getSignalIncomingEvents(signal); }
@Override public void removeJob(final Job job) { getDbSession().delete(job); }
@Override public List<Job> getTimerJobs() { return getDbSession().getJobs(EventConstants.TIMER); }
public Set<IncomingEventInstance> getIncomingEvents(final ActivityDefinitionUUID activityUUID) { final Set<IncomingEventInstance> incomings = getDbSession().getIncomingEvents(activityUUID); if (incomings == null) { return Collections.emptySet(); } return incomings; }
@Override public void removeJob(final ActivityDefinitionUUID activityUUID) { final Job job = getDbSession().getJob(activityUUID); if (job != null) { getDbSession().delete(job); } }
@Override public void removeJobs(final String executionEventUUID) { final List<Job> jobs = getDbSession().getJobsOfExecution(executionEventUUID); for (final Job job : jobs) { getDbSession().delete(job); } }
@Override public void removeJobs(final ProcessInstanceUUID instanceUUID) { final List<Job> jobs = getDbSession().getJobsOfInstance(instanceUUID); for (final Job job : jobs) { getDbSession().delete(job); } }