package com.eactive.eai.common.routing; 

/** 
 * 1. 기능 : routing 패키지에서 사용하는 상수값들을 정의한 Interface Class
 * 2. 처리 개요 : 
 * *     - routing 패키지에서 사용하는 상수값들을 정의한 Interface Class
 * 3. 주의사항 
 *
 * @author  : 
 * @version : v 1.0.0
 * @see : 관련 기능을 참조
 * @since   : 
 *  : 
 */
public interface RouteKeys 
{ 
	/*
	 * REMOTE_CALL  EJB Call 을 위해서 필요한 값들
	 */
    public static final String REMOTE_CALL                     = "REMOTE_CALL";
    public static final String REMOTE_CALL_URL                 = "REMOTE_CALL_URL";
    public static final String REMOTE_CALL_USER                = "REMOTE_CALL_USER";
    public static final String REMOTE_CALL_PWD                 = "REMOTE_CALL_PWD";
    public static final String REMOTE_CALL_CONNECTION_TIMEOUT  = "REMOTE_CALL_CONNECTION_TIMEOUT";
    public static final String REMOTE_CALL_READ_TIMEOUT_ASYNC  = "REMOTE_CALL_READ_TIMEOUT_ASYNC";
    public static final String REMOTE_CALL_READ_TIMEOUT_SYNC   = "REMOTE_CALL_READ_TIMEOUT_SYNC";
    
    public static final String GROUP_NAME = "FlowRouter";
    
    public static final String ROUTING_CONNECTION_FACTORY      = "routing.connection.factory";
    public static final String ROUTING_QUEUE                   = "routing.queue";
    public static final String ROUTING_RESQUEUE                = "routing.resqueue"; 
    public static final String ROUTING_TOPIC                   = "routing.topic";
    public static final String ROUTING_TOPIC_TTL               = "routing.topic.ttl";
    public static final String ROUTING_BID_TOPIC               = "routing.bid.topic";
    public static final String ROUTING_BID_TOPIC_TTL           = "routing.bid.topic.ttl";
    public static final String ROUTING_TOPIC_ACKNOWLOGY	= "routing.topic.acknowlogy";// CLIENT, AUTO
    public static final String ROUTING_TOPIC_CLIENT_ACKNOWLOGED = "CLIENT";
    public static final String ROUTING_TOPIC_AUTO_ACKNOWLOGED = "AUTO";
    
    // RequestProcessor에서 FlowRouter로 전달하는 Routing 방식 정의
    public static final String ROUTING_TYPE    = "ROUTING_TYPE";
                                               
    public static final String ROUT_QUEUE      = "ROUT_QUEUE";
    public static final String ROUT_TOPIC      = "ROUT_TOPIC";
    public static final String ROUT_JPD        = "ROUT_JPD";
    public static final String ROUT_BID_TOPIC  = "ROUT_BID_TOPIC"; 
    
    // 동기-비동기의 응답메시지에 대한 TOPIC JMSCorrelationID
    public static final String TRACE_KEY = "TRACE_KEY";
    
    //시뮬레이터 prop 관련
    public static final String SIM = "SIM";
    public static final String SIM_ROUTING = "sim.routing";
    public static final String SIM_ADAPTER_SYNC  = "sim.adapter.sync";
    public static final String SIM_ADAPTER_ASYNC = "sim.adapter.async";
    
    
    // Process project 통합 관련 2018.05.14
    public static final String  PACKAGE_PATH = "com.eactive.eai.batch.";
    
} 
