/*
* Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package com.sun.corba.se.impl.resolver ;
import com.sun.corba.se.spi.resolver.Resolver ;
import com.sun.corba.se.spi.orb.ORB ;
import com.sun.corba.se.spi.orb.Operation ;
import com.sun.corba.se.spi.orb.StringPair ;
public class ORBInitRefResolverImpl implements Resolver {
Operation urlHandler ;
java.util.Map orbInitRefTable ;
public ORBInitRefResolverImpl( Operation urlHandler, StringPair[] initRefs )
{
this.urlHandler = urlHandler ;
orbInitRefTable = new java.util.HashMap() ;
for( int i = 0; i < initRefs.length ; i++ ) {
StringPair sp = initRefs[i] ;
orbInitRefTable.put( sp.getFirst(), sp.getSecond() ) ;
}
}
public org.omg.CORBA.Object resolve( String ident )
{
String url = (String)orbInitRefTable.get( ident ) ;
if (url == null)
return null ;
org.omg.CORBA.Object result =
(org.omg.CORBA.Object)urlHandler.operate( url ) ;
return result ;
}
public java.util.Set list()
{
return orbInitRefTable.keySet() ;
}
}