View Javadoc

    1   /***
    2    *
    3    * Copyright 2004 Hiram Chirino
    4    *
    5    * Licensed under the Apache License, Version 2.0 (the "License");
    6    * you may not use this file except in compliance with the License.
    7    * You may obtain a copy of the License at
    8    *
    9    * http://www.apache.org/licenses/LICENSE-2.0
    10   *
    11   * Unless required by applicable law or agreed to in writing, software
    12   * distributed under the License is distributed on an "AS IS" BASIS,
    13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14   * See the License for the specific language governing permissions and
    15   * limitations under the License.
    16   *
    17   **/
    18  package org.activeio.oneport;
    19
    20  import org.omg.PortableInterceptor.ORBInitInfo;
    21  import org.openorb.orb.pi.FeatureInitInfo;
    22  import org.openorb.orb.pi.FeatureInitializer;
    23
    24  /***
    25   * Used to hook in the OpenORBOpenPortSocketFactory into the ORB.
    26   */
    27  public class OpenORBOpenPortFeatureInitializer implements FeatureInitializer {
    28
    29      static final private ThreadLocal socketFatory = new ThreadLocal();
    30
    31      static public void setContextSocketFactory( OpenORBOpenPortSocketFactory sf ) {
    32          socketFatory.set(sf);
    33      }
    34
    35      public void init(ORBInitInfo orbinfo, FeatureInitInfo featureinfo) {
    36          OpenORBOpenPortSocketFactory sf = (OpenORBOpenPortSocketFactory) socketFatory.get();
    37          if( sf!=null ) {
    38              featureinfo.setFeature("IIOP.SocketFactory", sf);
    39          }
    40      }
    41  }