JavaTM Platform
Standard Ed. 6

java.util.logging
클래스 StreamHandler

java.lang.Object 
  상위를 확장 java.util.logging.Handler 
      상위를 확장 java.util.logging.StreamHandler
직계의 기존의 서브 클래스:
ConsoleHandler , FileHandler , SocketHandler


public class StreamHandler
extends Handler

스트림에 근거하는 로그 Handler 입니다.  

이것은, 주로 다른 로그 Handlers 의 구현에 사용되는 base class 또는 지원 클래스로서 사용됩니다.  

LogRecord 는 지정된 java.io.OutputStream 에 통지됩니다.  

구성:StreamHandler 는 디폴트로, 다음의 LogManager 구성 프로퍼티을 사용해 초기화됩니다. 프로퍼티이 지정되지 않은 경우 (또는 무효인 값을 가지는 경우), 지정된 디폴트 값가 사용됩니다.

도입된 버젼:
1.4

생성자 의 개요
StreamHandler ()
          현재의 출력 스트림을 가지지 않는 StreamHandler 를 작성합니다.
StreamHandler (OutputStream  out, Formatter  formatter)
          지정된 Formatter 와 출력 스트림을 가지는 StreamHandler 를 작성합니다.
 
메소드의 개요
 void close ()
          현재의 출력 스트림을 닫습니다.
 void flush ()
          모든 버퍼 된 메세지를 플래시 합니다.
 boolean isLoggable (LogRecord  record)
          이 Handler 가, 지정된 LogRecord 의 로그를 실제로 취할지 어떨지를 조사합니다.
 void publish (LogRecord  record)
          LogRecord 를 포맷 해 발행합니다.
 void setEncoding (String  encoding)
          이 Handler 가 사용하는 문자 인코딩을 설정 또는 변경합니다.
protected  void setOutputStream (OutputStream  out)
          출력 스트림을 변경합니다.
 
클래스 java.util.logging. Handler 로부터 상속된 메소드
getEncoding , getErrorManager , getFilter , getFormatter , getLevel , reportError , setErrorManager , setFilter , setFormatter , setLevel
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

StreamHandler

public StreamHandler()
현재의 출력 스트림을 가지지 않는 StreamHandler 를 작성합니다.


StreamHandler

public StreamHandler(OutputStream  out,
                     Formatter  formatter)
지정된 Formatter 와 출력 스트림을 가지는 StreamHandler 를 작성합니다.  

파라미터:
out - 타겟 출력 스트림
formatter - 출력의 포맷에 사용되는 Formatter
메소드의 상세

setOutputStream

protected void setOutputStream(OutputStream  out)
                        throws SecurityException 
출력 스트림을 변경합니다.  

현재의 출력 스트림이 존재하는 경우,Formatter 의 말미 캐릭터 라인이 기입해져 스트림이 플래시 및 클로즈 됩니다. 다음에, 그 출력 스트림이 새로운 출력 스트림로 옮겨놓을 수 있습니다.

파라미터:
out - 새로운 출력 스트림. null 는 불가
예외:
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우

setEncoding

public void setEncoding(String  encoding)
                 throws SecurityException ,
                        UnsupportedEncodingException 
Handler 가 사용하는 문자 인코딩을 설정 또는 변경합니다.  

인코딩은,LogRecordHandler 에 기입해지기 전으로 설정할 필요가 있습니다.

오버라이드(override):
클래스 Handler 내의 setEncoding
파라미터:
encoding - 지원되는 문자 인코딩의 이름. null 도 가능. 이것은 디폴트의 플랫폼 인코딩을 나타낸다
예외:
SecurityException - 시큐리티 매니저가 존재해, 호출원이 LoggingPermission("control")) 를 가지지 않는 경우
UnsupportedEncodingException - 지정된 문자 인코딩이 지원되어 있지 않은 경우

publish

public void publish(LogRecord  record)
LogRecord 를 포맷 해 발행합니다.  

StreamHandler 는 우선,OutputStream 가 존재할지 어떨지라고 지정된 LogRecord 의 레벨이 요구되는 로그 레벨 이상인가 어떤가를 체크합니다. 그렇지 않은 경우, 이것은 아무 통지도 없게 돌아옵니다. 그런 경우, 이것은, 관련지을 수 있었던 임의의 Filter 를 호출하는 것으로, 그 레코드를 발행해야할 것인가 제발을 체크합니다. 그런 경우,Formatter 를 호출해 레코드를 포맷 해, 결과를 현재의 출력 스트림에 기입합니다.  

이것이 지정된 OutputStream 에 기입해지는 최초의 LogRecord 의 경우,LogRecord 가 기입해지기 전에 Formatter 의 「선두」의 캐릭터 라인이 스트림에 기입해집니다.

정의:
클래스 Handler 내의 publish
파라미터:
record - 로그 이벤트의 설명. null 레코드는 아무 통지도 없게 무시되어 발행되지 않는다

isLoggable

public boolean isLoggable(LogRecord  record)
Handler 가, 지정된 LogRecord 의 로그를 실제로 취할지 어떨지를 조사합니다.  

이 메소드는,LogRecord 의 레벨이 적절한가 어떤가 및 그 레코드가 임의의 Filter 를 만족할지 어떨지를 체크합니다. 이것은, 출력 스트림이 아직 할당할 수 있지 않은지, LogRecord 가 null 인 경우도, false 를 돌려줍니다.  

오버라이드(override):
클래스 Handler 내의 isLoggable
파라미터:
record - LogRecord
반환값:
LogRecord 가 로그를 빼앗기는 경우는 true

flush

public void flush()
모든 버퍼 된 메세지를 플래시 합니다.

정의:
클래스 Handler 내의 flush

close

public void close()
           throws SecurityException 
현재의 출력 스트림을 닫습니다.  

스트림이 닫혀지기 전에,Formatter 의 「말미」캐릭터 라인이 스트림에 기입해집니다. 게다가Formatter 의 「선두」캐릭터 라인이 스트림에 아직 기입해지지 않은 경우는, 그것이 「말미」캐릭터 라인의 전에 기입해집니다.

정의:
클래스 Handler 내의 close
예외:
SecurityException - 시큐리티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우
SecurityException - 시큐리티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.