예제 #1
0
 /**
  * Called whenever an ORB instance is created. This registers the transport endpoints and the ORB
  * proxy callback object. Note that we cannot detect when an ORB shuts down, although all of the
  * POA shutdowns should still be reported.
  */
 public void registerORB(
     String serverId,
     String orbId,
     com.sun.corba.se.PortableActivationIDL.ORBProxy orb,
     com.sun.corba.se.PortableActivationIDL.EndPointInfo[] endPointInfo)
     throws com.sun.corba.se.PortableActivationIDL.ServerNotRegistered,
         com.sun.corba.se.PortableActivationIDL.NoSuchEndPoint,
         com.sun.corba.se.PortableActivationIDL.ORBAlreadyRegistered {
   org.omg.CORBA.portable.InputStream $in = null;
   try {
     org.omg.CORBA.portable.OutputStream $out = _request("registerORB", true);
     org.omg.PortableInterceptor.ServerIdHelper.write($out, serverId);
     org.omg.PortableInterceptor.ORBIdHelper.write($out, orbId);
     com.sun.corba.se.PortableActivationIDL.ORBProxyHelper.write($out, orb);
     com.sun.corba.se.PortableActivationIDL.EndpointInfoListHelper.write($out, endPointInfo);
     $in = _invoke($out);
     return;
   } catch (org.omg.CORBA.portable.ApplicationException $ex) {
     $in = $ex.getInputStream();
     String _id = $ex.getId();
     if (_id.equals("IDL:PortableActivationIDL/ServerNotRegistered:1.0"))
       throw com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.read($in);
     else if (_id.equals("IDL:PortableActivationIDL/NoSuchEndPoint:1.0"))
       throw com.sun.corba.se.PortableActivationIDL.NoSuchEndPointHelper.read($in);
     else if (_id.equals("IDL:PortableActivationIDL/ORBAlreadyRegistered:1.0"))
       throw com.sun.corba.se.PortableActivationIDL.ORBAlreadyRegisteredHelper.read($in);
     else throw new org.omg.CORBA.MARSHAL(_id);
   } catch (org.omg.CORBA.portable.RemarshalException $rm) {
     registerORB(serverId, orbId, orb, endPointInfo);
   } finally {
     _releaseReply($in);
   }
 } // registerORB
 public static synchronized org.omg.CORBA.TypeCode type() {
   if (__typeCode == null) {
     synchronized (org.omg.CORBA.TypeCode.class) {
       if (__typeCode == null) {
         if (__active) {
           return org.omg.CORBA.ORB.init().create_recursive_tc(_id);
         }
         __active = true;
         org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember[1];
         org.omg.CORBA.TypeCode _tcOf_members0 = null;
         _tcOf_members0 = org.omg.CORBA.ORB.init().create_string_tc(0);
         _tcOf_members0 =
             org.omg
                 .CORBA
                 .ORB
                 .init()
                 .create_alias_tc(
                     org.omg.PortableInterceptor.ORBIdHelper.id(), "ORBId", _tcOf_members0);
         _members0[0] = new org.omg.CORBA.StructMember("orbId", _tcOf_members0, null);
         __typeCode =
             org.omg
                 .CORBA
                 .ORB
                 .init()
                 .create_exception_tc(
                     com.sun.corba.se.PortableActivationIDL.ORBAlreadyRegisteredHelper.id(),
                     "ORBAlreadyRegistered",
                     _members0);
         __active = false;
       }
     }
   }
   return __typeCode;
 }
예제 #3
0
 /**
  * locate server - returns all ports registered with a specified ORB for an active server Starts
  * the server if it is not already running.
  */
 public com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORB
     locateServerForORB(String serverId, String orbId)
         throws com.sun.corba.se.PortableActivationIDL.InvalidORBid,
             com.sun.corba.se.PortableActivationIDL.ServerNotRegistered,
             com.sun.corba.se.PortableActivationIDL.ServerHeldDown {
   org.omg.CORBA.portable.InputStream $in = null;
   try {
     org.omg.CORBA.portable.OutputStream $out = _request("locateServerForORB", true);
     org.omg.PortableInterceptor.ServerIdHelper.write($out, serverId);
     org.omg.PortableInterceptor.ORBIdHelper.write($out, orbId);
     $in = _invoke($out);
     com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORB $result =
         com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORBHelper.read(
             $in);
     return $result;
   } catch (org.omg.CORBA.portable.ApplicationException $ex) {
     $in = $ex.getInputStream();
     String _id = $ex.getId();
     if (_id.equals("IDL:PortableActivationIDL/InvalidORBid:1.0"))
       throw com.sun.corba.se.PortableActivationIDL.InvalidORBidHelper.read($in);
     else if (_id.equals("IDL:PortableActivationIDL/ServerNotRegistered:1.0"))
       throw com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.read($in);
     else if (_id.equals("IDL:PortableActivationIDL/ServerHeldDown:1.0"))
       throw com.sun.corba.se.PortableActivationIDL.ServerHeldDownHelper.read($in);
     else throw new org.omg.CORBA.MARSHAL(_id);
   } catch (org.omg.CORBA.portable.RemarshalException $rm) {
     return locateServerForORB(serverId, orbId);
   } finally {
     _releaseReply($in);
   }
 } // locateServerForORB
예제 #4
0
 public static synchronized org.omg.CORBA.TypeCode type() {
   if (__typeCode == null) {
     __typeCode = org.omg.CORBA.ORB.init().create_string_tc(0);
     __typeCode =
         org.omg
             .CORBA
             .ORB
             .init()
             .create_alias_tc(org.omg.PortableInterceptor.ORBIdHelper.id(), "ORBId", __typeCode);
   }
   return __typeCode;
 }
예제 #5
0
 /** Find the server template that corresponds to the ORBD's adapter id. */
 public org.omg.PortableInterceptor.ObjectReferenceTemplate lookupPOATemplate(
     String serverId, String orbId, String[] orbAdapterName) {
   org.omg.CORBA.portable.InputStream $in = null;
   try {
     org.omg.CORBA.portable.OutputStream $out = _request("lookupPOATemplate", true);
     org.omg.PortableInterceptor.ServerIdHelper.write($out, serverId);
     org.omg.PortableInterceptor.ORBIdHelper.write($out, orbId);
     org.omg.PortableInterceptor.AdapterNameHelper.write($out, orbAdapterName);
     $in = _invoke($out);
     org.omg.PortableInterceptor.ObjectReferenceTemplate $result =
         org.omg.PortableInterceptor.ObjectReferenceTemplateHelper.read($in);
     return $result;
   } catch (org.omg.CORBA.portable.ApplicationException $ex) {
     $in = $ex.getInputStream();
     String _id = $ex.getId();
     throw new org.omg.CORBA.MARSHAL(_id);
   } catch (org.omg.CORBA.portable.RemarshalException $rm) {
     return lookupPOATemplate(serverId, orbId, orbAdapterName);
   } finally {
     _releaseReply($in);
   }
 } // lookupPOATemplate
예제 #6
0
 /** Called whenever a POA is destroyed. */
 public void poaDestroyed(
     String serverId,
     String orbId,
     org.omg.PortableInterceptor.ObjectReferenceTemplate poaTemplate) {
   org.omg.CORBA.portable.InputStream $in = null;
   try {
     org.omg.CORBA.portable.OutputStream $out = _request("poaDestroyed", true);
     org.omg.PortableInterceptor.ServerIdHelper.write($out, serverId);
     org.omg.PortableInterceptor.ORBIdHelper.write($out, orbId);
     org.omg.PortableInterceptor.ObjectReferenceTemplateHelper.write($out, poaTemplate);
     $in = _invoke($out);
     return;
   } catch (org.omg.CORBA.portable.ApplicationException $ex) {
     $in = $ex.getInputStream();
     String _id = $ex.getId();
     throw new org.omg.CORBA.MARSHAL(_id);
   } catch (org.omg.CORBA.portable.RemarshalException $rm) {
     poaDestroyed(serverId, orbId, poaTemplate);
   } finally {
     _releaseReply($in);
   }
 } // poaDestroyed
  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;
    java.lang.Integer __method = (java.lang.Integer) _methods.get($method);
    if (__method == null)
      throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);

    switch (__method.intValue()) {

        /** A new ORB started server registers itself with the Activator */
      case 0: // PortableActivationIDL/Activator/registerServer
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            com.sun.corba.se.PortableActivationIDL.ServerProxy serverObj =
                com.sun.corba.se.PortableActivationIDL.ServerProxyHelper.read(in);
            this.registerServer(serverId, serverObj);
            out = $rh.createReply();
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          }
          break;
        }

        /**
         * A server is shutting down that was started by this activator. Complete termination of the
         * server is detected by the death of the process implementing the server.
         */
      case 1: // PortableActivationIDL/Activator/serverGoingDown
        {
          String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
          this.serverGoingDown(serverId);
          out = $rh.createReply();
          break;
        }

        /**
         * Called whenever an ORB instance is created. This registers the transport endpoints and
         * the ORB proxy callback object. Note that we cannot detect when an ORB shuts down,
         * although all of the POA shutdowns should still be reported.
         */
      case 2: // PortableActivationIDL/Activator/registerORB
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            String orbId = org.omg.PortableInterceptor.ORBIdHelper.read(in);
            com.sun.corba.se.PortableActivationIDL.ORBProxy orb =
                com.sun.corba.se.PortableActivationIDL.ORBProxyHelper.read(in);
            com.sun.corba.se.PortableActivationIDL.EndPointInfo endPointInfo[] =
                com.sun.corba.se.PortableActivationIDL.EndpointInfoListHelper.read(in);
            this.registerORB(serverId, orbId, orb, endPointInfo);
            out = $rh.createReply();
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.NoSuchEndPoint $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.NoSuchEndPointHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ORBAlreadyRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ORBAlreadyRegisteredHelper.write(out, $ex);
          }
          break;
        }

        /**
         * Construct or find an ORBD object template corresponding to the server's object template
         * and return it. Called whenever a persistent POA is created.
         */
      case 3: // PortableActivationIDL/Activator/registerPOA
        {
          String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
          String orbId = org.omg.PortableInterceptor.ORBIdHelper.read(in);
          org.omg.PortableInterceptor.ObjectReferenceTemplate poaTemplate =
              org.omg.PortableInterceptor.ObjectReferenceTemplateHelper.read(in);
          org.omg.PortableInterceptor.ObjectReferenceTemplate $result = null;
          $result = this.registerPOA(serverId, orbId, poaTemplate);
          out = $rh.createReply();
          org.omg.PortableInterceptor.ObjectReferenceTemplateHelper.write(out, $result);
          break;
        }

        /** Called whenever a POA is destroyed. */
      case 4: // PortableActivationIDL/Activator/poaDestroyed
        {
          String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
          String orbId = org.omg.PortableInterceptor.ORBIdHelper.read(in);
          org.omg.PortableInterceptor.ObjectReferenceTemplate poaTemplate =
              org.omg.PortableInterceptor.ObjectReferenceTemplateHelper.read(in);
          this.poaDestroyed(serverId, orbId, poaTemplate);
          out = $rh.createReply();
          break;
        }

        /**
         * If the server is not running, start it up. This is allowed whether or not the server has
         * been installed.
         */
      case 5: // PortableActivationIDL/Activator/activate
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            this.activate(serverId);
            out = $rh.createReply();
          } catch (com.sun.corba.se.PortableActivationIDL.ServerAlreadyActive $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerAlreadyActiveHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerHeldDown $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerHeldDownHelper.write(out, $ex);
          }
          break;
        }

        /** If the server is running, shut it down */
      case 6: // PortableActivationIDL/Activator/shutdown
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            this.shutdown(serverId);
            out = $rh.createReply();
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotActive $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotActiveHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          }
          break;
        }

        /**
         * Invoke the server install hook. If the server is not currently running, this method will
         * activate it.
         */
      case 7: // PortableActivationIDL/Activator/install
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            this.install(serverId);
            out = $rh.createReply();
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerHeldDown $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerHeldDownHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerAlreadyInstalled $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerAlreadyInstalledHelper.write(out, $ex);
          }
          break;
        }

        /**
         * Invoke the server uninstall hook. If the server is not currently running, this method
         * will activate it. After this hook completes, the server may still be running.
         */
      case 8: // PortableActivationIDL/Activator/uninstall
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            this.uninstall(serverId);
            out = $rh.createReply();
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerHeldDown $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerHeldDownHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerAlreadyUninstalled $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerAlreadyUninstalledHelper.write(out, $ex);
          }
          break;
        }

        /** list active servers */
      case 9: // PortableActivationIDL/Activator/getActiveServers
        {
          String $result[] = null;
          $result = this.getActiveServers();
          out = $rh.createReply();
          com.sun.corba.se.PortableActivationIDL.ServerIdsHelper.write(out, $result);
          break;
        }

        /** list all registered ORBs for a server */
      case 10: // PortableActivationIDL/Activator/getORBNames
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            String $result[] = null;
            $result = this.getORBNames(serverId);
            out = $rh.createReply();
            com.sun.corba.se.PortableActivationIDL.ORBidListHelper.write(out, $result);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          }
          break;
        }

        /** Find the server template that corresponds to the ORBD's adapter id. */
      case 11: // PortableActivationIDL/Activator/lookupPOATemplate
        {
          String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
          String orbId = org.omg.PortableInterceptor.ORBIdHelper.read(in);
          String orbAdapterName[] = org.omg.PortableInterceptor.AdapterNameHelper.read(in);
          org.omg.PortableInterceptor.ObjectReferenceTemplate $result = null;
          $result = this.lookupPOATemplate(serverId, orbId, orbAdapterName);
          out = $rh.createReply();
          org.omg.PortableInterceptor.ObjectReferenceTemplateHelper.write(out, $result);
          break;
        }

      default:
        throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);
    }

    return out;
  } // _invoke
예제 #8
0
  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;
    java.lang.Integer __method = (java.lang.Integer) _methods.get($method);
    if (__method == null)
      throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);

    switch (__method.intValue()) {

        /**
         * locate server - returns the port with a specific type for all registered ORBs of an
         * active server. Starts the server if it is not already running.
         */
      case 0: // PortableActivationIDL/Locator/locateServer
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            String endPoint = in.read_string();
            com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerType $result =
                null;
            $result = this.locateServer(serverId, endPoint);
            out = $rh.createReply();
            com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerTypeHelper.write(
                out, $result);
          } catch (com.sun.corba.se.PortableActivationIDL.NoSuchEndPoint $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.NoSuchEndPointHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerHeldDown $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerHeldDownHelper.write(out, $ex);
          }
          break;
        }

        /**
         * locate server - returns all ports registered with a specified ORB for an active server
         * Starts the server if it is not already running.
         */
      case 1: // PortableActivationIDL/Locator/locateServerForORB
        {
          try {
            String serverId = org.omg.PortableInterceptor.ServerIdHelper.read(in);
            String orbId = org.omg.PortableInterceptor.ORBIdHelper.read(in);
            com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORB $result =
                null;
            $result = this.locateServerForORB(serverId, orbId);
            out = $rh.createReply();
            com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORBHelper.write(
                out, $result);
          } catch (com.sun.corba.se.PortableActivationIDL.InvalidORBid $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.InvalidORBidHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerNotRegistered $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerNotRegisteredHelper.write(out, $ex);
          } catch (com.sun.corba.se.PortableActivationIDL.ServerHeldDown $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.ServerHeldDownHelper.write(out, $ex);
          }
          break;
        }

        /** get the port for the endpoint of the locator */
      case 2: // PortableActivationIDL/Locator/getEndpoint
        {
          try {
            String endPointType = in.read_string();
            int $result = (int) 0;
            $result = this.getEndpoint(endPointType);
            out = $rh.createReply();
            out.write_long($result);
          } catch (com.sun.corba.se.PortableActivationIDL.NoSuchEndPoint $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.NoSuchEndPointHelper.write(out, $ex);
          }
          break;
        }

        /** Useful from external BadServerIdHandlers which need to pick a particular port type. */
      case 3: // PortableActivationIDL/Locator/getServerPortForType
        {
          try {
            com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORB location =
                com.sun.corba.se.PortableActivationIDL.LocatorPackage.ServerLocationPerORBHelper
                    .read(in);
            String endPointType = in.read_string();
            int $result = (int) 0;
            $result = this.getServerPortForType(location, endPointType);
            out = $rh.createReply();
            out.write_long($result);
          } catch (com.sun.corba.se.PortableActivationIDL.NoSuchEndPoint $ex) {
            out = $rh.createExceptionReply();
            com.sun.corba.se.PortableActivationIDL.NoSuchEndPointHelper.write(out, $ex);
          }
          break;
        }

      default:
        throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);
    }

    return out;
  } // _invoke