Amazon.S3.Util.S3PostUploadSignedPolicy.addTokenToPolicy C# (CSharp) Method

addTokenToPolicy() private static method

private static addTokenToPolicy ( string policy, string token ) : byte[]
policy string
token string
return byte[]
        private static byte[] addTokenToPolicy(string policy, string token)
        {
            var json = JsonMapper.ToObject(new JsonReader(policy));
            var found = false;
            var conditions = json["conditions"];
            if (conditions != null && conditions.IsArray)
            {
                for (int i = 0; i < conditions.Count; i++)
                {
                    JsonData cond = conditions[i];
                    if (cond.IsObject && cond[S3Constants.PostFormDataSecurityToken] != null)
                    {
                        cond[S3Constants.PostFormDataSecurityToken] = token;
                        found = true;
                    }
                }

                if (!found)
                {
                    var tokenCondition = new JsonData();
                    tokenCondition.SetJsonType(JsonType.Object);
                    tokenCondition[S3Constants.PostFormDataSecurityToken] = token;
                    conditions.Add(tokenCondition);
                }
            }

            return Encoding.UTF8.GetBytes(JsonMapper.ToJson(json).Trim());
        }