public override IEnumerable <StateVariable> GetState()
 {
     return(new[] {
         new StateVariable
         {
             Name = "QueueName",
             Value = QueueName,
             Type = StateVariable.StateType.Input
         },
         new StateVariable
         {
             Name = "IsDurable",
             Value = IsDurable.ToString(),
             Type = StateVariable.StateType.Input
         },
         new StateVariable
         {
             Name = "IsExclusive",
             Value = IsExclusive.ToString(),
             Type = StateVariable.StateType.Input
         },
         new StateVariable
         {
             Name = "Message",
             Value = Message,
             Type = StateVariable.StateType.Input
         },
         new StateVariable
         {
             Name = "RabbitMQSourceResourceId",
             Value = RabbitMQSourceResourceId.ToString(),
             Type = StateVariable.StateType.Input
         }, new StateVariable
         {
             Name = "IsAutoDelete",
             Value = IsAutoDelete.ToString(),
             Type = StateVariable.StateType.Input
         },
         new StateVariable
         {
             Name = "Result",
             Value = Result,
             Type = StateVariable.StateType.Output
         }
     });
 }
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = base.GetHashCode();
         hashCode = (hashCode * 397) ^ RabbitMQSourceResourceId.GetHashCode();
         hashCode = (hashCode * 397) ^ (QueueName != null ? QueueName.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (DisplayName != null ? DisplayName.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ IsDurable.GetHashCode();
         hashCode = (hashCode * 397) ^ IsExclusive.GetHashCode();
         hashCode = (hashCode * 397) ^ IsAutoDelete.GetHashCode();
         hashCode = (hashCode * 397) ^ (Message != null ? Message.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Connection != null ? Connection.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Channel != null ? Channel.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (RabbitMQSource != null ? RabbitMQSource.GetHashCode() : 0);
         return(hashCode);
     }
 }