| /********************************************************************** |
| // @@@ START COPYRIGHT @@@ |
| // |
| // Licensed to the Apache Software Foundation (ASF) under one |
| // or more contributor license agreements. See the NOTICE file |
| // distributed with this work for additional information |
| // regarding copyright ownership. The ASF licenses this file |
| // to you 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. |
| // |
| // @@@ END COPYRIGHT @@@ |
| **********************************************************************/ |
| //
|
| // MODULE: CA.IDL
|
| //
|
| // PURPOSE: Describes methods for ODBC Cluster Administrator
|
| //
|
| // NOTES: Intentionally not dependent on any other component in ODBC
|
| // to avoid cyclical references that can not be resolved currently.
|
| // there are several declarations that are common because of this,
|
| // and it is imagined that they will eventually be re-partitioned
|
| // without the need for duplication.
|
| //
|
| // Modification History
|
|
|
| #ifndef _CA_DEFINED
|
| #define _CA_DEFINED
|
|
|
| module CA {
|
| // used to simulate a unique id for interface
|
| // concatates elements
|
| // major = x01, minor = x00, build = x0001
|
| typedef long long VERSION_def;
|
| typedef string UUID_def;
|
|
|
| #define cm_uuid ((UUID_def) "e0c3d230-e045-11d1-a57d-0060b01ad6ae")
|
| #define cm_version ((VERSION_def) 16777217)
|
|
|
| // Object reference
|
| //
|
|
|
| typedef char OMX_IDENTIFIER_def[128];
|
| typedef long OMX_UID_def;
|
| typedef string<3000> ERROR_TEXT_def;
|
|
|
| typedef struct CA_ERROR_DESC_t {
|
| long ErrDiagnosticId;
|
| ERROR_TEXT_def ErrText;
|
| } CA_ERROR_DESC_def;
|
|
|
| typedef sequence<CA_ERROR_DESC_def> CA_ERROR_DESC_LIST_def;
|
|
|
| // used to describe the current state of the ODBC system
|
| // as well as to indicate a change directive
|
| typedef enum OMX_STATUS_t {
|
| OMX_UNKNOWN
|
| ,OMX_STOPPED
|
| ,OMX_STOPPING
|
| ,OMX_STARTING
|
| ,OMX_STARTED
|
| } OMX_STATUS_def;
|
|
|
|
|
| interface Svc
|
| {
|
| exception ParamError {string ErrText;};
|
| exception Error {string ErrText;};
|
| exception DuplicateRegistry{};
|
|
|
| // used by Association Service to register for FailOver protection
|
| void RegSvc ( in OMX_IDENTIFIER_def ObjRef
|
| ,in OMX_IDENTIFIER_def ObjMachineNm
|
| ,in string<128> ProcessNm
|
| ,in string<128> ProcessTitle
|
| ,in long DSId
|
| ,in long NodeNum
|
| ,in long DebugFlag
|
| )
|
| raises (ParamError
|
| ,Error
|
| ,DuplicateRegistry);
|
|
|
| // used to indicate that the Association Server is broadcasting
|
| // a Stop request, signalling CA to gracefully shutdown
|
| void ShutdownSvc()
|
| raises (Error);
|
|
|
| // used to indicate that the services has failed
|
| // signalling CA to shutdown immediately
|
| void AbortSvc()
|
| raises (Error);
|
|
|
| // used as a signal between AS and CA servers. will eventually
|
| // have parameters and timestamps but for now...
|
| void KeepAlive ()
|
| raises (Error);
|
|
|
| }; // end of interface CA_Svc
|
|
|
| }; // end of module CA
|
| #endif
|