public override string ToString()
    {
        StringBuilder __sb = new StringBuilder("StateSpoutSpec(");

        __sb.Append(", State_spout_object: ");
        __sb.Append(State_spout_object == null ? "<null>" : State_spout_object.ToString());
        __sb.Append(", Common: ");
        __sb.Append(Common == null ? "<null>" : Common.ToString());
        __sb.Append(")");
        return(__sb.ToString());
    }
    public void Write(TProtocol oprot)
    {
        TStruct struc = new TStruct("StateSpoutSpec");

        oprot.WriteStructBegin(struc);
        TField field = new TField();

        field.Name = "state_spout_object";
        field.Type = TType.Struct;
        field.ID   = 1;
        oprot.WriteFieldBegin(field);
        State_spout_object.Write(oprot);
        oprot.WriteFieldEnd();
        field.Name = "common";
        field.Type = TType.Struct;
        field.ID   = 2;
        oprot.WriteFieldBegin(field);
        Common.Write(oprot);
        oprot.WriteFieldEnd();
        oprot.WriteFieldStop();
        oprot.WriteStructEnd();
    }