// **********************************************************************
//
// Generated by the ORBacus IDL-to-C++ Translator
//
// Copyright (c) 1998
// Object-Oriented Concepts, Inc.
// Billerica, MA, USA
//
// Copyright (c) 1998
// Object-Oriented Concepts GmbH
// Ettlingen, Germany
//
// All Rights Reserved
//
// **********************************************************************

// Version: 3.0.1
// License: non-commercial

#include <OB/CORBA.h>
#include "ccif_skel.h"

//
// IDL:idl.tove/ccIf/managementServer:1.0
//
OBDispatchStatus
ccIf_managementServer_skel::_OB_dispatch(const char* _ob_op,
                                         OBBuffer& _ob_buf,
                                         bool _ob_sw,
                                         CORBA_ULong _ob_offIn,
                                         CORBA_ULong _ob_offOut)
{
    if(strcmp(_ob_op, "setMessageType") == 0)
    {
        const CORBA_Octet* _ob_co = _ob_buf.data + _ob_offIn;
        ccIf_Side _ob_a0;
        OBUnmarshal(_ob_a0, _ob_co, _ob_sw);
        CORBA_String_var _ob_a1;
        OBUnmarshal(_ob_a1.inout(), _ob_co, _ob_sw);
        CORBA_String_var _ob_a2;
        OBUnmarshal(_ob_a2.inout(), _ob_co, _ob_sw);

        setMessageType(_ob_a0, _ob_a1.in(), _ob_a2.in());

        CORBA_ULong _ob_cnt = _ob_offOut;

        _ob_buf.alloc(_ob_cnt);

        return OBDispatchStatusOK;
    }
    else if(strcmp(_ob_op, "addTrigger") == 0)
    {
        const CORBA_Octet* _ob_co = _ob_buf.data + _ob_offIn;
        ccIf_Side _ob_a0;
        OBUnmarshal(_ob_a0, _ob_co, _ob_sw);
        CORBA_String_var _ob_a1;
        OBUnmarshal(_ob_a1.inout(), _ob_co, _ob_sw);
        ccIf_TriggerType _ob_a2;
        OBUnmarshal(_ob_a2, _ob_co, _ob_sw);

        addTrigger(_ob_a0, _ob_a1.in(), _ob_a2);

        CORBA_ULong _ob_cnt = _ob_offOut;

        _ob_buf.alloc(_ob_cnt);

        return OBDispatchStatusOK;
    }
    else if(strcmp(_ob_op, "deleteTrigger") == 0)
    {
        const CORBA_Octet* _ob_co = _ob_buf.data + _ob_offIn;
        ccIf_Side _ob_a0;
        OBUnmarshal(_ob_a0, _ob_co, _ob_sw);
        CORBA_String_var _ob_a1;
        OBUnmarshal(_ob_a1.inout(), _ob_co, _ob_sw);
        ccIf_TriggerType _ob_a2;
        OBUnmarshal(_ob_a2, _ob_co, _ob_sw);

        deleteTrigger(_ob_a0, _ob_a1.in(), _ob_a2);

        CORBA_ULong _ob_cnt = _ob_offOut;

        _ob_buf.alloc(_ob_cnt);

        return OBDispatchStatusOK;
    }
    else if(strcmp(_ob_op, "requestTDPreport") == 0)
    {
        const CORBA_Octet* _ob_co = _ob_buf.data + _ob_offIn;
        ccIf_Side _ob_a0;
        OBUnmarshal(_ob_a0, _ob_co, _ob_sw);
        ccIf_TDPsType_var _ob_a1;

        requestTDPreport(_ob_a0, _ob_a1.out());

        CORBA_ULong _ob_cnt = _ob_offOut;
        OBMarshalCount(_ob_a1.in(), _ob_cnt);

        _ob_buf.alloc(_ob_cnt);
        CORBA_Octet* _ob_o = _ob_buf.data + _ob_offOut;
        OBMarshal(_ob_a1.in(), _ob_o);

        return OBDispatchStatusOK;
    }
    else if(strcmp(_ob_op, "test") == 0)
    {

        test();

        CORBA_ULong _ob_cnt = _ob_offOut;

        _ob_buf.alloc(_ob_cnt);

        return OBDispatchStatusOK;
    }
    else
        return CORBA_Object_skel::_OB_dispatch(_ob_op, _ob_buf, _ob_sw, _ob_offIn, _ob_offOut);
}
