Exemple #1
0
        /// <summary>
        /// Creates a Cyan client for development storage ONLY.
        /// </summary>
        /// <param name="useDevelopmentStorage">Must be set to <code>true</code>.</param>
        public CyanClient(bool useDevelopmentStorage)
        {
            if (!useDevelopmentStorage)
                throw new ArgumentException("Use this constructor for development storage.");

            RestClient = new CyanRest(DevelopmentStorageAccount, DevelopmentStorageSecret);
        }
Exemple #2
0
            public void Write(EGTRequestStream requestStream, CyanRest restClient, string contentId)
            {
                byte[] contentBytes = null;
                if (entity != null)
                {
                    var content = entity.Serialize();
                    contentBytes = Encoding.UTF8.GetBytes(content.ToString());
                }

                var finalHeaders = new List<Tuple<string, string>>();
                finalHeaders.Add(Tuple.Create("Content-ID", contentId));
                if (contentBytes != null && contentBytes.Length > 0)
                {
                    finalHeaders.Add(Tuple.Create("Content-Type", "application/atom+xml;type=entry"));
                    finalHeaders.Add(Tuple.Create("Content-Length", contentBytes.Length.ToString()));
                }

                if (headers != null)
                    finalHeaders.AddRange(headers);

                // write status line
                requestStream.WriteLine("{0} {1} {2}", method, restClient.FormatUrl(resource), "HTTP/1.1");

                // write headers
                foreach (var header in finalHeaders)
                    requestStream.WriteHeader(header.Item1, header.Item2);
                requestStream.WriteLine();

                // write content
                if (contentBytes != null)
                {
                    requestStream.Write(contentBytes, 0, contentBytes.Length);
                    requestStream.WriteLine();
                }
            }
Exemple #3
0
 /// <summary>
 /// Creates a Cyan client for Azure Table service (the real thing).
 /// </summary>
 /// <param name="accountName">The Azure storage account name.</param>
 /// <param name="accountSecret">The Azure storage account secret.</param>
 /// <param name="useSsl"></param>
 /// <param name="commonRetryPolicy">The retry policy that will be used by default for all operations.</param>
 public CyanClient(string accountName, string accountSecret, bool useSsl = false,
     CyanRetryPolicy commonRetryPolicy = null)
 {
     RestClient = new CyanRest(accountName, accountSecret, useSsl, commonRetryPolicy);
 }
Exemple #4
0
 public CyanTable(string tableName, CyanClient client)
 {
     this.TableName = tableName;
     this.restClient = client.restClient;
 }