Ejemplo n.º 1
0
 public Client(Configuration config)
 {
     Configuration = config;
     if (config.IsValidConfiguration)
     {
         IsInitialized = true;
         Transaction = new Transaction(Configuration);
         Vault = new Vault(Configuration);
     }
 }
Ejemplo n.º 2
0
        internal static string DoRequest(Configuration config, string URL, string data = "")
        {
            WebRequest request = WebRequest.Create(URL);
            request.Method = "POST";
            request.ContentType = "application/x-www-form-urlencoded";

            Stream reqStream = request.GetRequestStream();
            byte[] reqData = UTF8Encoding.UTF8.GetBytes("request=" + WebUtility.UrlEncode(data));
            reqStream.Write(reqData, 0, reqData.Length);
            reqStream.Close();

            WebResponse response = request.GetResponse();
            Stream respStream = response.GetResponseStream();

            StreamReader reader = new StreamReader(respStream);
            string result = reader.ReadToEnd();

            reqStream.Dispose();
            respStream.Dispose();
            reader.Dispose();

            return result;
        }
Ejemplo n.º 3
0
 public static string GetVaultEnvelope(Configuration config, Vault.RequestType reqType, string GUID, string VaultID)
 {
     string req = String.Format(
         VaultRequestSkeleton,
         config.ApplicationID,
         config.LanguageID,
         config.MerchantID,
         config.MerchantKEY,
         reqType.ToString(),
         GUID,
         VaultID
     );
     return GetEnvelope(config, req);
 }
Ejemplo n.º 4
0
 public static TransactionResult GetTransactionResult(Configuration config, string resp)
 {
     if (IsEncrypted(UTF8Encoding.UTF8.GetBytes(resp)))
     {
         return new TransactionResult(OpenEnvelope(config, resp));
     }
     else
     {
         return new TransactionResult(resp);
     }
 }
Ejemplo n.º 5
0
 private static string OpenEnvelope(Configuration config, string resp)
 {
     string url = "https://www.sageexchange.com/" + config.appUrl + "/frmOpenEnvelope.aspx";
     resp = XmlUtil.RemoveBOM(UTF8Encoding.UTF8.GetBytes(resp));
     return Http.DoRequest(config, url, resp);
 }
Ejemplo n.º 6
0
 private static string GetEnvelope(Configuration config, string req)
 {
     string url = "https://www.sageexchange.com/" + config.appUrl + "/frmEnvelope.aspx";
     return Http.DoRequest(config, url, req);
 }
Ejemplo n.º 7
0
 public static VaultRecord GetVaultRecord(Configuration config, string resp)
 {
     if (IsEncrypted(UTF8Encoding.UTF8.GetBytes(resp)))
     {
         return new VaultRecord(OpenEnvelope(config, resp));
     }
     else
     {
         return new VaultRecord(resp);
     }
 }
Ejemplo n.º 8
0
 internal Vault(Configuration configuration)
 {
     this.configuration = configuration;
 }
Ejemplo n.º 9
0
 internal Transaction(Configuration configuration)
 {
     this.config = configuration;
     this.paymentUrl = "https://www.sageexchange.com/" + config.appUrl + "/frmPayment.aspx";
 }