/// <summary>
 /// Constructor sets defaults for most items so the system can run with minimal configuration.
 ///
 /// Default parameters
 ///     Record = false;
 ///     RecordPath = Globals.GetPath(Path.GetTempPath(), "recordings", "shippingApi");
 ///     RecordOverwrite = false;
 ///     Retries = 3;
 ///     UserAgent = "Pitney Bowes CSharp SDK 1.0";
 ///     ThrowExceptions = false;
 ///
 /// Configuration is set to use the dictionary in the session object
 ///     The configuration item "SANDBOX_ENDPOINT" is defined "https://api-sandbox.pitneybowes.com"
 ///     The configuration item "PRODUCTION_ENDPOINT" is defined "https://api-sandbox.pitneybowes.com"
 ///
 ///  Logging is disabled
 ///
 ///  API secret is retrieved from the "ApiSecret" config item
 ///
 /// </summary>
 public Session()
 {
     Record          = false;
     RecordPath      = Globals.GetPath(Path.GetTempPath(), "recordings", "shippingApi");
     RecordOverwrite = false;
     Retries         = 3;
     _configs.Add("SANDBOX_ENDPOINT", "https://api-sandbox.pitneybowes.com");
     _configs.Add("PRODUCTION_ENDPOINT", "https://api-sandbox.pitneybowes.com");
     ThrowExceptions = false;
     GetConfigItem   = (s) => {
         if (!_configs.ContainsKey(s))
         {
             throw new ArgumentException(string.Format("Config string {0} not found", s));
         }
         return(_configs[s]);
     };
     AddConfigItem         = (k, v) => { _configs.Add(k, v); };
     LogWarning            = (s) => { };
     LogError              = (s) => { };
     LogConfigError        = (s) => { };
     LogDebug              = (s) => { };
     GetApiSecret          = () => { return(new StringBuilder(GetConfigItem("ApiSecret"))); };
     SerializationRegistry = new SerializationRegistry();
     Counters              = new Dictionary <string, Counters>();
     _lock = new ReaderWriterLockSlim();
 }
Example #2
0
 /// <summary>
 /// Constructor sets defaults for most items so the system can run with minimal configuration.
 ///
 /// Default parameters
 ///     Record = false;
 ///     RecordPath = Globals.GetPath(Path.GetTempPath(), "recordings", "shippingApi");
 ///     RecordOverwrite = false;
 ///     Retries = 3;
 ///     UserAgent = "Pitney Bowes CSharp SDK 1.0";
 ///     ThrowExceptions = false;
 ///
 /// Configuration is set to use the dictionary in the session object
 ///     The configuration item "SANDBOX_ENDPOINT" is defined "https://api-sandbox.pitneybowes.com"
 ///     The configuration item "PRODUCTION_ENDPOINT" is defined "https://api-sandbox.pitneybowes.com"
 ///
 ///  Logging is disabled
 ///
 ///  API secret is retrieved from the "ApiSecret" config item
 ///
 /// </summary>
 public Session()
 {
     _configs.Add("SANDBOX_ENDPOINT", "https://api-sandbox.pitneybowes.com");
     _configs.Add("PRODUCTION_ENDPOINT", "https://api-sandbox.pitneybowes.com");
     GetConfigItem = (s) => {
         if (!_configs.ContainsKey(s))
         {
             throw new ArgumentException(string.Format("Config string {0} not found", s));
         }
         return(_configs[s]);
     };
     AddConfigItem         = (k, v) => { _configs.Add(k, v); };
     LogWarning            = (s) => { };
     LogError              = (s) => { };
     LogConfigError        = (s) => { };
     LogDebug              = (s) => { };
     GetApiSecret          = () => { return(new StringBuilder(GetConfigItem("ApiSecret"))); };
     SerializationRegistry = new SerializationRegistry();
     Counters              = new Dictionary <string, Counters>();
     _lock = new ReaderWriterLockSlim();
 }