//------------------------------------------------------------------------------
// <copyright file="Constant.java" company="Microsoft">
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// </copyright>
// <summary>
//      Global constants
// </summary>
//------------------------------------------------------------------------------

package com.microsoft.hpc.scheduler.session.internal;

/**
 * The Constant variables
 */
public class Constant
{
    /**
    * SOAP Action of broker's EOM message
    */
    final public static String EndRequestsAction = "http://hpc.microsoft.com/EndOfGetResponse";

    /**
    * Element name of user data SOAP header
    */
    final public static String UserDataHeaderName = "HPCServer2008_Broker_UserDataNS";

    /**
    * Element name of user data SOAP header
    */
    final public static String ClientIdHeaderName = "HPCServer2008_Broker_ClientIdNS";

    /**
     * Element name of request action SOAP Header
     */
    final public static String ActionHeaderName = "HPCServer2008_Broker_RequestActionNS";
    
    /**
    * Namespace of user data SOAP header
    */
    final public static String HpcHeaderNS = "http://www.microsoft.com/hpc";

    /**
    * Element name of client callback ID header
    */
    final public static String ResponseCallbackIdHeaderName = "HPCServer2008_Broker_ResponseCallbackId";

    /**
    * Namespace name of client callback ID header
    */
    final public static String ResponseCallbackIdHeaderNS = HpcHeaderNS;

    /**
    * Maximum length of user data SOAP header
    */
    final public static int MaxUserDataLen = 1024;

    /**
    * Maximum size of message 
    * TODO: Need to pull from current binding
    */
    final public static int MaxBufferSize = 200 * 1024;

    /**
    * Default EOM timeout is 60 sec
    */
    final public static int EOMTimeoutMS = 60 * 1000;

    /**
    * Default Purge timeout is 10 sec
    */
    final public static int PurgeTimeoutMS = 10 * 1000;

    /**
    * Min WCF operation timeout
    */
    final public static int MinOperationTimeout = 60 * 1000;

    /**
    * Request all responses
    */
    final public static int GetResponse_All = -1;

    /**
    * Stores session launcher port
    */
    final public static int SessionLauncherPort = 9090;
}
