public void Write(TProtocol oprot)
 {
     oprot.IncrementRecursionDepth();
     try
     {
         TStruct struc = new TStruct("TDDIRiskParameterUnion");
         oprot.WriteStructBegin(struc);
         TField field = new TField();
         if (RiskParameter != null && __isset.RiskParameter)
         {
             field.Name = "RiskParameter";
             field.Type = TType.Struct;
             field.ID   = 1;
             oprot.WriteFieldBegin(field);
             RiskParameter.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (Situation != null && __isset.Situation)
         {
             field.Name = "Situation";
             field.Type = TType.Struct;
             field.ID   = 2;
             oprot.WriteFieldBegin(field);
             Situation.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (Accident != null && __isset.Accident)
         {
             field.Name = "Accident";
             field.Type = TType.Struct;
             field.ID   = 3;
             oprot.WriteFieldBegin(field);
             Accident.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (OperationMeasure != null && __isset.OperationMeasure)
         {
             field.Name = "OperationMeasure";
             field.Type = TType.Struct;
             field.ID   = 4;
             oprot.WriteFieldBegin(field);
             OperationMeasure.Write(oprot);
             oprot.WriteFieldEnd();
         }
         oprot.WriteFieldStop();
         oprot.WriteStructEnd();
     }
     finally
     {
         oprot.DecrementRecursionDepth();
     }
 }
        public override string ToString()
        {
            StringBuilder __sb    = new StringBuilder("TDDIRiskParameterUnion(");
            bool          __first = true;

            if (RiskParameter != null && __isset.RiskParameter)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("RiskParameter: ");
                __sb.Append(RiskParameter == null ? "<null>" : RiskParameter.ToString());
            }
            if (Situation != null && __isset.Situation)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("Situation: ");
                __sb.Append(Situation == null ? "<null>" : Situation.ToString());
            }
            if (Accident != null && __isset.Accident)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("Accident: ");
                __sb.Append(Accident == null ? "<null>" : Accident.ToString());
            }
            if (OperationMeasure != null && __isset.OperationMeasure)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("OperationMeasure: ");
                __sb.Append(OperationMeasure == null ? "<null>" : OperationMeasure.ToString());
            }
            __sb.Append(")");
            return(__sb.ToString());
        }
 public override string ToString() {
   StringBuilder __sb = new StringBuilder("TDDIHARAArtifactUnion(");
   bool __first = true;
   if (HARAPackage != null && __isset.HARAPackage) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("HARAPackage: ");
     __sb.Append(HARAPackage);
   }
   if (HazardTypeSystem != null && __isset.HazardTypeSystem) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("HazardTypeSystem: ");
     __sb.Append(HazardTypeSystem== null ? "<null>" : HazardTypeSystem.ToString());
   }
   if (RiskParameter != null && __isset.RiskParameter) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("RiskParameter: ");
     __sb.Append(RiskParameter== null ? "<null>" : RiskParameter.ToString());
   }
   if (RiskAssessment != null && __isset.RiskAssessment) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("RiskAssessment: ");
     __sb.Append(RiskAssessment== null ? "<null>" : RiskAssessment.ToString());
   }
   if (HazardType != null && __isset.HazardType) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("HazardType: ");
     __sb.Append(HazardType== null ? "<null>" : HazardType.ToString());
   }
   if (MalFunction != null && __isset.MalFunction) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("MalFunction: ");
     __sb.Append(MalFunction== null ? "<null>" : MalFunction.ToString());
   }
   if (Hazard != null && __isset.Hazard) {
     if(!__first) { __sb.Append(", "); }
     __first = false;
     __sb.Append("Hazard: ");
     __sb.Append(Hazard== null ? "<null>" : Hazard.ToString());
   }
   __sb.Append(")");
   return __sb.ToString();
 }
 public void Write(TProtocol oprot) {
   oprot.IncrementRecursionDepth();
   try
   {
     TStruct struc = new TStruct("TDDIHARAArtifactUnion");
     oprot.WriteStructBegin(struc);
     TField field = new TField();
     if (HARAPackage != null && __isset.HARAPackage) {
       field.Name = "HARAPackage";
       field.Type = TType.Struct;
       field.ID = 1;
       oprot.WriteFieldBegin(field);
       HARAPackage.Write(oprot);
       oprot.WriteFieldEnd();
     }
     if (HazardTypeSystem != null && __isset.HazardTypeSystem) {
       field.Name = "HazardTypeSystem";
       field.Type = TType.Struct;
       field.ID = 2;
       oprot.WriteFieldBegin(field);
       HazardTypeSystem.Write(oprot);
       oprot.WriteFieldEnd();
     }
     if (RiskParameter != null && __isset.RiskParameter) {
       field.Name = "RiskParameter";
       field.Type = TType.Struct;
       field.ID = 3;
       oprot.WriteFieldBegin(field);
       RiskParameter.Write(oprot);
       oprot.WriteFieldEnd();
     }
     if (RiskAssessment != null && __isset.RiskAssessment) {
       field.Name = "RiskAssessment";
       field.Type = TType.Struct;
       field.ID = 4;
       oprot.WriteFieldBegin(field);
       RiskAssessment.Write(oprot);
       oprot.WriteFieldEnd();
     }
     if (HazardType != null && __isset.HazardType) {
       field.Name = "HazardType";
       field.Type = TType.Struct;
       field.ID = 5;
       oprot.WriteFieldBegin(field);
       HazardType.Write(oprot);
       oprot.WriteFieldEnd();
     }
     if (MalFunction != null && __isset.MalFunction) {
       field.Name = "MalFunction";
       field.Type = TType.Struct;
       field.ID = 6;
       oprot.WriteFieldBegin(field);
       MalFunction.Write(oprot);
       oprot.WriteFieldEnd();
     }
     if (Hazard != null && __isset.Hazard) {
       field.Name = "Hazard";
       field.Type = TType.Struct;
       field.ID = 7;
       oprot.WriteFieldBegin(field);
       Hazard.Write(oprot);
       oprot.WriteFieldEnd();
     }
     oprot.WriteFieldStop();
     oprot.WriteStructEnd();
   }
   finally
   {
     oprot.DecrementRecursionDepth();
   }
 }