/* * Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com * The software in this package is published under the terms of the CPAL v1.0 * license, a copy of which has been included with this distribution in the * LICENSE.txt file. */ package org.mule.test.implicit.config.extension.extension; import org.mule.runtime.api.exception.MuleException; import org.mule.runtime.api.lifecycle.Initialisable; import org.mule.runtime.api.lifecycle.InitialisationException; import org.mule.runtime.api.lifecycle.Startable; import org.mule.runtime.core.api.MuleContext; import org.mule.runtime.core.api.context.MuleContextAware; import org.mule.runtime.extension.api.annotation.Extension; import org.mule.runtime.extension.api.annotation.Operations; import org.mule.runtime.extension.api.annotation.connectivity.ConnectionProviders; import org.mule.runtime.extension.api.annotation.dsl.xml.Xml; import org.mule.runtime.extension.api.annotation.param.Optional; import org.mule.runtime.extension.api.annotation.param.Parameter; @Extension(name = "implicit") @Operations({ImplicitOperations.class}) @Xml(namespace = "http://www.mulesoft.org/schema/mule/implicit", prefix = "implicit") @ConnectionProviders(ImplicitConnectionProvider.class) public class ImplicitConfigExtension implements Initialisable, Startable, MuleContextAware { private MuleContext muleContext; private int initialise = 0; private int start = 0; @Parameter @Optional private String optionalNoDefault; @Parameter @Optional(defaultValue = "#[mel:flowVars['optionalWithDefault']]") private Integer optionalWithDefault; @Override public void initialise() throws InitialisationException { initialise++; } @Override public void setMuleContext(MuleContext context) { muleContext = context; } @Override public void start() throws MuleException { start++; } public MuleContext getMuleContext() { return muleContext; } public int getInitialise() { return initialise; } public int getStart() { return start; } public String getOptionalNoDefault() { return optionalNoDefault; } public Integer getOptionalWithDefault() { return optionalWithDefault; } }