kr.co.hit.live.locator
Class ServiceLocator

java.lang.Object
  extended by kr.co.hit.live.locator.ServiceLocator

public class ServiceLocator
extends Object

JNDI 서비스에 등록된 Java 오브젝트들에 대한 Look-Up 절차를 간단하고 쉽게 할 수 있도록 하며, Look-Up된 오브젝트들의 변환 등에 필요한 기능을 제공한다.

Since:
3.0
Version:
$Revision: 1.1 $ $Date: 2006/09/26 08:20:17 $
Author:
김광영

Field Summary
protected  InitialContext ic
           JNDI 서비스 엑세스를 위한 InitialContext 오브젝트
protected static String LIVE_DEFAULT_JNDI
           디폴트 JNDI 서비스를 위한 ServiceLocator 오브젝트 식별자
 
Constructor Summary
protected ServiceLocator()
           디폴트 JNDI 서비스를 위한 ServiceLocator 오브젝트 컨스트럭터
protected ServiceLocator(Properties props)
           props 인자에 들어 있는 Property 정보를 통하여 엑세스되는 JNDI 서비스를 위한 ServiceLocator 오브젝트 컨스트럭터
 
Method Summary
 DataSource getDataSource(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 DataSource 오브젝트를 Look-Up하여 리턴한다.
 javax.ejb.EJBHome getEJBHome(String id)
           String으로 변환된 HomeHandle 오브젝트에 해당하는 EJBHome 오브젝트를 구하여 리턴한다.
 javax.ejb.EJBObject getEJBObject(String id)
           String으로 변환된 Handle 오브젝트에 해당하는 EJBObject 오브젝트를 구하여 리턴한다.
 boolean getEnvBoolean(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Boolean 오브젝트를 Look-Up하여 리턴한다.
 byte getEnvByte(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Byte 오브젝트를 Look-Up하여 리턴한다.
 char getEnvCharacter(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Character 오브젝트를 Look-Up하여 리턴한다.
 double getEnvDouble(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Double 오브젝트를 Look-Up하여 리턴한다.
 float getEnvFloat(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Float 오브젝트를 Look-Up하여 리턴한다.
 int getEnvInteger(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Integer 오브젝트를 Look-Up하여 리턴한다.
 long getEnvLong(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Long 오브젝트를 Look-Up하여 리턴한다.
 short getEnvShort(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Short 오브젝트를 Look-Up하여 리턴한다.
 String getEnvString(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 String 오브젝트를 Look-Up하여 리턴한다.
 String getHomeID(javax.ejb.EJBHome obj)
           obj 인자가 나타내는 EJBHome 오브젝트의 HomeHandle 오브젝트를 구한 뒤, 이를 String으로 변환하여 리턴한다.
 String getID(javax.ejb.EJBObject obj)
           obj 인자가 나타내는 EJBObject 오브젝트의 Handle 오브젝트를 구한 뒤, 이를 String으로 변환하여 리턴한다.
 javax.ejb.EJBLocalHome getLocalHome(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 EJBLocalHome 오브젝트를 Look-Up하여 리턴한다.
 Object getObject(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 오브젝트를 Look-Up하여 리턴한다.
 javax.jms.Queue getQueue(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Queue 오브젝트를 Look-Up하여 리턴한다.
 javax.jms.QueueConnectionFactory getQueueConnectionFactory(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 QueueConnectionFactory 오브젝트를 Look-Up하여 리턴한다.
 javax.ejb.EJBHome getRemoteHome(Class<?> clazz)
           JNDI 서비스로부터 참조명이 clazz 인자에 getName() 메소드를 호출하여 리턴되는 값을 갖는 EJBHome 오브젝트를 Look-Up하여 리턴한다.
 javax.ejb.EJBHome getRemoteHome(String name, Class<?> clazz)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 EJBHome 오브젝트를 Look-Up하여 리턴한다.
static ServiceLocator getServiceLocator()
           디폴트 JNDI 서비스를 위한 ServiceLocator 오브젝트를 리턴한다.
static ServiceLocator getServiceLocator(Properties props)
           jndi 인자에 의해 식별되는 ServiceLocator 오브젝트가 Cache에 있으면 그것을 리턴하고, 없으면 새로 생성하여 Cache에 저장한 후 리턴한다.
static ServiceLocator getServiceLocator(String jndi, Properties props)
          Deprecated. Use getServiceLocator(Properties) Method.
 javax.jms.Topic getTopic(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Topic 오브젝트를 Look-Up하여 리턴한다.
 javax.jms.TopicConnectionFactory getTopicConnectionFactory(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 TopicConnectionFactory 오브젝트를 Look-Up하여 리턴한다.
 URL getURL(String name)
           JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 URL 오브젝트를 Look-Up하여 리턴한다.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LIVE_DEFAULT_JNDI

protected static final String LIVE_DEFAULT_JNDI

디폴트 JNDI 서비스를 위한 ServiceLocator 오브젝트 식별자

See Also:
Constant Field Values

ic

protected InitialContext ic

JNDI 서비스 엑세스를 위한 InitialContext 오브젝트

Constructor Detail

ServiceLocator

protected ServiceLocator()
                  throws ServiceLocatorException

디폴트 JNDI 서비스를 위한 ServiceLocator 오브젝트 컨스트럭터

Throws:
ServiceLocatorException - 디폴트 JNDI 서비스를 위한 InitialContext의 생성에서 Exception이 발생한 경우

ServiceLocator

protected ServiceLocator(Properties props)
                  throws ServiceLocatorException

props 인자에 들어 있는 Property 정보를 통하여 엑세스되는 JNDI 서비스를 위한 ServiceLocator 오브젝트 컨스트럭터

Parameters:
props - JNDI 서비스를 엑세스 하기 위한 Property 정보
Throws:
ServiceLocatorException - props 인자에 들어 있는 엑세스 정보에 해당하는 JNDI 서비스를 위한 InitialContext의 생성에서 Exception이 발생한 경우
Method Detail

getServiceLocator

public static ServiceLocator getServiceLocator()
                                        throws ServiceLocatorException

디폴트 JNDI 서비스를 위한 ServiceLocator 오브젝트를 리턴한다.

Throws:
ServiceLocatorException - 디폴트 JNDI 서비스를 위한 InitialContext의 생성에서 Exception이 발생한 경우

getServiceLocator

@Deprecated
public static ServiceLocator getServiceLocator(String jndi,
                                                          Properties props)
                                        throws ServiceLocatorException
Deprecated. Use getServiceLocator(Properties) Method.

jndi 인자에 의해 식별되는 ServiceLocator 오브젝트가 Cache에 있으면 그것을 리턴하고, 없으면 새로 생성하여 Cache에 저장한 후 리턴한다.

Parameters:
jndi - Cache된 ServiceLocator 오브젝트를 구분하기 위한 식별자
props - 새로 생성될 ServiceLocator 오브젝트에 해당하는 JNDI 서비스에 대한 엑세스 정보
Returns:
Cache에 저장되어 있거나 또는 새로 생성된 ServiceLocator 오브젝트
Throws:
ServiceLocatorException - props 인자에 들어 있는 엑세스 정보에 해당하는 JNDI 서비스를 위한 InitialContext의 생성에서 Exception이 발생한 경우

getServiceLocator

public static ServiceLocator getServiceLocator(Properties props)
                                        throws ServiceLocatorException

jndi 인자에 의해 식별되는 ServiceLocator 오브젝트가 Cache에 있으면 그것을 리턴하고, 없으면 새로 생성하여 Cache에 저장한 후 리턴한다.

Parameters:
props - 새로 생성될 ServiceLocator 오브젝트에 해당하는 JNDI 서비스에 대한 엑세스 정보
Returns:
새로 생성된 ServiceLocator 오브젝트
Throws:
ServiceLocatorException - props 인자에 들어 있는 엑세스 정보에 해당하는 JNDI 서비스를 위한 InitialContext의 생성에서 Exception이 발생한 경우

getObject

public Object getObject(String name)
                 throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - JNDI 서비스로부터 Look-Up하여 얻고자 하는 오브젝트의 참조명
Returns:
JNDI 서비스로부터 Look-Up된 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvByte

public byte getEnvByte(String name)
                throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Byte 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Byte 오브젝트의 참조명
Returns:
Look-Up된 Byte 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Byte 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvInteger

public int getEnvInteger(String name)
                  throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Integer 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Integer 오브젝트의 참조명
Returns:
Look-Up된 Integer 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Integer 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvShort

public short getEnvShort(String name)
                  throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Short 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Short 오브젝트의 참조명
Returns:
Look-Up된 Short 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Short 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvLong

public long getEnvLong(String name)
                throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Long 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Long 오브젝트의 참조명
Returns:
Look-Up된 Long 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Long 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvFloat

public float getEnvFloat(String name)
                  throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Float 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Float 오브젝트의 참조명
Returns:
Look-Up된 Float 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Float 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvDouble

public double getEnvDouble(String name)
                    throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Double 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Double 오브젝트의 참조명
Returns:
Look-Up된 Double 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Double 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvString

public String getEnvString(String name)
                    throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 String 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 String 오브젝트의 참조명
Returns:
Look-Up된 String 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 String 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvCharacter

public char getEnvCharacter(String name)
                     throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Character 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Character 오브젝트의 참조명
Returns:
Look-Up된 Character 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Character 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getEnvBoolean

public boolean getEnvBoolean(String name)
                      throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Boolean 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Boolean 오브젝트의 참조명
Returns:
Look-Up된 Boolean 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Boolean 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getLocalHome

public javax.ejb.EJBLocalHome getLocalHome(String name)
                                    throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 EJBLocalHome 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 EJBLocalHome 오브젝트의 참조명
Returns:
Look-Up된 EJBLocalHome 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 EJBLocalHome 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getRemoteHome

public javax.ejb.EJBHome getRemoteHome(String name,
                                       Class<?> clazz)
                                throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 EJBHome 오브젝트를 Look-Up하여 리턴한다. 인자가 null인 경우에는, clazz 인자에 getName() 메소드를 호출하여 리턴되는 값을 사용한다.

Parameters:
name - Look-Up하고자 하는 EJBHome 오브젝트의 참조명
clazz - Look-Up 하고자 하는 EJBHome 오브젝트의 Class 오브젝트
Returns:
Look-Up된 EJBHome 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 EJBHome 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우; clazz인자가 null인 경우; Look-Up된 오브젝트가 clazz 인자가 나타내는 Class로 타입 캐스팅 할 수 없는 경우

getRemoteHome

public javax.ejb.EJBHome getRemoteHome(Class<?> clazz)
                                throws ServiceLocatorException

JNDI 서비스로부터 참조명이 clazz 인자에 getName() 메소드를 호출하여 리턴되는 값을 갖는 EJBHome 오브젝트를 Look-Up하여 리턴한다.

getRemoteHome(null, clazz)를 호출하여 기능을 수행한다.

Parameters:
clazz - Look-Up 하고자 하는 EJBHome 오브젝트의 Class 오브젝트
Returns:
Look-Up된 EJBHome 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 EJBHome 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우; clazz인자가 null인 경우; Look-Up된 오브젝트가 clazz 인자가 나타내는 Class로 타입 캐스팅 할 수 없는 경우

getHomeID

public String getHomeID(javax.ejb.EJBHome obj)
                 throws ServiceLocatorException

obj 인자가 나타내는 EJBHome 오브젝트의 HomeHandle 오브젝트를 구한 뒤, 이를 String으로 변환하여 리턴한다.

Parameters:
obj - HomeHandle을 얻고자 하는 EJBHome 오브젝트
Returns:
ojbHomeHandle 오브젝트를 String으로 변환한 값
Throws:
ServiceLocatorException - HomeHandle을 구할 때 Exception이 발생한 경우; HomeHandleString으로 변환할 때 I/O Exception이 발생한 경우

getID

public String getID(javax.ejb.EJBObject obj)
             throws ServiceLocatorException

obj 인자가 나타내는 EJBObject 오브젝트의 Handle 오브젝트를 구한 뒤, 이를 String으로 변환하여 리턴한다.

Parameters:
obj - HomeHandle을 얻고자 하는 EJBObject 오브젝트
Returns:
ojbHandle 오브젝트를 String으로 변환한 값
Throws:
ServiceLocatorException - Handle을 구할 때 Exception이 발생한 경우; HandleString으로 변환할 때 I/O Exception이 발생한 경우

getEJBHome

public javax.ejb.EJBHome getEJBHome(String id)
                             throws ServiceLocatorException

String으로 변환된 HomeHandle 오브젝트에 해당하는 EJBHome 오브젝트를 구하여 리턴한다.

Parameters:
id - 구하고자 하는 EJBHome 오브젝트의 HomeHandle 오브젝트가 String으로 변환된 값
Returns:
id인자가 나타내는 EJBHome 오브젝트
Throws:
ServiceLocatorException - StringHomeHandle로 변환할 때 I/O Exception이 발생한 경우 ; HomeHandle 오브젝트로부터 EJBHome 오브젝트를 구할 때 Exception이 발생한 경우

getEJBObject

public javax.ejb.EJBObject getEJBObject(String id)
                                 throws ServiceLocatorException

String으로 변환된 Handle 오브젝트에 해당하는 EJBObject 오브젝트를 구하여 리턴한다.

Parameters:
id - 구하고자 하는 EJBObject 오브젝트의 Handle 오브젝트가 String으로 변환된 값
Returns:
id인자가 나타내는 EJBObject 오브젝트
Throws:
ServiceLocatorException - StringHandle로 변환할 때 I/O Exception이 발생한 경우 ; Handle 오브젝트로부터 EJBObject 오브젝트를 구할 때 Exception이 발생한 경우

getDataSource

public DataSource getDataSource(String name)
                         throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 DataSource 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 DataSource 오브젝트의 참조명
Returns:
Look-Up된 DataSource 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 DataSource 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getTopicConnectionFactory

public javax.jms.TopicConnectionFactory getTopicConnectionFactory(String name)
                                                           throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 TopicConnectionFactory 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 TopicConnectionFactory 오브젝트의 참조명
Returns:
Look-Up된 TopicConnectionFactory 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 TopicConnectionFactory 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getQueueConnectionFactory

public javax.jms.QueueConnectionFactory getQueueConnectionFactory(String name)
                                                           throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 QueueConnectionFactory 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 QueueConnectionFactory 오브젝트의 참조명
Returns:
Look-Up된 QueueConnectionFactory 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 QueueConnectionFactory 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getURL

public URL getURL(String name)
           throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 URL 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 URL 오브젝트의 참조명
Returns:
Look-Up된 URL 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 URL 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getQueue

public javax.jms.Queue getQueue(String name)
                         throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Queue 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Queue 오브젝트의 참조명
Returns:
Look-Up된 Queue 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Queue 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;

getTopic

public javax.jms.Topic getTopic(String name)
                         throws ServiceLocatorException

JNDI 서비스로부터 참조명이 name 인자의 값을 갖는 Topic 오브젝트를 Look-Up하여 리턴한다.

Parameters:
name - Look-Up하고자 하는 Topic 오브젝트의 참조명
Returns:
Look-Up된 Topic 오브젝트
Throws:
ServiceLocatorException - 참조명이 name 인자의 값을 갖는 Topic 오브젝트가 JNDI 서비스에 등록되어 있지 않은 경우;


Copyright © 2014. All Rights Reserved.