/* * 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() ; } }