<!--
  ~ Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
  ~
  ~ 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.
  -->
<serviceGroup>
    <service name="EventProcessorAdminService" scope="transportsession">
        <transports>
            <transport>https</transport>
        </transports>
        <messageReceivers>
            <messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
                             class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
            <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
                             class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
            <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
                             class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
        </messageReceivers>

        <parameter name="ServiceClass">
            org.wso2.carbon.event.processor.admin.EventProcessorAdminService
        </parameter>

        <parameter name="AuthorizationAction" locked="false">
            /permission/admin/manage/event-processor
        </parameter>

        <operation name="deployExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="undeployActiveExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="undeployInactiveExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="editActiveExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="editInactiveExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="getAllActiveExecutionPlanConfigurations">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="getAllInactiveExecutionPlanConigurations">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="getActiveExecutionPlanConfiguration">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="getActiveExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="getInactiveExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="setStatisticsEnabled">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="setTracingEnabled">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>

        <operation name="validateExecutionPlan">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="getSiddhiStreams">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="getAllExportedStreamSpecificActiveExecutionPlanConfiguration">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
        <operation name="getAllImportedStreamSpecificActiveExecutionPlanConfiguration">
            <parameter name="AuthorizationAction" locked="true">
                /permission/admin/manage/event-processor
            </parameter>
        </operation>
    </service>

    <parameter name="adminService" locked="true">true</parameter>
    <parameter name="hiddenService" locked="true">true</parameter>
</serviceGroup>

