public static String flow(MuleContext muleContext, String name) { return String.format("%s%s", getPrefix(muleContext), name); }
protected String getThreadPoolName(String stageName, MuleContext muleContext) { return ThreadNameHelper.flow(muleContext, stageName); }
final String threadPrefix = ThreadNameHelper.receiver(muleContext, getName()); WorkManager newWorkManager = this.getReceiverThreadingProfile().createWorkManager( threadPrefix, muleContext.getConfiguration().getShutdownTimeout()); final String threadPrefix = ThreadNameHelper.dispatcher(muleContext, getName()); WorkManager newWorkManager = dispatcherThreadingProfile.createWorkManager( threadPrefix, muleContext.getConfiguration().getShutdownTimeout()); final String threadPrefix = ThreadNameHelper.requester(muleContext, getName()); WorkManager newWorkManager = this.getRequesterThreadingProfile().createWorkManager( threadPrefix, muleContext.getConfiguration().getShutdownTimeout());
protected void addMessageProcessors(MessageProcessorChainBuilder builder) { builder.chain(new ProcessingTimeInterceptor(null, this)); builder.chain(new ServiceLoggingMessageProcessor(this)); builder.chain(new ServiceStatisticsMessageProcessor(this)); builder.chain(new ServiceSetEventRequestContextMessageProcessor()); if (getThreadingProfile().isDoThreading()) { sedaStage = new LaxSedaStageInterceptingMessageProcessor(ThreadNameHelper.sedaService( muleContext, getName()), getName(), queueProfile, queueTimeout, threadingProfile, stats, muleContext); builder.chain(sedaStage); } builder.chain(new ServiceInternalMessageProcessor(this)); if (asyncReplyMessageSource.getEndpoints().size() > 0) { builder.chain(createAsyncReplyProcessor()); } builder.chain(new ServiceOutboundMessageProcessor(this)); builder.chain(new ServiceOutboundStatisticsMessageProcessor(this)); builder.chain(outboundRouter); }
public static String requester(MuleContext muleContext, String connectorName) { return String.format("%s%s.requester", getPrefix(muleContext), connectorName); }
@Override protected AsyncInterceptingMessageProcessor createAsyncMessageProcessor(org.mule.api.processor.StageNameSource nameSource, MuleContext muleContext) { Integer timeout = queueTimeout != null ? queueTimeout : muleContext.getConfiguration() .getDefaultQueueTimeout(); initQueueStore(muleContext); QueueProfile queueProfile = new QueueProfile(maxQueueSize, queueStore); ThreadingProfile threadingProfile = createThreadingProfile(muleContext); String stageName = nameSource.getName(); return new SedaStageInterceptingMessageProcessor(ThreadNameHelper.flow(muleContext, stageName), stageName, queueProfile, timeout, threadingProfile, queueStatistics, muleContext); }
public static String async(MuleContext muleContext, String name, int sequenceNumber ) { return String.format("%s%s.async%s", getPrefix(muleContext), name, sequenceNumber); }
public static String receiver(MuleContext muleContext, String connectorName) { return String.format("%s%s.receiver", getPrefix(muleContext), connectorName); }
public static String dispatcher(MuleContext muleContext, String connectorName) { return String.format("%s%s.dispatcher", getPrefix(muleContext), connectorName); }
public static String sedaService(MuleContext muleContext, String name) { return String.format("%s%s", getPrefix(muleContext), name); }
@Override public void start() throws MuleException { String threadName = String.format("%sprocessing.time.monitor", ThreadNameHelper.getPrefix(muleContext)); watcherThread = new Thread(new ProcessingTimeChecker(), threadName); watcherThread.setDaemon(true); watcherThread.start(); }
@Override public void initialise() throws InitialisationException { if (storePrefix == null) { storePrefix = String.format("%s.%s.%s", ThreadNameHelper.getPrefix(muleContext), (flowConstruct == null ? "" : flowConstruct.getName()), this.getClass().getName()); } if (store == null) { this.store = createMessageIdStore(); } LifecycleUtils.initialiseIfNeeded(store); }
@Override public void initialise() throws InitialisationException { name = String.format(NAME_TEMPLATE, storePrefix, ThreadNameHelper.getPrefix(muleContext), flowConstruct == null ? "" : flowConstruct.getName()); store = ((ObjectStoreManager) muleContext.getRegistry(). get(MuleProperties.OBJECT_STORE_MANAGER)). getObjectStore(name, false, MAX_PROCESSED_GROUPS, UNCLAIMED_TIME_TO_LIVE, UNCLAIMED_INTERVAL); }
private WorkManager createWorkManager() { final WorkManager workManager = workerThreadingProfile.createWorkManager(format("%s%s.%s", ThreadNameHelper.getPrefix(muleContext), name, "worker"), muleContext.getConfiguration().getShutdownTimeout()); if (workManager instanceof MuleContextAware) { ((MuleContextAware) workManager).setMuleContext(muleContext); } return workManager; }
this.muleContext = muleContext; this.timeoutMessageProcessor = timeoutMessageProcessor; name = String.format("%s%s.event.correlator", ThreadNameHelper.getPrefix(muleContext), flowConstruct.getName()); this.flowConstruct = flowConstruct;
@Override public void initialise() throws InitialisationException { Collection<TcpServerSocketProperties> tcpServerSocketPropertiesBeans = muleContext.getRegistry().lookupObjects(TcpServerSocketProperties.class); TcpServerSocketProperties tcpServerSocketProperties = new DefaultTcpServerSocketProperties(); if (tcpServerSocketPropertiesBeans.size() == 1) { tcpServerSocketProperties = Iterables.getOnlyElement(tcpServerSocketPropertiesBeans); } else if (tcpServerSocketPropertiesBeans.size() > 1) { throw new InitialisationException(CoreMessages.createStaticMessage("Only one global TCP server socket properties bean should be defined in the config"), this); } String threadNamePrefix = ThreadNameHelper.getPrefix(muleContext) + LISTENER_THREAD_NAME_PREFIX; try { httpServerManager = new GrizzlyServerManager(threadNamePrefix, httpListenerRegistry, tcpServerSocketProperties); } catch (IOException e) { throw new InitialisationException(e, this); } }
private ExecutorService createRequestDispatcherThreadPool(HttpConnector httpConnector) { ThreadingProfile receiverThreadingProfile = httpConnector.getReceiverThreadingProfile(); MutableThreadingProfile dispatcherThreadingProfile = new MutableThreadingProfile(receiverThreadingProfile); dispatcherThreadingProfile.setThreadFactory(null); dispatcherThreadingProfile.setMaxThreadsActive(dispatcherThreadingProfile.getMaxThreadsActive() * 2); String threadNamePrefix = ThreadNameHelper.getPrefix(httpConnector.getMuleContext()) + "http.request.dispatch." + serverSocket.getLocalPort(); ExecutorService executorService = dispatcherThreadingProfile.createPool(threadNamePrefix); return executorService; }
@Override public void start() { final String threadPrefix = String.format("%s%s.%s", ThreadNameHelper.getPrefix(getUntilSuccessfulConfiguration().getMuleContext()), getUntilSuccessfulConfiguration().getFlowConstruct().getName(), "until-successful"); pool = getUntilSuccessfulConfiguration().getThreadingProfile().createPool(threadPrefix); scheduledRetriesPool = getUntilSuccessfulConfiguration().createScheduledRetriesPool(threadPrefix); }
@Override public void initialise() throws InitialisationException { if (messageInfoMapping == null) { messageInfoMapping = flowConstruct.getMessageInfoMapping(); } if (storePrefix == null) { storePrefix = String.format("%s%s.%s.", ThreadNameHelper.getPrefix(muleContext), flowConstruct.getName(), this.getClass().getName()); } initProcessedGroupsObjectStore(); initEventGroupsObjectStore(); eventCorrelator = new EventCorrelator(getCorrelatorCallback(muleContext), next, messageInfoMapping, muleContext, flowConstruct, eventGroupsObjectStore, storePrefix, processedGroupsObjectStore); // Inherit failOnTimeout from async-reply if this aggregator is being used // for async-reply if (flowConstruct instanceof Service) { Service service = (Service) flowConstruct; if (service.getAsyncReplyMessageSource().getMessageProcessors().contains(this)) { failOnTimeout = service.getAsyncReplyMessageSource().isFailOnTimeout(); } } eventCorrelator.setTimeout(timeout); eventCorrelator.setFailOnTimeout(isFailOnTimeout()); }
@Override protected void doInitialise() throws InitialisationException { if (tcpProtocol != null) { try { muleContext.getInjector().inject(getTcpProtocol()); } catch (MuleException e) { throw new InitialisationException(e, this); } } socketFactory.setConnectionTimeout(getConnectionTimeout()); socketsPool.setFactory(getSocketFactory()); socketsPool.setTestOnBorrow(true); socketsPool.setTestOnReturn(true); socketsPool.setMaxActive(getDispatcherThreadingProfile().getMaxThreadsActive()); socketsPool.setMaxIdle(getDispatcherThreadingProfile().getMaxThreadsIdle()); socketsPool.setWhenExhaustedAction(GenericKeyedObjectPool.WHEN_EXHAUSTED_BLOCK); socketsPool.setMaxWait(socketMaxWait); // Use connector's classloader so that other temporary classloaders // aren't used when things are started lazily or from elsewhere. final String monitorName = String.format("%s%s.socket", ThreadNameHelper.getPrefix(muleContext), getName()); keepAliveMonitor = new ExpiryMonitor(monitorName, 1000, this.getClass().getClassLoader(), muleContext, false); }