/*
 * Copyright (c) 1998, 2018 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0,
 * or the Eclipse Distribution License v. 1.0 which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
 */

// Contributors:
//     Oracle - initial API and implementation from Oracle TopLink
package org.eclipse.persistence.sessions.remote.corba.sun;

import java.util.Hashtable;
import org.eclipse.persistence.internal.sessions.remote.Transporter;

/**
* INTERNAL:
* org/eclipse/persistence/remote/corba/sun/_CORBARemoteSessionControllerImplBase.java
* Generated by the IDL-to-Java compiler (portable), version "3.0"
* from d:/StarTeam/DIDev/Pine/TopLink/DISource/IDLs/CorbaRemoteSessionControllerSun.idl
* Thursday, May 3, 2001 1:36:59 PM EDT
*/
public abstract class _CORBARemoteSessionControllerImplBase extends org.omg.CORBA.portable.ObjectImpl implements CORBARemoteSessionController, org.omg.CORBA.portable.InvokeHandler {
    // Constructors
    public _CORBARemoteSessionControllerImplBase() {
    }

    private static final Hashtable<String, Integer> _methods = new Hashtable<>();

    static {
        _methods.put("getLogin", Integer.valueOf(2));
        _methods.put("scrollableCursorCurrentIndex", Integer.valueOf(5));
        _methods.put("commitRootUnitOfWork", Integer.valueOf(6));
        _methods.put("scrollableCursorAbsolute", Integer.valueOf(8));
        _methods.put("cursoredStreamNextPage", Integer.valueOf(10));
        _methods.put("executeQuery", Integer.valueOf(14));
        _methods.put("scrollableCursorFirst", Integer.valueOf(15));
        _methods.put("scrollableCursorAfterLast", Integer.valueOf(18));
        _methods.put("cursoredStreamClose", Integer.valueOf(19));
        _methods.put("getSequenceNumberNamed", Integer.valueOf(22));
        _methods.put("scrollableCursorClose", Integer.valueOf(24));
        _methods.put("processCommand", Integer.valueOf(25));
        _methods.put("cursorSelectObjects", Integer.valueOf(27));
        _methods.put("scrollableCursorLast", Integer.valueOf(29));
        _methods.put("executeNamedQuery", Integer.valueOf(31));
        _methods.put("scrollableCursorBeforeFirst", Integer.valueOf(33));
        _methods.put("scrollableCursorIsBeforeFirst", Integer.valueOf(34));
        _methods.put("beginTransaction", Integer.valueOf(35));
        _methods.put("initializeIdentityMapsOnServerSession", Integer.valueOf(36));
        _methods.put("scrollableCursorIsLast", Integer.valueOf(37));
        _methods.put("scrollableCursorSize", Integer.valueOf(38));
        _methods.put("scrollableCursorIsFirst", Integer.valueOf(39));
        _methods.put("getDescriptor", Integer.valueOf(40));
        _methods.put("cursoredStreamSize", Integer.valueOf(41));
        _methods.put("scrollableCursorRelative", Integer.valueOf(42));
        _methods.put("commitTransaction", Integer.valueOf(45));
        _methods.put("rollbackTransaction", Integer.valueOf(47));
        _methods.put("instantiateRemoteValueHolderOnServer", Integer.valueOf(52));
        _methods.put("scrollableCursorNextObject", Integer.valueOf(53));
        _methods.put("scrollableCursorIsAfterLast", Integer.valueOf(54));
        _methods.put("getDefaultReadOnlyClasses", Integer.valueOf(56));
        _methods.put("scrollableCursorPreviousObject", Integer.valueOf(57));
        _methods.put("getDescriptorForAlias", Integer.valueOf(58));
        _methods.put("beginEarlyTransaction", Integer.valueOf(59));
    }

    @Override
    public org.omg.CORBA.portable.OutputStream _invoke(String method, org.omg.CORBA.portable.InputStream in, org.omg.CORBA.portable.ResponseHandler rh) {
        org.omg.CORBA.portable.OutputStream out = null;
        Integer __method = _methods.get(method);
        if (__method == null) {
            throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);
        }

        switch (__method) {
        case 2:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/getLogin
         {
            Transporter __result = this.getLogin();
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 5:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorCurrentIndex
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorCurrentIndex(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 6:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/commitRootUnitOfWork
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.commitRootUnitOfWork(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 8:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorAbsolute
         {
            Transporter arg0 = TransporterHelper.read(in);
            int arg1 = in.read_long();
            Transporter __result = this.scrollableCursorAbsolute(arg0, arg1);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 10:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/cursoredStreamNextPage
         {
            Transporter arg0 = TransporterHelper.read(in);
            int arg1 = in.read_long();
            Transporter __result = this.cursoredStreamNextPage(arg0, arg1);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 14:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/executeQuery
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.executeQuery(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 15:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorFirst
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorFirst(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 18:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorAfterLast
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorAfterLast(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 19:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/cursoredStreamClose
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.cursoredStreamClose(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 22:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/getSequenceNumberNamed
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.getSequenceNumberNamed(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 24:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorClose
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorClose(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 25:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/processCommand
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.processCommand(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 27:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/cursorSelectObjects
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.cursorSelectObjects(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 29:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorLast
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorLast(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 31:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/executeNamedQuery
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter arg1 = TransporterHelper.read(in);
            Transporter arg2 = TransporterHelper.read(in);
            Transporter __result = this.executeNamedQuery(arg0, arg1, arg2);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 33:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorBeforeFirst
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorBeforeFirst(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 34:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorIsBeforeFirst
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorIsBeforeFirst(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 35:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/beginTransaction
         {
            Transporter __result = this.beginTransaction();
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 36:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/initializeIdentityMapsOnServerSession
         {
            Transporter __result = this.initializeIdentityMapsOnServerSession();
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 37:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorIsLast
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorIsLast(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 38:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorSize
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorSize(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 39:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorIsFirst
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorIsFirst(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 40:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/getDescriptor
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.getDescriptor(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 41:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/cursoredStreamSize
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.cursoredStreamSize(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 42:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorRelative
         {
            Transporter arg0 = TransporterHelper.read(in);
            int arg1 = in.read_long();
            Transporter __result = this.scrollableCursorRelative(arg0, arg1);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 45:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/commitTransaction
         {
            Transporter __result = this.commitTransaction();
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 47:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/rollbackTransaction
         {
            Transporter __result = this.rollbackTransaction();
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 52:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/instantiateRemoteValueHolderOnServer
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.instantiateRemoteValueHolderOnServer(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 53:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorNextObject
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorNextObject(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 54:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorIsAfterLast
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorIsAfterLast(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 56:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/getDefaultReadOnlyClasses
         {
            Transporter __result = this.getDefaultReadOnlyClasses();
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 57:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/scrollableCursorPreviousObject
         {
            Transporter arg0 = TransporterHelper.read(in);
            Transporter __result = this.scrollableCursorPreviousObject(arg0);
            out = rh.createReply();
            TransporterHelper.write(out, __result);
            break;
        }
        case 58:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/getDescriptorForAlias
        {
           Transporter arg0 = TransporterHelper.read(in);
           Transporter __result = this.getDescriptorForAlias(arg0);
           out = rh.createReply();
           TransporterHelper.write(out, __result);
           break;
       }
        case 59:// org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController/beginEarlyTransaction
        {
           Transporter __result = this.beginEarlyTransaction();
           out = rh.createReply();
           TransporterHelper.write(out, __result);
           break;
       }
        default:
            throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);
        }

        return out;
    }
    // _invoke

    // Type-specific CORBA::Object operations
    private static final String[] __ids = { "IDL:org/eclipse/persistence/remote/corba/sun/CORBARemoteSessionController:1.0" };

    @Override
    public String[] _ids() {
        return __ids;
    }
}// class _CORBARemoteSessionControllerImplBase
