kr.co.hit.live.resources
Interface Resources

All Superinterfaces:
Serializable
All Known Implementing Classes:
CollectionResourcesBase, DatabaseResources, PropertyResources, ResourceBundleResources, ResourcesBase, XMLResources

public interface Resources
extends Serializable

국제화된 리소스들에 대한 추상적 표현으로, 이 리소스들은 고유한 문자열 key에 의해 식별되는 임의의 오브젝트이다.

로케일(Locale)과 타임존(TimeZone)파라미터(선택)를 기반으로 로컬화된 버전의 자원은 다양한 형식으로 조회될 수 있다.

부적절한 key값을 사용하는 경우, 리소스의 getter 메소드는 해당 Resources 인스턴스의 returnNull 속성의 설정값을 기반으로 상이하게 동작한다.

만일 속성 값이 true인 경우, getter 메소드는 null을 리턴한다. (이 경우, null이라는 값이 리소스의 정상적인 값에 속한다면 모호해질 수 있다.) 만일 속성 값이 false인 경우, ResourcesKeyException이 throw 된다.

Resources 인터페이스의 각기 다른 구현(implementation)은 key에 의해 식별(represent)되는 데이터 컨텐트를 획득하기 위해 다양한 메커니즘을 지원한다. (예: 프로퍼티 파일, XML 파일, 데이터베이스, 웹 애플리케이션 리소스, 또는 다른 특화된 접근법)

Resources 인터페이스의 각기 다른 구현은 로컬화를 수행하기위해 필요한 localetimeZone 속성의 사용을 위해 서로 다른 의미론(semantic)을 적용할 수 있다. 구체적인 구현을 위해서는 특정 Resources 구현을 위한 문서를 참고하라.

개발자들이 Resources를 구현하기위해서 ResourcesBase 클래스를 상속받아 정의하고, 해당 인터페이스에서 발생할 수 있는 변화에 대한 영향을 최소화하기 위해 필요한 메소드는 오버라이드(override)하여 정의한다.

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

Field Summary
static String LAST_MODIFIED_KEY
           
 
Method Summary
 void destroy()
           해당 리소스가 더이상 필요하지 않은 경우, 리소스 관리자에 의해 호출된다.
 byte[] getBytes(String key, Locale locale, TimeZone timeZone)
           명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 바이트 배열 형식으로 리턴한다.
 InputStream getInputStream(String key, Locale locale, TimeZone timeZone)
           명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 InputStream 으로 리턴한다.
 Iterator<Object> getKeys()
           해당 Resources 인스턴스에 정의된 키들을 Iterator로 리턴한다.
 String getName()
           해당 Resources 인스턴스의 논리적인 이름을 리턴한다.
 Object getObject(String key, Locale locale, TimeZone timeZone)
           명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 Object 로 리턴한다.
 Reader getReader(String key, Locale locale, TimeZone timeZone)
           명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 Reader 로 리턴한다.
 String getString(String key, Locale locale, TimeZone timeZone)
           명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 String으로 리턴한다.
 void init()
           getXxx() 메소드가 호출되기 전, 해당 Resources 인스턴스의 데이터를 초기화시키기 위해 호출된다.
 boolean isReturnNull()
           리소스의 getter 메소드가 부적절한 키 값에 대해 Exception을 throw하지 않고 null을 리턴하는 경우, true를 리턴한다.
 long lastModified()
           
 long lastModified(Locale locale)
          해당 리소스가 마지막에 수정된 시간을 반환한다.
 void setReturnNull(boolean returnNull)
           리소스의 getter 메소드가 부적절한 키 값에 대해 exception을 throw하는 대신에 null을 리턴할지 여부를 정의하는 플래그를 설정한다.
 

Field Detail

LAST_MODIFIED_KEY

static final String LAST_MODIFIED_KEY
See Also:
Constant Field Values
Method Detail

init

void init()
          throws ResourcesException

getXxx() 메소드가 호출되기 전, 해당 Resources 인스턴스의 데이터를 초기화시키기 위해 호출된다.

Throws:
ResourcesException - 초기화 과정에서 에러가 발생하는 경우

destroy

void destroy()
             throws ResourcesException

해당 리소스가 더이상 필요하지 않은 경우, 리소스 관리자에 의해 호출된다. 이 메소드가 호출된 이후에는 해당 리소스의 getXxx()메소드를 호출할 수 없다.

Throws:
ResourcesException - finalization과정에서 에러가 발생한 경우

getKeys

Iterator<Object> getKeys()

해당 Resources 인스턴스에 정의된 키들을 Iterator로 리턴한다.


getName

String getName()

해당 Resources 인스턴스의 논리적인 이름을 리턴한다.


isReturnNull

boolean isReturnNull()

리소스의 getter 메소드가 부적절한 키 값에 대해 Exception을 throw하지 않고 null을 리턴하는 경우, true를 리턴한다.


setReturnNull

void setReturnNull(boolean returnNull)

리소스의 getter 메소드가 부적절한 키 값에 대해 exception을 throw하는 대신에 null을 리턴할지 여부를 정의하는 플래그를 설정한다.

Parameters:
returnNull - 새로운 플래그 값

getBytes

byte[] getBytes(String key,
                Locale locale,
                TimeZone timeZone)

명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 바이트 배열 형식으로 리턴한다.

Parameters:
key - 요청한 내용에 대한 식별자
locale - 리소스의 내용을 로컬화하여 조회하기 위한 로케일. 기본 로케일인 경우 null
timeZone - 리소스의 내용을 로컬화하여 조회하기 위한 위한 타임존. 기본 타임존인 경우 null
Throws:
ResourcesException - 요청한 내용을 조회하거나 리턴할때 에러가 발생하는 경우
ResourcesKeyException - 명시된 키에 대한 값이 없고 isReturnNull()false를 리턴하는 경우

getInputStream

InputStream getInputStream(String key,
                           Locale locale,
                           TimeZone timeZone)

명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 InputStream 으로 리턴한다.

Parameters:
key - 요청한 내용에 대한 식별자
locale - 리소스의 내용을 로컬화하여 조회하기 위한 로케일. 기본 로케일인 경우 null
timeZone - 리소스의 내용을 로컬화하여 조회하기 위한 타임존. 기본 타임존인 경우 null
Throws:
ResourcesException - 요청한 내용을 조회하거나 리턴할때 에러가 발생하는 경우
ResourcesKeyException - 명시된 키에 대한 값이 없고 isReturnNull()false를 리턴하는 경우

getObject

Object getObject(String key,
                 Locale locale,
                 TimeZone timeZone)

명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 Object 로 리턴한다.

Parameters:
key - 요청한 내용에 대한 식별자
locale - 리소스의 내용을 로컬화하여 조회하기 위한 로케일. 기본 로케일인 경우 null
timeZone - 리소스의 내용을 로컬화하여 조회하기 위한 타임존. 기본 타임존인 경우 null
Throws:
ResourcesException - 요청한 내용을 조회하거나 리턴할때 에러가 발생하는 경우
ResourcesKeyException - 명시된 키에 대한 값이 없고 isReturnNull()false를 리턴하는 경우

getReader

Reader getReader(String key,
                 Locale locale,
                 TimeZone timeZone)

명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 Reader 로 리턴한다.

Parameters:
key - 요청한 내용에 대한 식별자
locale - 리소스의 내용을 로컬화하여 조회하기 위한 로케일. 기본 로케일인 경우 null
timeZone - 리소스의 내용을 로컬화하여 조회하기 위한 타임존. 기본 타임존인 경우 null
Throws:
ResourcesException - 요청한 내용을 조회하거나 리턴할때 에러가 발생하는 경우
ResourcesKeyException - 명시된 키에 대한 값이 없고 isReturnNull()false를 리턴하는 경우

getString

String getString(String key,
                 Locale locale,
                 TimeZone timeZone)

명시된 locale과(혹은) timeZone의 내용을 토대로 key에 해당하는 내용을 로컬화(localize)하여 String으로 리턴한다.

Parameters:
key - 요청한 내용에 대한 식별자
locale - 리소스의 내용을 로컬화하여 조회하기 위한 로케일. 기본 로케일인 경우 null
timeZone - 리소스의 내용을 로컬화하여 조회하기 위한 타임존. 기본 타임존인 경우 null
Throws:
ResourcesException - 요청한 내용을 조회하거나 리턴할때 에러가 발생하는 경우
ResourcesKeyException - 명시된 키에 대한 값이 없고 isReturnNull()false를 리턴하는 경우

lastModified

long lastModified(Locale locale)
해당 리소스가 마지막에 수정된 시간을 반환한다.

Returns:

lastModified

long lastModified()


Copyright © 2014. All Rights Reserved.