private T getAttributeValue <T>(string name)
        {
            Attribute attr = AmazonSQSUtil.FindAttribute(this.Attribute, SQSConstants.ATTRIBUTE_VISIBILITY_TIMEOUT);

            if (attr == null)
            {
                return(default(T));
            }
            return((T)Convert.ChangeType(attr.Value, typeof(T)));
        }
예제 #2
0
        private void setAttributeValue(string name, object value)
        {
            Attribute attr = AmazonSQSUtil.FindAttribute(this.Attribute, name);

            if (attr == null)
            {
                Attribute newAttr = new Attribute()
                                    .WithName(name)
                                    .WithValue(value.ToString());
                this.Attribute.Add(newAttr);
            }
            else
            {
                attr.Value = value.ToString();
            }
        }
예제 #3
0
파일: Queue.cs 프로젝트: Wrath7/testrepo
        private QueueResult SetVisibilityAttribute(int visibilityTimeout)
        {
            Amazon.SQS.Model.SetQueueAttributes request = new Amazon.SQS.Model.SetQueueAttributes();
            Amazon.SQS.Model.SetQueueAttributesResponse response = null;
            QueueResult result = new QueueResult();

            try
            {
                request.QueueName = _queueName;

                Amazon.SQS.Model.Attribute visibilityAttribute = new Amazon.SQS.Model.Attribute();
                visibilityAttribute.Name = "VisibilityTimeout";
                visibilityAttribute.Value = visibilityTimeout.ToString();
                request.Attribute.Add(visibilityAttribute);

                response = _client.SetQueueAttributes(request);
                result.Success = true;
            }
            catch (Amazon.SQS.AmazonSQSException e)
            {
                result.isError = true;
                result.Exception = e;
                result.ErrorMessage = e.Message;
                result.ErrorType = QueueResult.GazaroASQSErrorType.Amazon;
            }
            catch (Exception e)
            {
                result.isError = true;
                result.Exception = e;
                result.ErrorMessage = e.Message;
                result.ErrorType = QueueResult.GazaroASQSErrorType.dotNet;
            }

            return result;
        }