All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jbpm.marshalling.impl.JBPMMessages Maven / Gradle / Ivy

There is a newer version: 7.74.1.Final
Show newest version
/*
 * Copyright 2020 Red Hat, Inc. and/or its affiliates.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.jbpm.marshalling.impl;

public final class JBPMMessages {
  private JBPMMessages() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registry.add(org.jbpm.marshalling.impl.JBPMMessages.processInstance);
    registry.add(org.jbpm.marshalling.impl.JBPMMessages.workItem);
    registry.add(org.jbpm.marshalling.impl.JBPMMessages.timerId);
    registry.add(org.jbpm.marshalling.impl.JBPMMessages.processTimer);
    registry.add(org.jbpm.marshalling.impl.JBPMMessages.procTimer);
  }
  public interface ProcessInstanceOrBuilder extends
      // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance)
      com.google.protobuf.MessageOrBuilder {

    /**
     * optional string process_type = 1;
     */
    boolean hasProcessType();
    /**
     * optional string process_type = 1;
     */
    java.lang.String getProcessType();
    /**
     * optional string process_type = 1;
     */
    com.google.protobuf.ByteString
        getProcessTypeBytes();

    /**
     * optional int64 id = 2;
     */
    boolean hasId();
    /**
     * optional int64 id = 2;
     */
    long getId();

    /**
     * optional string process_id = 3;
     */
    boolean hasProcessId();
    /**
     * optional string process_id = 3;
     */
    java.lang.String getProcessId();
    /**
     * optional string process_id = 3;
     */
    com.google.protobuf.ByteString
        getProcessIdBytes();

    /**
     * optional int32 state = 4;
     */
    boolean hasState();
    /**
     * optional int32 state = 4;
     */
    int getState();

    /**
     * optional int64 node_instance_counter = 5;
     */
    boolean hasNodeInstanceCounter();
    /**
     * optional int64 node_instance_counter = 5;
     */
    long getNodeInstanceCounter();

    /**
     * optional string process_xml = 11;
     */
    boolean hasProcessXml();
    /**
     * optional string process_xml = 11;
     */
    java.lang.String getProcessXml();
    /**
     * optional string process_xml = 11;
     */
    com.google.protobuf.ByteString
        getProcessXmlBytes();

    /**
     * optional int64 parent_process_instance_id = 12;
     */
    boolean hasParentProcessInstanceId();
    /**
     * optional int64 parent_process_instance_id = 12;
     */
    long getParentProcessInstanceId();

    /**
     * optional string description = 15;
     */
    boolean hasDescription();
    /**
     * optional string description = 15;
     */
    java.lang.String getDescription();
    /**
     * optional string description = 15;
     */
    com.google.protobuf.ByteString
        getDescriptionBytes();

    /**
     * optional bool signal_completion = 16 [default = true];
     */
    boolean hasSignalCompletion();
    /**
     * optional bool signal_completion = 16 [default = true];
     */
    boolean getSignalCompletion();

    /**
     * optional string deploymentId = 17;
     */
    boolean hasDeploymentId();
    /**
     * optional string deploymentId = 17;
     */
    java.lang.String getDeploymentId();
    /**
     * optional string deploymentId = 17;
     */
    com.google.protobuf.ByteString
        getDeploymentIdBytes();

    /**
     * optional string correlation_key = 18;
     */
    boolean hasCorrelationKey();
    /**
     * optional string correlation_key = 18;
     */
    java.lang.String getCorrelationKey();
    /**
     * optional string correlation_key = 18;
     */
    com.google.protobuf.ByteString
        getCorrelationKeyBytes();

    /**
     * optional int64 sla_timer_id = 19;
     */
    boolean hasSlaTimerId();
    /**
     * optional int64 sla_timer_id = 19;
     */
    long getSlaTimerId();

    /**
     * optional int64 sla_due_date = 20;
     */
    boolean hasSlaDueDate();
    /**
     * optional int64 sla_due_date = 20;
     */
    long getSlaDueDate();

    /**
     * optional int32 sla_compliance = 21;
     */
    boolean hasSlaCompliance();
    /**
     * optional int32 sla_compliance = 21;
     */
    int getSlaCompliance();

    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    java.util.List 
        getSwimlaneContextList();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance getSwimlaneContext(int index);
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    int getSwimlaneContextCount();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    java.util.List 
        getSwimlaneContextOrBuilderList();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder getSwimlaneContextOrBuilder(
        int index);

    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    java.util.List 
        getNodeInstanceList();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index);
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    int getNodeInstanceCount();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    java.util.List 
        getNodeInstanceOrBuilderList();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
        int index);

    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    java.util.List 
        getVariableList();
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index);
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    int getVariableCount();
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    java.util.List 
        getVariableOrBuilderList();
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
        int index);

    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    java.util.List 
        getExclusiveGroupList();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getExclusiveGroup(int index);
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    int getExclusiveGroupCount();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    java.util.List 
        getExclusiveGroupOrBuilderList();
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder getExclusiveGroupOrBuilder(
        int index);

    /**
     * repeated string completedNodeIds = 13;
     */
    com.google.protobuf.ProtocolStringList
        getCompletedNodeIdsList();
    /**
     * repeated string completedNodeIds = 13;
     */
    int getCompletedNodeIdsCount();
    /**
     * repeated string completedNodeIds = 13;
     */
    java.lang.String getCompletedNodeIds(int index);
    /**
     * repeated string completedNodeIds = 13;
     */
    com.google.protobuf.ByteString
        getCompletedNodeIdsBytes(int index);

    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    java.util.List 
        getIterationLevelsList();
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index);
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    int getIterationLevelsCount();
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    java.util.List 
        getIterationLevelsOrBuilderList();
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code org.jbpm.marshalling.ProcessInstance}
   */
  public static final class ProcessInstance extends
      com.google.protobuf.GeneratedMessage implements
      // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance)
      ProcessInstanceOrBuilder {
    // Use ProcessInstance.newBuilder() to construct.
    private ProcessInstance(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private ProcessInstance(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final ProcessInstance defaultInstance;
    public static ProcessInstance getDefaultInstance() {
      return defaultInstance;
    }

    public ProcessInstance getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private ProcessInstance(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000001;
              processType_ = bs;
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              id_ = input.readInt64();
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              processId_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              state_ = input.readInt32();
              break;
            }
            case 40: {
              bitField0_ |= 0x00000010;
              nodeInstanceCounter_ = input.readInt64();
              break;
            }
            case 50: {
              if (!((mutable_bitField0_ & 0x00004000) == 0x00004000)) {
                swimlaneContext_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00004000;
              }
              swimlaneContext_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.PARSER, extensionRegistry));
              break;
            }
            case 58: {
              if (!((mutable_bitField0_ & 0x00008000) == 0x00008000)) {
                nodeInstance_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00008000;
              }
              nodeInstance_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.PARSER, extensionRegistry));
              break;
            }
            case 66: {
              if (!((mutable_bitField0_ & 0x00010000) == 0x00010000)) {
                variable_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00010000;
              }
              variable_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.Variable.PARSER, extensionRegistry));
              break;
            }
            case 82: {
              if (!((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
                exclusiveGroup_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00020000;
              }
              exclusiveGroup_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.PARSER, extensionRegistry));
              break;
            }
            case 90: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000020;
              processXml_ = bs;
              break;
            }
            case 96: {
              bitField0_ |= 0x00000040;
              parentProcessInstanceId_ = input.readInt64();
              break;
            }
            case 106: {
              com.google.protobuf.ByteString bs = input.readBytes();
              if (!((mutable_bitField0_ & 0x00040000) == 0x00040000)) {
                completedNodeIds_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00040000;
              }
              completedNodeIds_.add(bs);
              break;
            }
            case 114: {
              if (!((mutable_bitField0_ & 0x00080000) == 0x00080000)) {
                iterationLevels_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00080000;
              }
              iterationLevels_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.PARSER, extensionRegistry));
              break;
            }
            case 122: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000080;
              description_ = bs;
              break;
            }
            case 128: {
              bitField0_ |= 0x00000100;
              signalCompletion_ = input.readBool();
              break;
            }
            case 138: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000200;
              deploymentId_ = bs;
              break;
            }
            case 146: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000400;
              correlationKey_ = bs;
              break;
            }
            case 152: {
              bitField0_ |= 0x00000800;
              slaTimerId_ = input.readInt64();
              break;
            }
            case 160: {
              bitField0_ |= 0x00001000;
              slaDueDate_ = input.readInt64();
              break;
            }
            case 168: {
              bitField0_ |= 0x00002000;
              slaCompliance_ = input.readInt32();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00004000) == 0x00004000)) {
          swimlaneContext_ = java.util.Collections.unmodifiableList(swimlaneContext_);
        }
        if (((mutable_bitField0_ & 0x00008000) == 0x00008000)) {
          nodeInstance_ = java.util.Collections.unmodifiableList(nodeInstance_);
        }
        if (((mutable_bitField0_ & 0x00010000) == 0x00010000)) {
          variable_ = java.util.Collections.unmodifiableList(variable_);
        }
        if (((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
          exclusiveGroup_ = java.util.Collections.unmodifiableList(exclusiveGroup_);
        }
        if (((mutable_bitField0_ & 0x00040000) == 0x00040000)) {
          completedNodeIds_ = completedNodeIds_.getUnmodifiableView();
        }
        if (((mutable_bitField0_ & 0x00080000) == 0x00080000)) {
          iterationLevels_ = java.util.Collections.unmodifiableList(iterationLevels_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public ProcessInstance parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProcessInstance(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    /**
     * Protobuf enum {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceType}
     */
    public enum NodeInstanceType
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * RULE_SET_NODE = 0;
       */
      RULE_SET_NODE(0, 0),
      /**
       * HUMAN_TASK_NODE = 1;
       */
      HUMAN_TASK_NODE(1, 1),
      /**
       * WORK_ITEM_NODE = 2;
       */
      WORK_ITEM_NODE(2, 2),
      /**
       * SUBPROCESS_NODE = 3;
       */
      SUBPROCESS_NODE(3, 3),
      /**
       * MILESTONE_NODE = 4;
       */
      MILESTONE_NODE(4, 4),
      /**
       * EVENT_NODE = 5;
       */
      EVENT_NODE(5, 5),
      /**
       * TIMER_NODE = 6;
       */
      TIMER_NODE(6, 6),
      /**
       * JOIN_NODE = 7;
       */
      JOIN_NODE(7, 7),
      /**
       * STATE_NODE = 8;
       */
      STATE_NODE(8, 8),
      /**
       * COMPOSITE_CONTEXT_NODE = 9;
       */
      COMPOSITE_CONTEXT_NODE(9, 9),
      /**
       * FOR_EACH_NODE = 10;
       */
      FOR_EACH_NODE(10, 10),
      /**
       * DYNAMIC_NODE = 11;
       */
      DYNAMIC_NODE(11, 11),
      /**
       * EVENT_SUBPROCESS_NODE = 12;
       */
      EVENT_SUBPROCESS_NODE(12, 12),
      /**
       * ASYNC_EVENT_NODE = 13;
       */
      ASYNC_EVENT_NODE(13, 13),
      ;

      /**
       * RULE_SET_NODE = 0;
       */
      public static final int RULE_SET_NODE_VALUE = 0;
      /**
       * HUMAN_TASK_NODE = 1;
       */
      public static final int HUMAN_TASK_NODE_VALUE = 1;
      /**
       * WORK_ITEM_NODE = 2;
       */
      public static final int WORK_ITEM_NODE_VALUE = 2;
      /**
       * SUBPROCESS_NODE = 3;
       */
      public static final int SUBPROCESS_NODE_VALUE = 3;
      /**
       * MILESTONE_NODE = 4;
       */
      public static final int MILESTONE_NODE_VALUE = 4;
      /**
       * EVENT_NODE = 5;
       */
      public static final int EVENT_NODE_VALUE = 5;
      /**
       * TIMER_NODE = 6;
       */
      public static final int TIMER_NODE_VALUE = 6;
      /**
       * JOIN_NODE = 7;
       */
      public static final int JOIN_NODE_VALUE = 7;
      /**
       * STATE_NODE = 8;
       */
      public static final int STATE_NODE_VALUE = 8;
      /**
       * COMPOSITE_CONTEXT_NODE = 9;
       */
      public static final int COMPOSITE_CONTEXT_NODE_VALUE = 9;
      /**
       * FOR_EACH_NODE = 10;
       */
      public static final int FOR_EACH_NODE_VALUE = 10;
      /**
       * DYNAMIC_NODE = 11;
       */
      public static final int DYNAMIC_NODE_VALUE = 11;
      /**
       * EVENT_SUBPROCESS_NODE = 12;
       */
      public static final int EVENT_SUBPROCESS_NODE_VALUE = 12;
      /**
       * ASYNC_EVENT_NODE = 13;
       */
      public static final int ASYNC_EVENT_NODE_VALUE = 13;


      public final int getNumber() { return value; }

      public static NodeInstanceType valueOf(int value) {
        switch (value) {
          case 0: return RULE_SET_NODE;
          case 1: return HUMAN_TASK_NODE;
          case 2: return WORK_ITEM_NODE;
          case 3: return SUBPROCESS_NODE;
          case 4: return MILESTONE_NODE;
          case 5: return EVENT_NODE;
          case 6: return TIMER_NODE;
          case 7: return JOIN_NODE;
          case 8: return STATE_NODE;
          case 9: return COMPOSITE_CONTEXT_NODE;
          case 10: return FOR_EACH_NODE;
          case 11: return DYNAMIC_NODE;
          case 12: return EVENT_SUBPROCESS_NODE;
          case 13: return ASYNC_EVENT_NODE;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap
          internalGetValueMap() {
        return internalValueMap;
      }
      private static com.google.protobuf.Internal.EnumLiteMap
          internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap() {
              public NodeInstanceType findValueByNumber(int number) {
                return NodeInstanceType.valueOf(number);
              }
            };

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(index);
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.getDescriptor().getEnumTypes().get(0);
      }

      private static final NodeInstanceType[] VALUES = values();

      public static NodeInstanceType valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }

      private final int index;
      private final int value;

      private NodeInstanceType(int index, int value) {
        this.index = index;
        this.value = value;
      }

      // @@protoc_insertion_point(enum_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceType)
    }

    public interface SwimlaneContextInstanceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance)
        com.google.protobuf.MessageOrBuilder {

      /**
       * optional string swimlane = 1;
       */
      boolean hasSwimlane();
      /**
       * optional string swimlane = 1;
       */
      java.lang.String getSwimlane();
      /**
       * optional string swimlane = 1;
       */
      com.google.protobuf.ByteString
          getSwimlaneBytes();

      /**
       * optional string actor_id = 2;
       */
      boolean hasActorId();
      /**
       * optional string actor_id = 2;
       */
      java.lang.String getActorId();
      /**
       * optional string actor_id = 2;
       */
      com.google.protobuf.ByteString
          getActorIdBytes();
    }
    /**
     * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance}
     */
    public static final class SwimlaneContextInstance extends
        com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance)
        SwimlaneContextInstanceOrBuilder {
      // Use SwimlaneContextInstance.newBuilder() to construct.
      private SwimlaneContextInstance(com.google.protobuf.GeneratedMessage.Builder builder) {
        super(builder);
        this.unknownFields = builder.getUnknownFields();
      }
      private SwimlaneContextInstance(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

      private static final SwimlaneContextInstance defaultInstance;
      public static SwimlaneContextInstance getDefaultInstance() {
        return defaultInstance;
      }

      public SwimlaneContextInstance getDefaultInstanceForType() {
        return defaultInstance;
      }

      private final com.google.protobuf.UnknownFieldSet unknownFields;
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
          getUnknownFields() {
        return this.unknownFields;
      }
      private SwimlaneContextInstance(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        initFields();
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownField(input, unknownFields,
                                       extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                com.google.protobuf.ByteString bs = input.readBytes();
                bitField0_ |= 0x00000001;
                swimlane_ = bs;
                break;
              }
              case 18: {
                com.google.protobuf.ByteString bs = input.readBytes();
                bitField0_ |= 0x00000002;
                actorId_ = bs;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e.getMessage()).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder.class);
      }

      public static com.google.protobuf.Parser PARSER =
          new com.google.protobuf.AbstractParser() {
        public SwimlaneContextInstance parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new SwimlaneContextInstance(input, extensionRegistry);
        }
      };

      @java.lang.Override
      public com.google.protobuf.Parser getParserForType() {
        return PARSER;
      }

      private int bitField0_;
      public static final int SWIMLANE_FIELD_NUMBER = 1;
      private java.lang.Object swimlane_;
      /**
       * optional string swimlane = 1;
       */
      public boolean hasSwimlane() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * optional string swimlane = 1;
       */
      public java.lang.String getSwimlane() {
        java.lang.Object ref = swimlane_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            swimlane_ = s;
          }
          return s;
        }
      }
      /**
       * optional string swimlane = 1;
       */
      public com.google.protobuf.ByteString
          getSwimlaneBytes() {
        java.lang.Object ref = swimlane_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          swimlane_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }

      public static final int ACTOR_ID_FIELD_NUMBER = 2;
      private java.lang.Object actorId_;
      /**
       * optional string actor_id = 2;
       */
      public boolean hasActorId() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * optional string actor_id = 2;
       */
      public java.lang.String getActorId() {
        java.lang.Object ref = actorId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            actorId_ = s;
          }
          return s;
        }
      }
      /**
       * optional string actor_id = 2;
       */
      public com.google.protobuf.ByteString
          getActorIdBytes() {
        java.lang.Object ref = actorId_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          actorId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }

      private void initFields() {
        swimlane_ = "";
        actorId_ = "";
      }
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          output.writeBytes(1, getSwimlaneBytes());
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          output.writeBytes(2, getActorIdBytes());
        }
        getUnknownFields().writeTo(output);
      }

      private int memoizedSerializedSize = -1;
      public int getSerializedSize() {
        int size = memoizedSerializedSize;
        if (size != -1) return size;

        size = 0;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, getSwimlaneBytes());
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, getActorIdBytes());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSerializedSize = size;
        return size;
      }

      private static final long serialVersionUID = 0L;
      @java.lang.Override
      protected java.lang.Object writeReplace()
          throws java.io.ObjectStreamException {
        return super.writeReplace();
      }

      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }

      public static Builder newBuilder() { return Builder.create(); }
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance prototype) {
        return newBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() { return newBuilder(this); }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessage.Builder implements
          // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance)
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder.class);
        }

        // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          }
        }
        private static Builder create() {
          return new Builder();
        }

        public Builder clear() {
          super.clear();
          swimlane_ = "";
          bitField0_ = (bitField0_ & ~0x00000001);
          actorId_ = "";
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }

        public Builder clone() {
          return create().mergeFrom(buildPartial());
        }

        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_descriptor;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance getDefaultInstanceForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.getDefaultInstance();
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance build() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance buildPartial() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
            to_bitField0_ |= 0x00000001;
          }
          result.swimlane_ = swimlane_;
          if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
            to_bitField0_ |= 0x00000002;
          }
          result.actorId_ = actorId_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }

        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance) {
            return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance other) {
          if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.getDefaultInstance()) return this;
          if (other.hasSwimlane()) {
            bitField0_ |= 0x00000001;
            swimlane_ = other.swimlane_;
            onChanged();
          }
          if (other.hasActorId()) {
            bitField0_ |= 0x00000002;
            actorId_ = other.actorId_;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          return this;
        }

        public final boolean isInitialized() {
          return true;
        }

        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance) e.getUnfinishedMessage();
            throw e;
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;

        private java.lang.Object swimlane_ = "";
        /**
         * optional string swimlane = 1;
         */
        public boolean hasSwimlane() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional string swimlane = 1;
         */
        public java.lang.String getSwimlane() {
          java.lang.Object ref = swimlane_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              swimlane_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * optional string swimlane = 1;
         */
        public com.google.protobuf.ByteString
            getSwimlaneBytes() {
          java.lang.Object ref = swimlane_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            swimlane_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * optional string swimlane = 1;
         */
        public Builder setSwimlane(
            java.lang.String value) {
          if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
          swimlane_ = value;
          onChanged();
          return this;
        }
        /**
         * optional string swimlane = 1;
         */
        public Builder clearSwimlane() {
          bitField0_ = (bitField0_ & ~0x00000001);
          swimlane_ = getDefaultInstance().getSwimlane();
          onChanged();
          return this;
        }
        /**
         * optional string swimlane = 1;
         */
        public Builder setSwimlaneBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
          swimlane_ = value;
          onChanged();
          return this;
        }

        private java.lang.Object actorId_ = "";
        /**
         * optional string actor_id = 2;
         */
        public boolean hasActorId() {
          return ((bitField0_ & 0x00000002) == 0x00000002);
        }
        /**
         * optional string actor_id = 2;
         */
        public java.lang.String getActorId() {
          java.lang.Object ref = actorId_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              actorId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * optional string actor_id = 2;
         */
        public com.google.protobuf.ByteString
            getActorIdBytes() {
          java.lang.Object ref = actorId_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            actorId_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * optional string actor_id = 2;
         */
        public Builder setActorId(
            java.lang.String value) {
          if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
          actorId_ = value;
          onChanged();
          return this;
        }
        /**
         * optional string actor_id = 2;
         */
        public Builder clearActorId() {
          bitField0_ = (bitField0_ & ~0x00000002);
          actorId_ = getDefaultInstance().getActorId();
          onChanged();
          return this;
        }
        /**
         * optional string actor_id = 2;
         */
        public Builder setActorIdBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
          actorId_ = value;
          onChanged();
          return this;
        }

        // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance)
      }

      static {
        defaultInstance = new SwimlaneContextInstance(true);
        defaultInstance.initFields();
      }

      // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance)
    }

    public interface NodeInstanceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstance)
        com.google.protobuf.MessageOrBuilder {

      /**
       * optional int64 id = 1;
       */
      boolean hasId();
      /**
       * optional int64 id = 1;
       */
      long getId();

      /**
       * optional int64 node_id = 2;
       */
      boolean hasNodeId();
      /**
       * optional int64 node_id = 2;
       */
      long getNodeId();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
       */
      boolean hasContent();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent getContent();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder getContentOrBuilder();

      /**
       * optional int32 level = 5;
       */
      boolean hasLevel();
      /**
       * optional int32 level = 5;
       */
      int getLevel();

      /**
       * optional int64 sla_timer_id = 6;
       */
      boolean hasSlaTimerId();
      /**
       * optional int64 sla_timer_id = 6;
       */
      long getSlaTimerId();

      /**
       * optional int64 sla_due_date = 7;
       */
      boolean hasSlaDueDate();
      /**
       * optional int64 sla_due_date = 7;
       */
      long getSlaDueDate();

      /**
       * optional int32 sla_compliance = 8;
       */
      boolean hasSlaCompliance();
      /**
       * optional int32 sla_compliance = 8;
       */
      int getSlaCompliance();
    }
    /**
     * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstance}
     */
    public static final class NodeInstance extends
        com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstance)
        NodeInstanceOrBuilder {
      // Use NodeInstance.newBuilder() to construct.
      private NodeInstance(com.google.protobuf.GeneratedMessage.Builder builder) {
        super(builder);
        this.unknownFields = builder.getUnknownFields();
      }
      private NodeInstance(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

      private static final NodeInstance defaultInstance;
      public static NodeInstance getDefaultInstance() {
        return defaultInstance;
      }

      public NodeInstance getDefaultInstanceForType() {
        return defaultInstance;
      }

      private final com.google.protobuf.UnknownFieldSet unknownFields;
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
          getUnknownFields() {
        return this.unknownFields;
      }
      private NodeInstance(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        initFields();
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownField(input, unknownFields,
                                       extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
                bitField0_ |= 0x00000001;
                id_ = input.readInt64();
                break;
              }
              case 16: {
                bitField0_ |= 0x00000002;
                nodeId_ = input.readInt64();
                break;
              }
              case 34: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder subBuilder = null;
                if (((bitField0_ & 0x00000004) == 0x00000004)) {
                  subBuilder = content_.toBuilder();
                }
                content_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(content_);
                  content_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000004;
                break;
              }
              case 40: {
                bitField0_ |= 0x00000008;
                level_ = input.readInt32();
                break;
              }
              case 48: {
                bitField0_ |= 0x00000010;
                slaTimerId_ = input.readInt64();
                break;
              }
              case 56: {
                bitField0_ |= 0x00000020;
                slaDueDate_ = input.readInt64();
                break;
              }
              case 64: {
                bitField0_ |= 0x00000040;
                slaCompliance_ = input.readInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e.getMessage()).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder.class);
      }

      public static com.google.protobuf.Parser PARSER =
          new com.google.protobuf.AbstractParser() {
        public NodeInstance parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new NodeInstance(input, extensionRegistry);
        }
      };

      @java.lang.Override
      public com.google.protobuf.Parser getParserForType() {
        return PARSER;
      }

      private int bitField0_;
      public static final int ID_FIELD_NUMBER = 1;
      private long id_;
      /**
       * optional int64 id = 1;
       */
      public boolean hasId() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * optional int64 id = 1;
       */
      public long getId() {
        return id_;
      }

      public static final int NODE_ID_FIELD_NUMBER = 2;
      private long nodeId_;
      /**
       * optional int64 node_id = 2;
       */
      public boolean hasNodeId() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * optional int64 node_id = 2;
       */
      public long getNodeId() {
        return nodeId_;
      }

      public static final int CONTENT_FIELD_NUMBER = 4;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent content_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
       */
      public boolean hasContent() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent getContent() {
        return content_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder getContentOrBuilder() {
        return content_;
      }

      public static final int LEVEL_FIELD_NUMBER = 5;
      private int level_;
      /**
       * optional int32 level = 5;
       */
      public boolean hasLevel() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * optional int32 level = 5;
       */
      public int getLevel() {
        return level_;
      }

      public static final int SLA_TIMER_ID_FIELD_NUMBER = 6;
      private long slaTimerId_;
      /**
       * optional int64 sla_timer_id = 6;
       */
      public boolean hasSlaTimerId() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * optional int64 sla_timer_id = 6;
       */
      public long getSlaTimerId() {
        return slaTimerId_;
      }

      public static final int SLA_DUE_DATE_FIELD_NUMBER = 7;
      private long slaDueDate_;
      /**
       * optional int64 sla_due_date = 7;
       */
      public boolean hasSlaDueDate() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * optional int64 sla_due_date = 7;
       */
      public long getSlaDueDate() {
        return slaDueDate_;
      }

      public static final int SLA_COMPLIANCE_FIELD_NUMBER = 8;
      private int slaCompliance_;
      /**
       * optional int32 sla_compliance = 8;
       */
      public boolean hasSlaCompliance() {
        return ((bitField0_ & 0x00000040) == 0x00000040);
      }
      /**
       * optional int32 sla_compliance = 8;
       */
      public int getSlaCompliance() {
        return slaCompliance_;
      }

      private void initFields() {
        id_ = 0L;
        nodeId_ = 0L;
        content_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance();
        level_ = 0;
        slaTimerId_ = 0L;
        slaDueDate_ = 0L;
        slaCompliance_ = 0;
      }
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          output.writeInt64(1, id_);
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          output.writeInt64(2, nodeId_);
        }
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          output.writeMessage(4, content_);
        }
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          output.writeInt32(5, level_);
        }
        if (((bitField0_ & 0x00000010) == 0x00000010)) {
          output.writeInt64(6, slaTimerId_);
        }
        if (((bitField0_ & 0x00000020) == 0x00000020)) {
          output.writeInt64(7, slaDueDate_);
        }
        if (((bitField0_ & 0x00000040) == 0x00000040)) {
          output.writeInt32(8, slaCompliance_);
        }
        getUnknownFields().writeTo(output);
      }

      private int memoizedSerializedSize = -1;
      public int getSerializedSize() {
        int size = memoizedSerializedSize;
        if (size != -1) return size;

        size = 0;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt64Size(1, id_);
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt64Size(2, nodeId_);
        }
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, content_);
        }
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt32Size(5, level_);
        }
        if (((bitField0_ & 0x00000010) == 0x00000010)) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt64Size(6, slaTimerId_);
        }
        if (((bitField0_ & 0x00000020) == 0x00000020)) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt64Size(7, slaDueDate_);
        }
        if (((bitField0_ & 0x00000040) == 0x00000040)) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt32Size(8, slaCompliance_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSerializedSize = size;
        return size;
      }

      private static final long serialVersionUID = 0L;
      @java.lang.Override
      protected java.lang.Object writeReplace()
          throws java.io.ObjectStreamException {
        return super.writeReplace();
      }

      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }

      public static Builder newBuilder() { return Builder.create(); }
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance prototype) {
        return newBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() { return newBuilder(this); }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstance}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessage.Builder implements
          // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstance)
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder.class);
        }

        // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            getContentFieldBuilder();
          }
        }
        private static Builder create() {
          return new Builder();
        }

        public Builder clear() {
          super.clear();
          id_ = 0L;
          bitField0_ = (bitField0_ & ~0x00000001);
          nodeId_ = 0L;
          bitField0_ = (bitField0_ & ~0x00000002);
          if (contentBuilder_ == null) {
            content_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance();
          } else {
            contentBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000004);
          level_ = 0;
          bitField0_ = (bitField0_ & ~0x00000008);
          slaTimerId_ = 0L;
          bitField0_ = (bitField0_ & ~0x00000010);
          slaDueDate_ = 0L;
          bitField0_ = (bitField0_ & ~0x00000020);
          slaCompliance_ = 0;
          bitField0_ = (bitField0_ & ~0x00000040);
          return this;
        }

        public Builder clone() {
          return create().mergeFrom(buildPartial());
        }

        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_descriptor;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getDefaultInstanceForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance();
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance build() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance buildPartial() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
            to_bitField0_ |= 0x00000001;
          }
          result.id_ = id_;
          if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
            to_bitField0_ |= 0x00000002;
          }
          result.nodeId_ = nodeId_;
          if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
            to_bitField0_ |= 0x00000004;
          }
          if (contentBuilder_ == null) {
            result.content_ = content_;
          } else {
            result.content_ = contentBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
            to_bitField0_ |= 0x00000008;
          }
          result.level_ = level_;
          if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
            to_bitField0_ |= 0x00000010;
          }
          result.slaTimerId_ = slaTimerId_;
          if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
            to_bitField0_ |= 0x00000020;
          }
          result.slaDueDate_ = slaDueDate_;
          if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
            to_bitField0_ |= 0x00000040;
          }
          result.slaCompliance_ = slaCompliance_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }

        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance) {
            return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance other) {
          if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance()) return this;
          if (other.hasId()) {
            setId(other.getId());
          }
          if (other.hasNodeId()) {
            setNodeId(other.getNodeId());
          }
          if (other.hasContent()) {
            mergeContent(other.getContent());
          }
          if (other.hasLevel()) {
            setLevel(other.getLevel());
          }
          if (other.hasSlaTimerId()) {
            setSlaTimerId(other.getSlaTimerId());
          }
          if (other.hasSlaDueDate()) {
            setSlaDueDate(other.getSlaDueDate());
          }
          if (other.hasSlaCompliance()) {
            setSlaCompliance(other.getSlaCompliance());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          return this;
        }

        public final boolean isInitialized() {
          return true;
        }

        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance) e.getUnfinishedMessage();
            throw e;
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;

        private long id_ ;
        /**
         * optional int64 id = 1;
         */
        public boolean hasId() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional int64 id = 1;
         */
        public long getId() {
          return id_;
        }
        /**
         * optional int64 id = 1;
         */
        public Builder setId(long value) {
          bitField0_ |= 0x00000001;
          id_ = value;
          onChanged();
          return this;
        }
        /**
         * optional int64 id = 1;
         */
        public Builder clearId() {
          bitField0_ = (bitField0_ & ~0x00000001);
          id_ = 0L;
          onChanged();
          return this;
        }

        private long nodeId_ ;
        /**
         * optional int64 node_id = 2;
         */
        public boolean hasNodeId() {
          return ((bitField0_ & 0x00000002) == 0x00000002);
        }
        /**
         * optional int64 node_id = 2;
         */
        public long getNodeId() {
          return nodeId_;
        }
        /**
         * optional int64 node_id = 2;
         */
        public Builder setNodeId(long value) {
          bitField0_ |= 0x00000002;
          nodeId_ = value;
          onChanged();
          return this;
        }
        /**
         * optional int64 node_id = 2;
         */
        public Builder clearNodeId() {
          bitField0_ = (bitField0_ & ~0x00000002);
          nodeId_ = 0L;
          onChanged();
          return this;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent content_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder> contentBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public boolean hasContent() {
          return ((bitField0_ & 0x00000004) == 0x00000004);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent getContent() {
          if (contentBuilder_ == null) {
            return content_;
          } else {
            return contentBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public Builder setContent(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent value) {
          if (contentBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            content_ = value;
            onChanged();
          } else {
            contentBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public Builder setContent(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder builderForValue) {
          if (contentBuilder_ == null) {
            content_ = builderForValue.build();
            onChanged();
          } else {
            contentBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public Builder mergeContent(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent value) {
          if (contentBuilder_ == null) {
            if (((bitField0_ & 0x00000004) == 0x00000004) &&
                content_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance()) {
              content_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.newBuilder(content_).mergeFrom(value).buildPartial();
            } else {
              content_ = value;
            }
            onChanged();
          } else {
            contentBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000004;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public Builder clearContent() {
          if (contentBuilder_ == null) {
            content_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance();
            onChanged();
          } else {
            contentBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000004);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder getContentBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getContentFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder getContentOrBuilder() {
          if (contentBuilder_ != null) {
            return contentBuilder_.getMessageOrBuilder();
          } else {
            return content_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent content = 4;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder> 
            getContentFieldBuilder() {
          if (contentBuilder_ == null) {
            contentBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder>(
                    getContent(),
                    getParentForChildren(),
                    isClean());
            content_ = null;
          }
          return contentBuilder_;
        }

        private int level_ ;
        /**
         * optional int32 level = 5;
         */
        public boolean hasLevel() {
          return ((bitField0_ & 0x00000008) == 0x00000008);
        }
        /**
         * optional int32 level = 5;
         */
        public int getLevel() {
          return level_;
        }
        /**
         * optional int32 level = 5;
         */
        public Builder setLevel(int value) {
          bitField0_ |= 0x00000008;
          level_ = value;
          onChanged();
          return this;
        }
        /**
         * optional int32 level = 5;
         */
        public Builder clearLevel() {
          bitField0_ = (bitField0_ & ~0x00000008);
          level_ = 0;
          onChanged();
          return this;
        }

        private long slaTimerId_ ;
        /**
         * optional int64 sla_timer_id = 6;
         */
        public boolean hasSlaTimerId() {
          return ((bitField0_ & 0x00000010) == 0x00000010);
        }
        /**
         * optional int64 sla_timer_id = 6;
         */
        public long getSlaTimerId() {
          return slaTimerId_;
        }
        /**
         * optional int64 sla_timer_id = 6;
         */
        public Builder setSlaTimerId(long value) {
          bitField0_ |= 0x00000010;
          slaTimerId_ = value;
          onChanged();
          return this;
        }
        /**
         * optional int64 sla_timer_id = 6;
         */
        public Builder clearSlaTimerId() {
          bitField0_ = (bitField0_ & ~0x00000010);
          slaTimerId_ = 0L;
          onChanged();
          return this;
        }

        private long slaDueDate_ ;
        /**
         * optional int64 sla_due_date = 7;
         */
        public boolean hasSlaDueDate() {
          return ((bitField0_ & 0x00000020) == 0x00000020);
        }
        /**
         * optional int64 sla_due_date = 7;
         */
        public long getSlaDueDate() {
          return slaDueDate_;
        }
        /**
         * optional int64 sla_due_date = 7;
         */
        public Builder setSlaDueDate(long value) {
          bitField0_ |= 0x00000020;
          slaDueDate_ = value;
          onChanged();
          return this;
        }
        /**
         * optional int64 sla_due_date = 7;
         */
        public Builder clearSlaDueDate() {
          bitField0_ = (bitField0_ & ~0x00000020);
          slaDueDate_ = 0L;
          onChanged();
          return this;
        }

        private int slaCompliance_ ;
        /**
         * optional int32 sla_compliance = 8;
         */
        public boolean hasSlaCompliance() {
          return ((bitField0_ & 0x00000040) == 0x00000040);
        }
        /**
         * optional int32 sla_compliance = 8;
         */
        public int getSlaCompliance() {
          return slaCompliance_;
        }
        /**
         * optional int32 sla_compliance = 8;
         */
        public Builder setSlaCompliance(int value) {
          bitField0_ |= 0x00000040;
          slaCompliance_ = value;
          onChanged();
          return this;
        }
        /**
         * optional int32 sla_compliance = 8;
         */
        public Builder clearSlaCompliance() {
          bitField0_ = (bitField0_ & ~0x00000040);
          slaCompliance_ = 0;
          onChanged();
          return this;
        }

        // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstance)
      }

      static {
        defaultInstance = new NodeInstance(true);
        defaultInstance.initFields();
      }

      // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstance)
    }

    public interface ExclusiveGroupInstanceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance)
        com.google.protobuf.MessageOrBuilder {

      /**
       * repeated int64 group_node_instance_id = 1;
       */
      java.util.List getGroupNodeInstanceIdList();
      /**
       * repeated int64 group_node_instance_id = 1;
       */
      int getGroupNodeInstanceIdCount();
      /**
       * repeated int64 group_node_instance_id = 1;
       */
      long getGroupNodeInstanceId(int index);
    }
    /**
     * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance}
     */
    public static final class ExclusiveGroupInstance extends
        com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance)
        ExclusiveGroupInstanceOrBuilder {
      // Use ExclusiveGroupInstance.newBuilder() to construct.
      private ExclusiveGroupInstance(com.google.protobuf.GeneratedMessage.Builder builder) {
        super(builder);
        this.unknownFields = builder.getUnknownFields();
      }
      private ExclusiveGroupInstance(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

      private static final ExclusiveGroupInstance defaultInstance;
      public static ExclusiveGroupInstance getDefaultInstance() {
        return defaultInstance;
      }

      public ExclusiveGroupInstance getDefaultInstanceForType() {
        return defaultInstance;
      }

      private final com.google.protobuf.UnknownFieldSet unknownFields;
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
          getUnknownFields() {
        return this.unknownFields;
      }
      private ExclusiveGroupInstance(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        initFields();
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownField(input, unknownFields,
                                       extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  groupNodeInstanceId_ = new java.util.ArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                groupNodeInstanceId_.add(input.readInt64());
                break;
              }
              case 10: {
                int length = input.readRawVarint32();
                int limit = input.pushLimit(length);
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                  groupNodeInstanceId_ = new java.util.ArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                while (input.getBytesUntilLimit() > 0) {
                  groupNodeInstanceId_.add(input.readInt64());
                }
                input.popLimit(limit);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e.getMessage()).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            groupNodeInstanceId_ = java.util.Collections.unmodifiableList(groupNodeInstanceId_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder.class);
      }

      public static com.google.protobuf.Parser PARSER =
          new com.google.protobuf.AbstractParser() {
        public ExclusiveGroupInstance parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new ExclusiveGroupInstance(input, extensionRegistry);
        }
      };

      @java.lang.Override
      public com.google.protobuf.Parser getParserForType() {
        return PARSER;
      }

      public static final int GROUP_NODE_INSTANCE_ID_FIELD_NUMBER = 1;
      private java.util.List groupNodeInstanceId_;
      /**
       * repeated int64 group_node_instance_id = 1;
       */
      public java.util.List
          getGroupNodeInstanceIdList() {
        return groupNodeInstanceId_;
      }
      /**
       * repeated int64 group_node_instance_id = 1;
       */
      public int getGroupNodeInstanceIdCount() {
        return groupNodeInstanceId_.size();
      }
      /**
       * repeated int64 group_node_instance_id = 1;
       */
      public long getGroupNodeInstanceId(int index) {
        return groupNodeInstanceId_.get(index);
      }

      private void initFields() {
        groupNodeInstanceId_ = java.util.Collections.emptyList();
      }
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        for (int i = 0; i < groupNodeInstanceId_.size(); i++) {
          output.writeInt64(1, groupNodeInstanceId_.get(i));
        }
        getUnknownFields().writeTo(output);
      }

      private int memoizedSerializedSize = -1;
      public int getSerializedSize() {
        int size = memoizedSerializedSize;
        if (size != -1) return size;

        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < groupNodeInstanceId_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeInt64SizeNoTag(groupNodeInstanceId_.get(i));
          }
          size += dataSize;
          size += 1 * getGroupNodeInstanceIdList().size();
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSerializedSize = size;
        return size;
      }

      private static final long serialVersionUID = 0L;
      @java.lang.Override
      protected java.lang.Object writeReplace()
          throws java.io.ObjectStreamException {
        return super.writeReplace();
      }

      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }

      public static Builder newBuilder() { return Builder.create(); }
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance prototype) {
        return newBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() { return newBuilder(this); }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessage.Builder implements
          // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance)
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder.class);
        }

        // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          }
        }
        private static Builder create() {
          return new Builder();
        }

        public Builder clear() {
          super.clear();
          groupNodeInstanceId_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }

        public Builder clone() {
          return create().mergeFrom(buildPartial());
        }

        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_descriptor;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getDefaultInstanceForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.getDefaultInstance();
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance build() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance buildPartial() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            groupNodeInstanceId_ = java.util.Collections.unmodifiableList(groupNodeInstanceId_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.groupNodeInstanceId_ = groupNodeInstanceId_;
          onBuilt();
          return result;
        }

        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance) {
            return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance other) {
          if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.getDefaultInstance()) return this;
          if (!other.groupNodeInstanceId_.isEmpty()) {
            if (groupNodeInstanceId_.isEmpty()) {
              groupNodeInstanceId_ = other.groupNodeInstanceId_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureGroupNodeInstanceIdIsMutable();
              groupNodeInstanceId_.addAll(other.groupNodeInstanceId_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          return this;
        }

        public final boolean isInitialized() {
          return true;
        }

        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance) e.getUnfinishedMessage();
            throw e;
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;

        private java.util.List groupNodeInstanceId_ = java.util.Collections.emptyList();
        private void ensureGroupNodeInstanceIdIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            groupNodeInstanceId_ = new java.util.ArrayList(groupNodeInstanceId_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public java.util.List
            getGroupNodeInstanceIdList() {
          return java.util.Collections.unmodifiableList(groupNodeInstanceId_);
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public int getGroupNodeInstanceIdCount() {
          return groupNodeInstanceId_.size();
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public long getGroupNodeInstanceId(int index) {
          return groupNodeInstanceId_.get(index);
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public Builder setGroupNodeInstanceId(
            int index, long value) {
          ensureGroupNodeInstanceIdIsMutable();
          groupNodeInstanceId_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public Builder addGroupNodeInstanceId(long value) {
          ensureGroupNodeInstanceIdIsMutable();
          groupNodeInstanceId_.add(value);
          onChanged();
          return this;
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public Builder addAllGroupNodeInstanceId(
            java.lang.Iterable values) {
          ensureGroupNodeInstanceIdIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, groupNodeInstanceId_);
          onChanged();
          return this;
        }
        /**
         * repeated int64 group_node_instance_id = 1;
         */
        public Builder clearGroupNodeInstanceId() {
          groupNodeInstanceId_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }

        // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance)
      }

      static {
        defaultInstance = new ExclusiveGroupInstance(true);
        defaultInstance.initFields();
      }

      // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance)
    }

    public interface NodeInstanceContentOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent)
        com.google.protobuf.MessageOrBuilder {

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
       */
      boolean hasType();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType getType();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
       */
      boolean hasRuleSet();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode getRuleSet();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder getRuleSetOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
       */
      boolean hasHumanTask();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode getHumanTask();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder getHumanTaskOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
       */
      boolean hasWorkItem();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode getWorkItem();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder getWorkItemOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
       */
      boolean hasSubProcess();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode getSubProcess();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder getSubProcessOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
       */
      boolean hasMilestone();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode getMilestone();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder getMilestoneOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
       */
      boolean hasEvent();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode getEvent();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder getEventOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
       */
      boolean hasTimer();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode getTimer();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder getTimerOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
       */
      boolean hasJoin();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode getJoin();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder getJoinOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
       */
      boolean hasState();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode getState();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder getStateOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
       */
      boolean hasComposite();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode getComposite();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder getCompositeOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
       */
      boolean hasForEach();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode getForEach();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder getForEachOrBuilder();

      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
       */
      boolean hasAsyncEvent();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode getAsyncEvent();
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
       */
      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder getAsyncEventOrBuilder();
    }
    /**
     * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent}
     */
    public static final class NodeInstanceContent extends
        com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent)
        NodeInstanceContentOrBuilder {
      // Use NodeInstanceContent.newBuilder() to construct.
      private NodeInstanceContent(com.google.protobuf.GeneratedMessage.Builder builder) {
        super(builder);
        this.unknownFields = builder.getUnknownFields();
      }
      private NodeInstanceContent(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

      private static final NodeInstanceContent defaultInstance;
      public static NodeInstanceContent getDefaultInstance() {
        return defaultInstance;
      }

      public NodeInstanceContent getDefaultInstanceForType() {
        return defaultInstance;
      }

      private final com.google.protobuf.UnknownFieldSet unknownFields;
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
          getUnknownFields() {
        return this.unknownFields;
      }
      private NodeInstanceContent(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        initFields();
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownField(input, unknownFields,
                                       extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
                int rawValue = input.readEnum();
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType value = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType.valueOf(rawValue);
                if (value == null) {
                  unknownFields.mergeVarintField(1, rawValue);
                } else {
                  bitField0_ |= 0x00000001;
                  type_ = value;
                }
                break;
              }
              case 18: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000002) == 0x00000002)) {
                  subBuilder = ruleSet_.toBuilder();
                }
                ruleSet_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(ruleSet_);
                  ruleSet_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000002;
                break;
              }
              case 26: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000004) == 0x00000004)) {
                  subBuilder = humanTask_.toBuilder();
                }
                humanTask_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(humanTask_);
                  humanTask_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000004;
                break;
              }
              case 34: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000008) == 0x00000008)) {
                  subBuilder = workItem_.toBuilder();
                }
                workItem_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(workItem_);
                  workItem_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000008;
                break;
              }
              case 42: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000010) == 0x00000010)) {
                  subBuilder = subProcess_.toBuilder();
                }
                subProcess_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(subProcess_);
                  subProcess_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000010;
                break;
              }
              case 50: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000020) == 0x00000020)) {
                  subBuilder = milestone_.toBuilder();
                }
                milestone_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(milestone_);
                  milestone_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000020;
                break;
              }
              case 58: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000040) == 0x00000040)) {
                  subBuilder = event_.toBuilder();
                }
                event_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(event_);
                  event_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000040;
                break;
              }
              case 66: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000080) == 0x00000080)) {
                  subBuilder = timer_.toBuilder();
                }
                timer_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(timer_);
                  timer_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000080;
                break;
              }
              case 74: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000100) == 0x00000100)) {
                  subBuilder = join_.toBuilder();
                }
                join_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(join_);
                  join_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000100;
                break;
              }
              case 82: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000200) == 0x00000200)) {
                  subBuilder = state_.toBuilder();
                }
                state_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(state_);
                  state_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000200;
                break;
              }
              case 90: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000400) == 0x00000400)) {
                  subBuilder = composite_.toBuilder();
                }
                composite_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(composite_);
                  composite_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000400;
                break;
              }
              case 98: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00000800) == 0x00000800)) {
                  subBuilder = forEach_.toBuilder();
                }
                forEach_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(forEach_);
                  forEach_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00000800;
                break;
              }
              case 106: {
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder subBuilder = null;
                if (((bitField0_ & 0x00001000) == 0x00001000)) {
                  subBuilder = asyncEvent_.toBuilder();
                }
                asyncEvent_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.PARSER, extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(asyncEvent_);
                  asyncEvent_ = subBuilder.buildPartial();
                }
                bitField0_ |= 0x00001000;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e.getMessage()).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder.class);
      }

      public static com.google.protobuf.Parser PARSER =
          new com.google.protobuf.AbstractParser() {
        public NodeInstanceContent parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new NodeInstanceContent(input, extensionRegistry);
        }
      };

      @java.lang.Override
      public com.google.protobuf.Parser getParserForType() {
        return PARSER;
      }

      public interface RuleSetNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * repeated int64 timer_instance_id = 1;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 1;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 1;
         */
        long getTimerInstanceId(int index);

        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        java.util.List 
            getMapEntryList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry getMapEntry(int index);
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        int getMapEntryCount();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        java.util.List 
            getMapEntryOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder getMapEntryOrBuilder(
            int index);

        /**
         * optional string rule_flow_group = 3;
         */
        boolean hasRuleFlowGroup();
        /**
         * optional string rule_flow_group = 3;
         */
        java.lang.String getRuleFlowGroup();
        /**
         * optional string rule_flow_group = 3;
         */
        com.google.protobuf.ByteString
            getRuleFlowGroupBytes();
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode}
       */
      public static final class RuleSetNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode)
          RuleSetNodeOrBuilder {
        // Use RuleSetNode.newBuilder() to construct.
        private RuleSetNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private RuleSetNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final RuleSetNode defaultInstance;
        public static RuleSetNode getDefaultInstance() {
          return defaultInstance;
        }

        public RuleSetNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private RuleSetNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 10: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
                case 18: {
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    mapEntry_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  mapEntry_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.PARSER, extensionRegistry));
                  break;
                }
                case 26: {
                  com.google.protobuf.ByteString bs = input.readBytes();
                  bitField0_ |= 0x00000001;
                  ruleFlowGroup_ = bs;
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
              mapEntry_ = java.util.Collections.unmodifiableList(mapEntry_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public RuleSetNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new RuleSetNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        public interface TextMapEntryOrBuilder extends
            // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry)
            com.google.protobuf.MessageOrBuilder {

          /**
           * optional string name = 1;
           */
          boolean hasName();
          /**
           * optional string name = 1;
           */
          java.lang.String getName();
          /**
           * optional string name = 1;
           */
          com.google.protobuf.ByteString
              getNameBytes();

          /**
           * optional string value = 2;
           */
          boolean hasValue();
          /**
           * optional string value = 2;
           */
          java.lang.String getValue();
          /**
           * optional string value = 2;
           */
          com.google.protobuf.ByteString
              getValueBytes();
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry}
         */
        public static final class TextMapEntry extends
            com.google.protobuf.GeneratedMessage implements
            // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry)
            TextMapEntryOrBuilder {
          // Use TextMapEntry.newBuilder() to construct.
          private TextMapEntry(com.google.protobuf.GeneratedMessage.Builder builder) {
            super(builder);
            this.unknownFields = builder.getUnknownFields();
          }
          private TextMapEntry(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

          private static final TextMapEntry defaultInstance;
          public static TextMapEntry getDefaultInstance() {
            return defaultInstance;
          }

          public TextMapEntry getDefaultInstanceForType() {
            return defaultInstance;
          }

          private final com.google.protobuf.UnknownFieldSet unknownFields;
          @java.lang.Override
          public final com.google.protobuf.UnknownFieldSet
              getUnknownFields() {
            return this.unknownFields;
          }
          private TextMapEntry(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            initFields();
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
              boolean done = false;
              while (!done) {
                int tag = input.readTag();
                switch (tag) {
                  case 0:
                    done = true;
                    break;
                  default: {
                    if (!parseUnknownField(input, unknownFields,
                                           extensionRegistry, tag)) {
                      done = true;
                    }
                    break;
                  }
                  case 10: {
                    com.google.protobuf.ByteString bs = input.readBytes();
                    bitField0_ |= 0x00000001;
                    name_ = bs;
                    break;
                  }
                  case 18: {
                    com.google.protobuf.ByteString bs = input.readBytes();
                    bitField0_ |= 0x00000002;
                    value_ = bs;
                    break;
                  }
                }
              }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
              throw new com.google.protobuf.InvalidProtocolBufferException(
                  e.getMessage()).setUnfinishedMessage(this);
            } finally {
              this.unknownFields = unknownFields.build();
              makeExtensionsImmutable();
            }
          }
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder.class);
          }

          public static com.google.protobuf.Parser PARSER =
              new com.google.protobuf.AbstractParser() {
            public TextMapEntry parsePartialFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
              return new TextMapEntry(input, extensionRegistry);
            }
          };

          @java.lang.Override
          public com.google.protobuf.Parser getParserForType() {
            return PARSER;
          }

          private int bitField0_;
          public static final int NAME_FIELD_NUMBER = 1;
          private java.lang.Object name_;
          /**
           * optional string name = 1;
           */
          public boolean hasName() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional string name = 1;
           */
          public java.lang.String getName() {
            java.lang.Object ref = name_;
            if (ref instanceof java.lang.String) {
              return (java.lang.String) ref;
            } else {
              com.google.protobuf.ByteString bs = 
                  (com.google.protobuf.ByteString) ref;
              java.lang.String s = bs.toStringUtf8();
              if (bs.isValidUtf8()) {
                name_ = s;
              }
              return s;
            }
          }
          /**
           * optional string name = 1;
           */
          public com.google.protobuf.ByteString
              getNameBytes() {
            java.lang.Object ref = name_;
            if (ref instanceof java.lang.String) {
              com.google.protobuf.ByteString b = 
                  com.google.protobuf.ByteString.copyFromUtf8(
                      (java.lang.String) ref);
              name_ = b;
              return b;
            } else {
              return (com.google.protobuf.ByteString) ref;
            }
          }

          public static final int VALUE_FIELD_NUMBER = 2;
          private java.lang.Object value_;
          /**
           * optional string value = 2;
           */
          public boolean hasValue() {
            return ((bitField0_ & 0x00000002) == 0x00000002);
          }
          /**
           * optional string value = 2;
           */
          public java.lang.String getValue() {
            java.lang.Object ref = value_;
            if (ref instanceof java.lang.String) {
              return (java.lang.String) ref;
            } else {
              com.google.protobuf.ByteString bs = 
                  (com.google.protobuf.ByteString) ref;
              java.lang.String s = bs.toStringUtf8();
              if (bs.isValidUtf8()) {
                value_ = s;
              }
              return s;
            }
          }
          /**
           * optional string value = 2;
           */
          public com.google.protobuf.ByteString
              getValueBytes() {
            java.lang.Object ref = value_;
            if (ref instanceof java.lang.String) {
              com.google.protobuf.ByteString b = 
                  com.google.protobuf.ByteString.copyFromUtf8(
                      (java.lang.String) ref);
              value_ = b;
              return b;
            } else {
              return (com.google.protobuf.ByteString) ref;
            }
          }

          private void initFields() {
            name_ = "";
            value_ = "";
          }
          private byte memoizedIsInitialized = -1;
          public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
          }

          public void writeTo(com.google.protobuf.CodedOutputStream output)
                              throws java.io.IOException {
            getSerializedSize();
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              output.writeBytes(1, getNameBytes());
            }
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              output.writeBytes(2, getValueBytes());
            }
            getUnknownFields().writeTo(output);
          }

          private int memoizedSerializedSize = -1;
          public int getSerializedSize() {
            int size = memoizedSerializedSize;
            if (size != -1) return size;

            size = 0;
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              size += com.google.protobuf.CodedOutputStream
                .computeBytesSize(1, getNameBytes());
            }
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              size += com.google.protobuf.CodedOutputStream
                .computeBytesSize(2, getValueBytes());
            }
            size += getUnknownFields().getSerializedSize();
            memoizedSerializedSize = size;
            return size;
          }

          private static final long serialVersionUID = 0L;
          @java.lang.Override
          protected java.lang.Object writeReplace()
              throws java.io.ObjectStreamException {
            return super.writeReplace();
          }

          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(
              com.google.protobuf.ByteString data)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(
              com.google.protobuf.ByteString data,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(byte[] data)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(
              byte[] data,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(java.io.InputStream input)
              throws java.io.IOException {
            return PARSER.parseFrom(input);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(
              java.io.InputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            return PARSER.parseFrom(input, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseDelimitedFrom(java.io.InputStream input)
              throws java.io.IOException {
            return PARSER.parseDelimitedFrom(input);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseDelimitedFrom(
              java.io.InputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            return PARSER.parseDelimitedFrom(input, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(
              com.google.protobuf.CodedInputStream input)
              throws java.io.IOException {
            return PARSER.parseFrom(input);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parseFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            return PARSER.parseFrom(input, extensionRegistry);
          }

          public static Builder newBuilder() { return Builder.create(); }
          public Builder newBuilderForType() { return newBuilder(); }
          public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry prototype) {
            return newBuilder().mergeFrom(prototype);
          }
          public Builder toBuilder() { return newBuilder(this); }

          @java.lang.Override
          protected Builder newBuilderForType(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
          }
          /**
           * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry}
           */
          public static final class Builder extends
              com.google.protobuf.GeneratedMessage.Builder implements
              // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry)
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
                getDescriptor() {
              return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_descriptor;
            }

            protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                internalGetFieldAccessorTable() {
              return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_fieldAccessorTable
                  .ensureFieldAccessorsInitialized(
                      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder.class);
            }

            // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.newBuilder()
            private Builder() {
              maybeForceBuilderInitialization();
            }

            private Builder(
                com.google.protobuf.GeneratedMessage.BuilderParent parent) {
              super(parent);
              maybeForceBuilderInitialization();
            }
            private void maybeForceBuilderInitialization() {
              if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
              }
            }
            private static Builder create() {
              return new Builder();
            }

            public Builder clear() {
              super.clear();
              name_ = "";
              bitField0_ = (bitField0_ & ~0x00000001);
              value_ = "";
              bitField0_ = (bitField0_ & ~0x00000002);
              return this;
            }

            public Builder clone() {
              return create().mergeFrom(buildPartial());
            }

            public com.google.protobuf.Descriptors.Descriptor
                getDescriptorForType() {
              return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_descriptor;
            }

            public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry getDefaultInstanceForType() {
              return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.getDefaultInstance();
            }

            public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry build() {
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry result = buildPartial();
              if (!result.isInitialized()) {
                throw newUninitializedMessageException(result);
              }
              return result;
            }

            public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry buildPartial() {
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry(this);
              int from_bitField0_ = bitField0_;
              int to_bitField0_ = 0;
              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
                to_bitField0_ |= 0x00000001;
              }
              result.name_ = name_;
              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
                to_bitField0_ |= 0x00000002;
              }
              result.value_ = value_;
              result.bitField0_ = to_bitField0_;
              onBuilt();
              return result;
            }

            public Builder mergeFrom(com.google.protobuf.Message other) {
              if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry) {
                return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry)other);
              } else {
                super.mergeFrom(other);
                return this;
              }
            }

            public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry other) {
              if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.getDefaultInstance()) return this;
              if (other.hasName()) {
                bitField0_ |= 0x00000001;
                name_ = other.name_;
                onChanged();
              }
              if (other.hasValue()) {
                bitField0_ |= 0x00000002;
                value_ = other.value_;
                onChanged();
              }
              this.mergeUnknownFields(other.getUnknownFields());
              return this;
            }

            public final boolean isInitialized() {
              return true;
            }

            public Builder mergeFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry parsedMessage = null;
              try {
                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry) e.getUnfinishedMessage();
                throw e;
              } finally {
                if (parsedMessage != null) {
                  mergeFrom(parsedMessage);
                }
              }
              return this;
            }
            private int bitField0_;

            private java.lang.Object name_ = "";
            /**
             * optional string name = 1;
             */
            public boolean hasName() {
              return ((bitField0_ & 0x00000001) == 0x00000001);
            }
            /**
             * optional string name = 1;
             */
            public java.lang.String getName() {
              java.lang.Object ref = name_;
              if (!(ref instanceof java.lang.String)) {
                com.google.protobuf.ByteString bs =
                    (com.google.protobuf.ByteString) ref;
                java.lang.String s = bs.toStringUtf8();
                if (bs.isValidUtf8()) {
                  name_ = s;
                }
                return s;
              } else {
                return (java.lang.String) ref;
              }
            }
            /**
             * optional string name = 1;
             */
            public com.google.protobuf.ByteString
                getNameBytes() {
              java.lang.Object ref = name_;
              if (ref instanceof String) {
                com.google.protobuf.ByteString b = 
                    com.google.protobuf.ByteString.copyFromUtf8(
                        (java.lang.String) ref);
                name_ = b;
                return b;
              } else {
                return (com.google.protobuf.ByteString) ref;
              }
            }
            /**
             * optional string name = 1;
             */
            public Builder setName(
                java.lang.String value) {
              if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
              name_ = value;
              onChanged();
              return this;
            }
            /**
             * optional string name = 1;
             */
            public Builder clearName() {
              bitField0_ = (bitField0_ & ~0x00000001);
              name_ = getDefaultInstance().getName();
              onChanged();
              return this;
            }
            /**
             * optional string name = 1;
             */
            public Builder setNameBytes(
                com.google.protobuf.ByteString value) {
              if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
              name_ = value;
              onChanged();
              return this;
            }

            private java.lang.Object value_ = "";
            /**
             * optional string value = 2;
             */
            public boolean hasValue() {
              return ((bitField0_ & 0x00000002) == 0x00000002);
            }
            /**
             * optional string value = 2;
             */
            public java.lang.String getValue() {
              java.lang.Object ref = value_;
              if (!(ref instanceof java.lang.String)) {
                com.google.protobuf.ByteString bs =
                    (com.google.protobuf.ByteString) ref;
                java.lang.String s = bs.toStringUtf8();
                if (bs.isValidUtf8()) {
                  value_ = s;
                }
                return s;
              } else {
                return (java.lang.String) ref;
              }
            }
            /**
             * optional string value = 2;
             */
            public com.google.protobuf.ByteString
                getValueBytes() {
              java.lang.Object ref = value_;
              if (ref instanceof String) {
                com.google.protobuf.ByteString b = 
                    com.google.protobuf.ByteString.copyFromUtf8(
                        (java.lang.String) ref);
                value_ = b;
                return b;
              } else {
                return (com.google.protobuf.ByteString) ref;
              }
            }
            /**
             * optional string value = 2;
             */
            public Builder setValue(
                java.lang.String value) {
              if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
              value_ = value;
              onChanged();
              return this;
            }
            /**
             * optional string value = 2;
             */
            public Builder clearValue() {
              bitField0_ = (bitField0_ & ~0x00000002);
              value_ = getDefaultInstance().getValue();
              onChanged();
              return this;
            }
            /**
             * optional string value = 2;
             */
            public Builder setValueBytes(
                com.google.protobuf.ByteString value) {
              if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
              value_ = value;
              onChanged();
              return this;
            }

            // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry)
          }

          static {
            defaultInstance = new TextMapEntry(true);
            defaultInstance.initFields();
          }

          // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry)
        }

        private int bitField0_;
        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 1;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        public static final int MAPENTRY_FIELD_NUMBER = 2;
        private java.util.List mapEntry_;
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        public java.util.List getMapEntryList() {
          return mapEntry_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        public java.util.List 
            getMapEntryOrBuilderList() {
          return mapEntry_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        public int getMapEntryCount() {
          return mapEntry_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry getMapEntry(int index) {
          return mapEntry_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder getMapEntryOrBuilder(
            int index) {
          return mapEntry_.get(index);
        }

        public static final int RULE_FLOW_GROUP_FIELD_NUMBER = 3;
        private java.lang.Object ruleFlowGroup_;
        /**
         * optional string rule_flow_group = 3;
         */
        public boolean hasRuleFlowGroup() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional string rule_flow_group = 3;
         */
        public java.lang.String getRuleFlowGroup() {
          java.lang.Object ref = ruleFlowGroup_;
          if (ref instanceof java.lang.String) {
            return (java.lang.String) ref;
          } else {
            com.google.protobuf.ByteString bs = 
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              ruleFlowGroup_ = s;
            }
            return s;
          }
        }
        /**
         * optional string rule_flow_group = 3;
         */
        public com.google.protobuf.ByteString
            getRuleFlowGroupBytes() {
          java.lang.Object ref = ruleFlowGroup_;
          if (ref instanceof java.lang.String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            ruleFlowGroup_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }

        private void initFields() {
          timerInstanceId_ = java.util.Collections.emptyList();
          mapEntry_ = java.util.Collections.emptyList();
          ruleFlowGroup_ = "";
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(1, timerInstanceId_.get(i));
          }
          for (int i = 0; i < mapEntry_.size(); i++) {
            output.writeMessage(2, mapEntry_.get(i));
          }
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeBytes(3, getRuleFlowGroupBytes());
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          for (int i = 0; i < mapEntry_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(2, mapEntry_.get(i));
          }
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeBytesSize(3, getRuleFlowGroupBytes());
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
              getMapEntryFieldBuilder();
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            if (mapEntryBuilder_ == null) {
              mapEntry_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              mapEntryBuilder_.clear();
            }
            ruleFlowGroup_ = "";
            bitField0_ = (bitField0_ & ~0x00000004);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.timerInstanceId_ = timerInstanceId_;
            if (mapEntryBuilder_ == null) {
              if (((bitField0_ & 0x00000002) == 0x00000002)) {
                mapEntry_ = java.util.Collections.unmodifiableList(mapEntry_);
                bitField0_ = (bitField0_ & ~0x00000002);
              }
              result.mapEntry_ = mapEntry_;
            } else {
              result.mapEntry_ = mapEntryBuilder_.build();
            }
            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
              to_bitField0_ |= 0x00000001;
            }
            result.ruleFlowGroup_ = ruleFlowGroup_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance()) return this;
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            if (mapEntryBuilder_ == null) {
              if (!other.mapEntry_.isEmpty()) {
                if (mapEntry_.isEmpty()) {
                  mapEntry_ = other.mapEntry_;
                  bitField0_ = (bitField0_ & ~0x00000002);
                } else {
                  ensureMapEntryIsMutable();
                  mapEntry_.addAll(other.mapEntry_);
                }
                onChanged();
              }
            } else {
              if (!other.mapEntry_.isEmpty()) {
                if (mapEntryBuilder_.isEmpty()) {
                  mapEntryBuilder_.dispose();
                  mapEntryBuilder_ = null;
                  mapEntry_ = other.mapEntry_;
                  bitField0_ = (bitField0_ & ~0x00000002);
                  mapEntryBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getMapEntryFieldBuilder() : null;
                } else {
                  mapEntryBuilder_.addAllMessages(other.mapEntry_);
                }
              }
            }
            if (other.hasRuleFlowGroup()) {
              bitField0_ |= 0x00000004;
              ruleFlowGroup_ = other.ruleFlowGroup_;
              onChanged();
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000001;
             }
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
            return this;
          }

          private java.util.List mapEntry_ =
            java.util.Collections.emptyList();
          private void ensureMapEntryIsMutable() {
            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
              mapEntry_ = new java.util.ArrayList(mapEntry_);
              bitField0_ |= 0x00000002;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder> mapEntryBuilder_;

          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public java.util.List getMapEntryList() {
            if (mapEntryBuilder_ == null) {
              return java.util.Collections.unmodifiableList(mapEntry_);
            } else {
              return mapEntryBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public int getMapEntryCount() {
            if (mapEntryBuilder_ == null) {
              return mapEntry_.size();
            } else {
              return mapEntryBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry getMapEntry(int index) {
            if (mapEntryBuilder_ == null) {
              return mapEntry_.get(index);
            } else {
              return mapEntryBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder setMapEntry(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry value) {
            if (mapEntryBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureMapEntryIsMutable();
              mapEntry_.set(index, value);
              onChanged();
            } else {
              mapEntryBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder setMapEntry(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder builderForValue) {
            if (mapEntryBuilder_ == null) {
              ensureMapEntryIsMutable();
              mapEntry_.set(index, builderForValue.build());
              onChanged();
            } else {
              mapEntryBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder addMapEntry(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry value) {
            if (mapEntryBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureMapEntryIsMutable();
              mapEntry_.add(value);
              onChanged();
            } else {
              mapEntryBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder addMapEntry(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry value) {
            if (mapEntryBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureMapEntryIsMutable();
              mapEntry_.add(index, value);
              onChanged();
            } else {
              mapEntryBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder addMapEntry(
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder builderForValue) {
            if (mapEntryBuilder_ == null) {
              ensureMapEntryIsMutable();
              mapEntry_.add(builderForValue.build());
              onChanged();
            } else {
              mapEntryBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder addMapEntry(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder builderForValue) {
            if (mapEntryBuilder_ == null) {
              ensureMapEntryIsMutable();
              mapEntry_.add(index, builderForValue.build());
              onChanged();
            } else {
              mapEntryBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder addAllMapEntry(
              java.lang.Iterable values) {
            if (mapEntryBuilder_ == null) {
              ensureMapEntryIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, mapEntry_);
              onChanged();
            } else {
              mapEntryBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder clearMapEntry() {
            if (mapEntryBuilder_ == null) {
              mapEntry_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000002);
              onChanged();
            } else {
              mapEntryBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public Builder removeMapEntry(int index) {
            if (mapEntryBuilder_ == null) {
              ensureMapEntryIsMutable();
              mapEntry_.remove(index);
              onChanged();
            } else {
              mapEntryBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder getMapEntryBuilder(
              int index) {
            return getMapEntryFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder getMapEntryOrBuilder(
              int index) {
            if (mapEntryBuilder_ == null) {
              return mapEntry_.get(index);  } else {
              return mapEntryBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public java.util.List 
               getMapEntryOrBuilderList() {
            if (mapEntryBuilder_ != null) {
              return mapEntryBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(mapEntry_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder addMapEntryBuilder() {
            return getMapEntryFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder addMapEntryBuilder(
              int index) {
            return getMapEntryFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry mapEntry = 2;
           */
          public java.util.List 
               getMapEntryBuilderList() {
            return getMapEntryFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder> 
              getMapEntryFieldBuilder() {
            if (mapEntryBuilder_ == null) {
              mapEntryBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntry.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.TextMapEntryOrBuilder>(
                      mapEntry_,
                      ((bitField0_ & 0x00000002) == 0x00000002),
                      getParentForChildren(),
                      isClean());
              mapEntry_ = null;
            }
            return mapEntryBuilder_;
          }

          private java.lang.Object ruleFlowGroup_ = "";
          /**
           * optional string rule_flow_group = 3;
           */
          public boolean hasRuleFlowGroup() {
            return ((bitField0_ & 0x00000004) == 0x00000004);
          }
          /**
           * optional string rule_flow_group = 3;
           */
          public java.lang.String getRuleFlowGroup() {
            java.lang.Object ref = ruleFlowGroup_;
            if (!(ref instanceof java.lang.String)) {
              com.google.protobuf.ByteString bs =
                  (com.google.protobuf.ByteString) ref;
              java.lang.String s = bs.toStringUtf8();
              if (bs.isValidUtf8()) {
                ruleFlowGroup_ = s;
              }
              return s;
            } else {
              return (java.lang.String) ref;
            }
          }
          /**
           * optional string rule_flow_group = 3;
           */
          public com.google.protobuf.ByteString
              getRuleFlowGroupBytes() {
            java.lang.Object ref = ruleFlowGroup_;
            if (ref instanceof String) {
              com.google.protobuf.ByteString b = 
                  com.google.protobuf.ByteString.copyFromUtf8(
                      (java.lang.String) ref);
              ruleFlowGroup_ = b;
              return b;
            } else {
              return (com.google.protobuf.ByteString) ref;
            }
          }
          /**
           * optional string rule_flow_group = 3;
           */
          public Builder setRuleFlowGroup(
              java.lang.String value) {
            if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
            ruleFlowGroup_ = value;
            onChanged();
            return this;
          }
          /**
           * optional string rule_flow_group = 3;
           */
          public Builder clearRuleFlowGroup() {
            bitField0_ = (bitField0_ & ~0x00000004);
            ruleFlowGroup_ = getDefaultInstance().getRuleFlowGroup();
            onChanged();
            return this;
          }
          /**
           * optional string rule_flow_group = 3;
           */
          public Builder setRuleFlowGroupBytes(
              com.google.protobuf.ByteString value) {
            if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
            ruleFlowGroup_ = value;
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode)
        }

        static {
          defaultInstance = new RuleSetNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode)
      }

      public interface HumanTaskNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * optional int64 work_item_id = 1;
         */
        boolean hasWorkItemId();
        /**
         * optional int64 work_item_id = 1;
         */
        long getWorkItemId();

        /**
         * repeated int64 timer_instance_id = 2;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        long getTimerInstanceId(int index);

        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        boolean hasErrorHandlingProcessInstanceId();
        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        long getErrorHandlingProcessInstanceId();

        /**
         * optional int64 timer_instance_id_suspendUntil = 4;
         */
        boolean hasTimerInstanceIdSuspendUntil();
        /**
         * optional int64 timer_instance_id_suspendUntil = 4;
         */
        long getTimerInstanceIdSuspendUntil();
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode}
       */
      public static final class HumanTaskNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode)
          HumanTaskNodeOrBuilder {
        // Use HumanTaskNode.newBuilder() to construct.
        private HumanTaskNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private HumanTaskNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final HumanTaskNode defaultInstance;
        public static HumanTaskNode getDefaultInstance() {
          return defaultInstance;
        }

        public HumanTaskNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private HumanTaskNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  bitField0_ |= 0x00000001;
                  workItemId_ = input.readInt64();
                  break;
                }
                case 16: {
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 18: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
                case 24: {
                  bitField0_ |= 0x00000002;
                  errorHandlingProcessInstanceId_ = input.readInt64();
                  break;
                }
                case 32: {
                  bitField0_ |= 0x00000004;
                  timerInstanceIdSuspendUntil_ = input.readInt64();
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public HumanTaskNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new HumanTaskNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private int bitField0_;
        public static final int WORK_ITEM_ID_FIELD_NUMBER = 1;
        private long workItemId_;
        /**
         * optional int64 work_item_id = 1;
         */
        public boolean hasWorkItemId() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional int64 work_item_id = 1;
         */
        public long getWorkItemId() {
          return workItemId_;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 2;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        public static final int ERROR_HANDLING_PROCESS_INSTANCE_ID_FIELD_NUMBER = 3;
        private long errorHandlingProcessInstanceId_;
        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        public boolean hasErrorHandlingProcessInstanceId() {
          return ((bitField0_ & 0x00000002) == 0x00000002);
        }
        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        public long getErrorHandlingProcessInstanceId() {
          return errorHandlingProcessInstanceId_;
        }

        public static final int TIMER_INSTANCE_ID_SUSPENDUNTIL_FIELD_NUMBER = 4;
        private long timerInstanceIdSuspendUntil_;
        /**
         * optional int64 timer_instance_id_suspendUntil = 4;
         */
        public boolean hasTimerInstanceIdSuspendUntil() {
          return ((bitField0_ & 0x00000004) == 0x00000004);
        }
        /**
         * optional int64 timer_instance_id_suspendUntil = 4;
         */
        public long getTimerInstanceIdSuspendUntil() {
          return timerInstanceIdSuspendUntil_;
        }

        private void initFields() {
          workItemId_ = 0L;
          timerInstanceId_ = java.util.Collections.emptyList();
          errorHandlingProcessInstanceId_ = 0L;
          timerInstanceIdSuspendUntil_ = 0L;
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeInt64(1, workItemId_);
          }
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(2, timerInstanceId_.get(i));
          }
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            output.writeInt64(3, errorHandlingProcessInstanceId_);
          }
          if (((bitField0_ & 0x00000004) == 0x00000004)) {
            output.writeInt64(4, timerInstanceIdSuspendUntil_);
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(1, workItemId_);
          }
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(3, errorHandlingProcessInstanceId_);
          }
          if (((bitField0_ & 0x00000004) == 0x00000004)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(4, timerInstanceIdSuspendUntil_);
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            workItemId_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000001);
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            errorHandlingProcessInstanceId_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000004);
            timerInstanceIdSuspendUntil_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000008);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
              to_bitField0_ |= 0x00000001;
            }
            result.workItemId_ = workItemId_;
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.timerInstanceId_ = timerInstanceId_;
            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
              to_bitField0_ |= 0x00000002;
            }
            result.errorHandlingProcessInstanceId_ = errorHandlingProcessInstanceId_;
            if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
              to_bitField0_ |= 0x00000004;
            }
            result.timerInstanceIdSuspendUntil_ = timerInstanceIdSuspendUntil_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance()) return this;
            if (other.hasWorkItemId()) {
              setWorkItemId(other.getWorkItemId());
            }
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            if (other.hasErrorHandlingProcessInstanceId()) {
              setErrorHandlingProcessInstanceId(other.getErrorHandlingProcessInstanceId());
            }
            if (other.hasTimerInstanceIdSuspendUntil()) {
              setTimerInstanceIdSuspendUntil(other.getTimerInstanceIdSuspendUntil());
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private long workItemId_ ;
          /**
           * optional int64 work_item_id = 1;
           */
          public boolean hasWorkItemId() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional int64 work_item_id = 1;
           */
          public long getWorkItemId() {
            return workItemId_;
          }
          /**
           * optional int64 work_item_id = 1;
           */
          public Builder setWorkItemId(long value) {
            bitField0_ |= 0x00000001;
            workItemId_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 work_item_id = 1;
           */
          public Builder clearWorkItemId() {
            bitField0_ = (bitField0_ & ~0x00000001);
            workItemId_ = 0L;
            onChanged();
            return this;
          }

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000002;
             }
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
            return this;
          }

          private long errorHandlingProcessInstanceId_ ;
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public boolean hasErrorHandlingProcessInstanceId() {
            return ((bitField0_ & 0x00000004) == 0x00000004);
          }
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public long getErrorHandlingProcessInstanceId() {
            return errorHandlingProcessInstanceId_;
          }
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public Builder setErrorHandlingProcessInstanceId(long value) {
            bitField0_ |= 0x00000004;
            errorHandlingProcessInstanceId_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public Builder clearErrorHandlingProcessInstanceId() {
            bitField0_ = (bitField0_ & ~0x00000004);
            errorHandlingProcessInstanceId_ = 0L;
            onChanged();
            return this;
          }

          private long timerInstanceIdSuspendUntil_ ;
          /**
           * optional int64 timer_instance_id_suspendUntil = 4;
           */
          public boolean hasTimerInstanceIdSuspendUntil() {
            return ((bitField0_ & 0x00000008) == 0x00000008);
          }
          /**
           * optional int64 timer_instance_id_suspendUntil = 4;
           */
          public long getTimerInstanceIdSuspendUntil() {
            return timerInstanceIdSuspendUntil_;
          }
          /**
           * optional int64 timer_instance_id_suspendUntil = 4;
           */
          public Builder setTimerInstanceIdSuspendUntil(long value) {
            bitField0_ |= 0x00000008;
            timerInstanceIdSuspendUntil_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 timer_instance_id_suspendUntil = 4;
           */
          public Builder clearTimerInstanceIdSuspendUntil() {
            bitField0_ = (bitField0_ & ~0x00000008);
            timerInstanceIdSuspendUntil_ = 0L;
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode)
        }

        static {
          defaultInstance = new HumanTaskNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode)
      }

      public interface WorkItemNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * optional int64 work_item_id = 1;
         */
        boolean hasWorkItemId();
        /**
         * optional int64 work_item_id = 1;
         */
        long getWorkItemId();

        /**
         * repeated int64 timer_instance_id = 2;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        long getTimerInstanceId(int index);

        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        boolean hasErrorHandlingProcessInstanceId();
        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        long getErrorHandlingProcessInstanceId();
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode}
       */
      public static final class WorkItemNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode)
          WorkItemNodeOrBuilder {
        // Use WorkItemNode.newBuilder() to construct.
        private WorkItemNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private WorkItemNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final WorkItemNode defaultInstance;
        public static WorkItemNode getDefaultInstance() {
          return defaultInstance;
        }

        public WorkItemNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private WorkItemNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  bitField0_ |= 0x00000001;
                  workItemId_ = input.readInt64();
                  break;
                }
                case 16: {
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 18: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
                case 24: {
                  bitField0_ |= 0x00000002;
                  errorHandlingProcessInstanceId_ = input.readInt64();
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public WorkItemNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new WorkItemNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private int bitField0_;
        public static final int WORK_ITEM_ID_FIELD_NUMBER = 1;
        private long workItemId_;
        /**
         * optional int64 work_item_id = 1;
         */
        public boolean hasWorkItemId() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional int64 work_item_id = 1;
         */
        public long getWorkItemId() {
          return workItemId_;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 2;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        public static final int ERROR_HANDLING_PROCESS_INSTANCE_ID_FIELD_NUMBER = 3;
        private long errorHandlingProcessInstanceId_;
        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        public boolean hasErrorHandlingProcessInstanceId() {
          return ((bitField0_ & 0x00000002) == 0x00000002);
        }
        /**
         * optional int64 error_handling_process_instance_id = 3;
         */
        public long getErrorHandlingProcessInstanceId() {
          return errorHandlingProcessInstanceId_;
        }

        private void initFields() {
          workItemId_ = 0L;
          timerInstanceId_ = java.util.Collections.emptyList();
          errorHandlingProcessInstanceId_ = 0L;
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeInt64(1, workItemId_);
          }
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(2, timerInstanceId_.get(i));
          }
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            output.writeInt64(3, errorHandlingProcessInstanceId_);
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(1, workItemId_);
          }
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(3, errorHandlingProcessInstanceId_);
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            workItemId_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000001);
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            errorHandlingProcessInstanceId_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000004);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
              to_bitField0_ |= 0x00000001;
            }
            result.workItemId_ = workItemId_;
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.timerInstanceId_ = timerInstanceId_;
            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
              to_bitField0_ |= 0x00000002;
            }
            result.errorHandlingProcessInstanceId_ = errorHandlingProcessInstanceId_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance()) return this;
            if (other.hasWorkItemId()) {
              setWorkItemId(other.getWorkItemId());
            }
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            if (other.hasErrorHandlingProcessInstanceId()) {
              setErrorHandlingProcessInstanceId(other.getErrorHandlingProcessInstanceId());
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private long workItemId_ ;
          /**
           * optional int64 work_item_id = 1;
           */
          public boolean hasWorkItemId() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional int64 work_item_id = 1;
           */
          public long getWorkItemId() {
            return workItemId_;
          }
          /**
           * optional int64 work_item_id = 1;
           */
          public Builder setWorkItemId(long value) {
            bitField0_ |= 0x00000001;
            workItemId_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 work_item_id = 1;
           */
          public Builder clearWorkItemId() {
            bitField0_ = (bitField0_ & ~0x00000001);
            workItemId_ = 0L;
            onChanged();
            return this;
          }

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000002;
             }
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
            return this;
          }

          private long errorHandlingProcessInstanceId_ ;
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public boolean hasErrorHandlingProcessInstanceId() {
            return ((bitField0_ & 0x00000004) == 0x00000004);
          }
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public long getErrorHandlingProcessInstanceId() {
            return errorHandlingProcessInstanceId_;
          }
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public Builder setErrorHandlingProcessInstanceId(long value) {
            bitField0_ |= 0x00000004;
            errorHandlingProcessInstanceId_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 error_handling_process_instance_id = 3;
           */
          public Builder clearErrorHandlingProcessInstanceId() {
            bitField0_ = (bitField0_ & ~0x00000004);
            errorHandlingProcessInstanceId_ = 0L;
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode)
        }

        static {
          defaultInstance = new WorkItemNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode)
      }

      public interface SubProcessNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * optional int64 process_instance_id = 1;
         */
        boolean hasProcessInstanceId();
        /**
         * optional int64 process_instance_id = 1;
         */
        long getProcessInstanceId();

        /**
         * repeated int64 timer_instance_id = 2;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        long getTimerInstanceId(int index);
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode}
       */
      public static final class SubProcessNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode)
          SubProcessNodeOrBuilder {
        // Use SubProcessNode.newBuilder() to construct.
        private SubProcessNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private SubProcessNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final SubProcessNode defaultInstance;
        public static SubProcessNode getDefaultInstance() {
          return defaultInstance;
        }

        public SubProcessNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private SubProcessNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  bitField0_ |= 0x00000001;
                  processInstanceId_ = input.readInt64();
                  break;
                }
                case 16: {
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 18: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public SubProcessNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new SubProcessNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private int bitField0_;
        public static final int PROCESS_INSTANCE_ID_FIELD_NUMBER = 1;
        private long processInstanceId_;
        /**
         * optional int64 process_instance_id = 1;
         */
        public boolean hasProcessInstanceId() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional int64 process_instance_id = 1;
         */
        public long getProcessInstanceId() {
          return processInstanceId_;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 2;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        private void initFields() {
          processInstanceId_ = 0L;
          timerInstanceId_ = java.util.Collections.emptyList();
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeInt64(1, processInstanceId_);
          }
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(2, timerInstanceId_.get(i));
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(1, processInstanceId_);
          }
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            processInstanceId_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000001);
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
              to_bitField0_ |= 0x00000001;
            }
            result.processInstanceId_ = processInstanceId_;
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.timerInstanceId_ = timerInstanceId_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance()) return this;
            if (other.hasProcessInstanceId()) {
              setProcessInstanceId(other.getProcessInstanceId());
            }
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private long processInstanceId_ ;
          /**
           * optional int64 process_instance_id = 1;
           */
          public boolean hasProcessInstanceId() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional int64 process_instance_id = 1;
           */
          public long getProcessInstanceId() {
            return processInstanceId_;
          }
          /**
           * optional int64 process_instance_id = 1;
           */
          public Builder setProcessInstanceId(long value) {
            bitField0_ |= 0x00000001;
            processInstanceId_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 process_instance_id = 1;
           */
          public Builder clearProcessInstanceId() {
            bitField0_ = (bitField0_ & ~0x00000001);
            processInstanceId_ = 0L;
            onChanged();
            return this;
          }

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000002;
             }
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode)
        }

        static {
          defaultInstance = new SubProcessNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode)
      }

      public interface MilestoneNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * repeated int64 timer_instance_id = 1;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 1;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 1;
         */
        long getTimerInstanceId(int index);
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode}
       */
      public static final class MilestoneNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode)
          MilestoneNodeOrBuilder {
        // Use MilestoneNode.newBuilder() to construct.
        private MilestoneNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private MilestoneNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final MilestoneNode defaultInstance;
        public static MilestoneNode getDefaultInstance() {
          return defaultInstance;
        }

        public MilestoneNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private MilestoneNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 10: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public MilestoneNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new MilestoneNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 1;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        private void initFields() {
          timerInstanceId_ = java.util.Collections.emptyList();
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(1, timerInstanceId_.get(i));
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode(this);
            int from_bitField0_ = bitField0_;
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.timerInstanceId_ = timerInstanceId_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance()) return this;
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000001;
             }
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode)
        }

        static {
          defaultInstance = new MilestoneNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode)
      }

      public interface EventNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode)
          com.google.protobuf.MessageOrBuilder {
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode}
       */
      public static final class EventNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode)
          EventNodeOrBuilder {
        // Use EventNode.newBuilder() to construct.
        private EventNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private EventNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final EventNode defaultInstance;
        public static EventNode getDefaultInstance() {
          return defaultInstance;
        }

        public EventNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private EventNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public EventNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new EventNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private void initFields() {
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode(this);
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance()) return this;
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode)
        }

        static {
          defaultInstance = new EventNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode)
      }

      public interface TimerNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * optional int64 timer_id = 1;
         */
        boolean hasTimerId();
        /**
         * optional int64 timer_id = 1;
         */
        long getTimerId();
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode}
       */
      public static final class TimerNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode)
          TimerNodeOrBuilder {
        // Use TimerNode.newBuilder() to construct.
        private TimerNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private TimerNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final TimerNode defaultInstance;
        public static TimerNode getDefaultInstance() {
          return defaultInstance;
        }

        public TimerNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private TimerNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  bitField0_ |= 0x00000001;
                  timerId_ = input.readInt64();
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public TimerNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new TimerNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private int bitField0_;
        public static final int TIMER_ID_FIELD_NUMBER = 1;
        private long timerId_;
        /**
         * optional int64 timer_id = 1;
         */
        public boolean hasTimerId() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional int64 timer_id = 1;
         */
        public long getTimerId() {
          return timerId_;
        }

        private void initFields() {
          timerId_ = 0L;
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeInt64(1, timerId_);
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt64Size(1, timerId_);
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            timerId_ = 0L;
            bitField0_ = (bitField0_ & ~0x00000001);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
              to_bitField0_ |= 0x00000001;
            }
            result.timerId_ = timerId_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance()) return this;
            if (other.hasTimerId()) {
              setTimerId(other.getTimerId());
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private long timerId_ ;
          /**
           * optional int64 timer_id = 1;
           */
          public boolean hasTimerId() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional int64 timer_id = 1;
           */
          public long getTimerId() {
            return timerId_;
          }
          /**
           * optional int64 timer_id = 1;
           */
          public Builder setTimerId(long value) {
            bitField0_ |= 0x00000001;
            timerId_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int64 timer_id = 1;
           */
          public Builder clearTimerId() {
            bitField0_ = (bitField0_ & ~0x00000001);
            timerId_ = 0L;
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode)
        }

        static {
          defaultInstance = new TimerNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode)
      }

      public interface JoinNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        java.util.List 
            getTriggerList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger getTrigger(int index);
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        int getTriggerCount();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        java.util.List 
            getTriggerOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder getTriggerOrBuilder(
            int index);
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode}
       */
      public static final class JoinNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode)
          JoinNodeOrBuilder {
        // Use JoinNode.newBuilder() to construct.
        private JoinNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private JoinNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final JoinNode defaultInstance;
        public static JoinNode getDefaultInstance() {
          return defaultInstance;
        }

        public JoinNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private JoinNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 10: {
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    trigger_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  trigger_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.PARSER, extensionRegistry));
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
              trigger_ = java.util.Collections.unmodifiableList(trigger_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public JoinNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new JoinNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        public interface JoinTriggerOrBuilder extends
            // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger)
            com.google.protobuf.MessageOrBuilder {

          /**
           * optional int64 node_id = 1;
           */
          boolean hasNodeId();
          /**
           * optional int64 node_id = 1;
           */
          long getNodeId();

          /**
           * optional int32 counter = 2;
           */
          boolean hasCounter();
          /**
           * optional int32 counter = 2;
           */
          int getCounter();
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger}
         */
        public static final class JoinTrigger extends
            com.google.protobuf.GeneratedMessage implements
            // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger)
            JoinTriggerOrBuilder {
          // Use JoinTrigger.newBuilder() to construct.
          private JoinTrigger(com.google.protobuf.GeneratedMessage.Builder builder) {
            super(builder);
            this.unknownFields = builder.getUnknownFields();
          }
          private JoinTrigger(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

          private static final JoinTrigger defaultInstance;
          public static JoinTrigger getDefaultInstance() {
            return defaultInstance;
          }

          public JoinTrigger getDefaultInstanceForType() {
            return defaultInstance;
          }

          private final com.google.protobuf.UnknownFieldSet unknownFields;
          @java.lang.Override
          public final com.google.protobuf.UnknownFieldSet
              getUnknownFields() {
            return this.unknownFields;
          }
          private JoinTrigger(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            initFields();
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
              boolean done = false;
              while (!done) {
                int tag = input.readTag();
                switch (tag) {
                  case 0:
                    done = true;
                    break;
                  default: {
                    if (!parseUnknownField(input, unknownFields,
                                           extensionRegistry, tag)) {
                      done = true;
                    }
                    break;
                  }
                  case 8: {
                    bitField0_ |= 0x00000001;
                    nodeId_ = input.readInt64();
                    break;
                  }
                  case 16: {
                    bitField0_ |= 0x00000002;
                    counter_ = input.readInt32();
                    break;
                  }
                }
              }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
              throw new com.google.protobuf.InvalidProtocolBufferException(
                  e.getMessage()).setUnfinishedMessage(this);
            } finally {
              this.unknownFields = unknownFields.build();
              makeExtensionsImmutable();
            }
          }
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder.class);
          }

          public static com.google.protobuf.Parser PARSER =
              new com.google.protobuf.AbstractParser() {
            public JoinTrigger parsePartialFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
              return new JoinTrigger(input, extensionRegistry);
            }
          };

          @java.lang.Override
          public com.google.protobuf.Parser getParserForType() {
            return PARSER;
          }

          private int bitField0_;
          public static final int NODE_ID_FIELD_NUMBER = 1;
          private long nodeId_;
          /**
           * optional int64 node_id = 1;
           */
          public boolean hasNodeId() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional int64 node_id = 1;
           */
          public long getNodeId() {
            return nodeId_;
          }

          public static final int COUNTER_FIELD_NUMBER = 2;
          private int counter_;
          /**
           * optional int32 counter = 2;
           */
          public boolean hasCounter() {
            return ((bitField0_ & 0x00000002) == 0x00000002);
          }
          /**
           * optional int32 counter = 2;
           */
          public int getCounter() {
            return counter_;
          }

          private void initFields() {
            nodeId_ = 0L;
            counter_ = 0;
          }
          private byte memoizedIsInitialized = -1;
          public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
          }

          public void writeTo(com.google.protobuf.CodedOutputStream output)
                              throws java.io.IOException {
            getSerializedSize();
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              output.writeInt64(1, nodeId_);
            }
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              output.writeInt32(2, counter_);
            }
            getUnknownFields().writeTo(output);
          }

          private int memoizedSerializedSize = -1;
          public int getSerializedSize() {
            int size = memoizedSerializedSize;
            if (size != -1) return size;

            size = 0;
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              size += com.google.protobuf.CodedOutputStream
                .computeInt64Size(1, nodeId_);
            }
            if (((bitField0_ & 0x00000002) == 0x00000002)) {
              size += com.google.protobuf.CodedOutputStream
                .computeInt32Size(2, counter_);
            }
            size += getUnknownFields().getSerializedSize();
            memoizedSerializedSize = size;
            return size;
          }

          private static final long serialVersionUID = 0L;
          @java.lang.Override
          protected java.lang.Object writeReplace()
              throws java.io.ObjectStreamException {
            return super.writeReplace();
          }

          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(
              com.google.protobuf.ByteString data)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(
              com.google.protobuf.ByteString data,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(byte[] data)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(
              byte[] data,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(java.io.InputStream input)
              throws java.io.IOException {
            return PARSER.parseFrom(input);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(
              java.io.InputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            return PARSER.parseFrom(input, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseDelimitedFrom(java.io.InputStream input)
              throws java.io.IOException {
            return PARSER.parseDelimitedFrom(input);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseDelimitedFrom(
              java.io.InputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            return PARSER.parseDelimitedFrom(input, extensionRegistry);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(
              com.google.protobuf.CodedInputStream input)
              throws java.io.IOException {
            return PARSER.parseFrom(input);
          }
          public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parseFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            return PARSER.parseFrom(input, extensionRegistry);
          }

          public static Builder newBuilder() { return Builder.create(); }
          public Builder newBuilderForType() { return newBuilder(); }
          public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger prototype) {
            return newBuilder().mergeFrom(prototype);
          }
          public Builder toBuilder() { return newBuilder(this); }

          @java.lang.Override
          protected Builder newBuilderForType(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
          }
          /**
           * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger}
           */
          public static final class Builder extends
              com.google.protobuf.GeneratedMessage.Builder implements
              // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger)
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
                getDescriptor() {
              return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_descriptor;
            }

            protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                internalGetFieldAccessorTable() {
              return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_fieldAccessorTable
                  .ensureFieldAccessorsInitialized(
                      org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder.class);
            }

            // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.newBuilder()
            private Builder() {
              maybeForceBuilderInitialization();
            }

            private Builder(
                com.google.protobuf.GeneratedMessage.BuilderParent parent) {
              super(parent);
              maybeForceBuilderInitialization();
            }
            private void maybeForceBuilderInitialization() {
              if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
              }
            }
            private static Builder create() {
              return new Builder();
            }

            public Builder clear() {
              super.clear();
              nodeId_ = 0L;
              bitField0_ = (bitField0_ & ~0x00000001);
              counter_ = 0;
              bitField0_ = (bitField0_ & ~0x00000002);
              return this;
            }

            public Builder clone() {
              return create().mergeFrom(buildPartial());
            }

            public com.google.protobuf.Descriptors.Descriptor
                getDescriptorForType() {
              return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_descriptor;
            }

            public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger getDefaultInstanceForType() {
              return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.getDefaultInstance();
            }

            public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger build() {
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger result = buildPartial();
              if (!result.isInitialized()) {
                throw newUninitializedMessageException(result);
              }
              return result;
            }

            public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger buildPartial() {
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger(this);
              int from_bitField0_ = bitField0_;
              int to_bitField0_ = 0;
              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
                to_bitField0_ |= 0x00000001;
              }
              result.nodeId_ = nodeId_;
              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
                to_bitField0_ |= 0x00000002;
              }
              result.counter_ = counter_;
              result.bitField0_ = to_bitField0_;
              onBuilt();
              return result;
            }

            public Builder mergeFrom(com.google.protobuf.Message other) {
              if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger) {
                return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger)other);
              } else {
                super.mergeFrom(other);
                return this;
              }
            }

            public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger other) {
              if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.getDefaultInstance()) return this;
              if (other.hasNodeId()) {
                setNodeId(other.getNodeId());
              }
              if (other.hasCounter()) {
                setCounter(other.getCounter());
              }
              this.mergeUnknownFields(other.getUnknownFields());
              return this;
            }

            public final boolean isInitialized() {
              return true;
            }

            public Builder mergeFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger parsedMessage = null;
              try {
                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger) e.getUnfinishedMessage();
                throw e;
              } finally {
                if (parsedMessage != null) {
                  mergeFrom(parsedMessage);
                }
              }
              return this;
            }
            private int bitField0_;

            private long nodeId_ ;
            /**
             * optional int64 node_id = 1;
             */
            public boolean hasNodeId() {
              return ((bitField0_ & 0x00000001) == 0x00000001);
            }
            /**
             * optional int64 node_id = 1;
             */
            public long getNodeId() {
              return nodeId_;
            }
            /**
             * optional int64 node_id = 1;
             */
            public Builder setNodeId(long value) {
              bitField0_ |= 0x00000001;
              nodeId_ = value;
              onChanged();
              return this;
            }
            /**
             * optional int64 node_id = 1;
             */
            public Builder clearNodeId() {
              bitField0_ = (bitField0_ & ~0x00000001);
              nodeId_ = 0L;
              onChanged();
              return this;
            }

            private int counter_ ;
            /**
             * optional int32 counter = 2;
             */
            public boolean hasCounter() {
              return ((bitField0_ & 0x00000002) == 0x00000002);
            }
            /**
             * optional int32 counter = 2;
             */
            public int getCounter() {
              return counter_;
            }
            /**
             * optional int32 counter = 2;
             */
            public Builder setCounter(int value) {
              bitField0_ |= 0x00000002;
              counter_ = value;
              onChanged();
              return this;
            }
            /**
             * optional int32 counter = 2;
             */
            public Builder clearCounter() {
              bitField0_ = (bitField0_ & ~0x00000002);
              counter_ = 0;
              onChanged();
              return this;
            }

            // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger)
          }

          static {
            defaultInstance = new JoinTrigger(true);
            defaultInstance.initFields();
          }

          // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger)
        }

        public static final int TRIGGER_FIELD_NUMBER = 1;
        private java.util.List trigger_;
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        public java.util.List getTriggerList() {
          return trigger_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        public java.util.List 
            getTriggerOrBuilderList() {
          return trigger_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        public int getTriggerCount() {
          return trigger_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger getTrigger(int index) {
          return trigger_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder getTriggerOrBuilder(
            int index) {
          return trigger_.get(index);
        }

        private void initFields() {
          trigger_ = java.util.Collections.emptyList();
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          for (int i = 0; i < trigger_.size(); i++) {
            output.writeMessage(1, trigger_.get(i));
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          for (int i = 0; i < trigger_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(1, trigger_.get(i));
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
              getTriggerFieldBuilder();
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            if (triggerBuilder_ == null) {
              trigger_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              triggerBuilder_.clear();
            }
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode(this);
            int from_bitField0_ = bitField0_;
            if (triggerBuilder_ == null) {
              if (((bitField0_ & 0x00000001) == 0x00000001)) {
                trigger_ = java.util.Collections.unmodifiableList(trigger_);
                bitField0_ = (bitField0_ & ~0x00000001);
              }
              result.trigger_ = trigger_;
            } else {
              result.trigger_ = triggerBuilder_.build();
            }
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance()) return this;
            if (triggerBuilder_ == null) {
              if (!other.trigger_.isEmpty()) {
                if (trigger_.isEmpty()) {
                  trigger_ = other.trigger_;
                  bitField0_ = (bitField0_ & ~0x00000001);
                } else {
                  ensureTriggerIsMutable();
                  trigger_.addAll(other.trigger_);
                }
                onChanged();
              }
            } else {
              if (!other.trigger_.isEmpty()) {
                if (triggerBuilder_.isEmpty()) {
                  triggerBuilder_.dispose();
                  triggerBuilder_ = null;
                  trigger_ = other.trigger_;
                  bitField0_ = (bitField0_ & ~0x00000001);
                  triggerBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getTriggerFieldBuilder() : null;
                } else {
                  triggerBuilder_.addAllMessages(other.trigger_);
                }
              }
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.util.List trigger_ =
            java.util.Collections.emptyList();
          private void ensureTriggerIsMutable() {
            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
              trigger_ = new java.util.ArrayList(trigger_);
              bitField0_ |= 0x00000001;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder> triggerBuilder_;

          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public java.util.List getTriggerList() {
            if (triggerBuilder_ == null) {
              return java.util.Collections.unmodifiableList(trigger_);
            } else {
              return triggerBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public int getTriggerCount() {
            if (triggerBuilder_ == null) {
              return trigger_.size();
            } else {
              return triggerBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger getTrigger(int index) {
            if (triggerBuilder_ == null) {
              return trigger_.get(index);
            } else {
              return triggerBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder setTrigger(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger value) {
            if (triggerBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureTriggerIsMutable();
              trigger_.set(index, value);
              onChanged();
            } else {
              triggerBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder setTrigger(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder builderForValue) {
            if (triggerBuilder_ == null) {
              ensureTriggerIsMutable();
              trigger_.set(index, builderForValue.build());
              onChanged();
            } else {
              triggerBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder addTrigger(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger value) {
            if (triggerBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureTriggerIsMutable();
              trigger_.add(value);
              onChanged();
            } else {
              triggerBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder addTrigger(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger value) {
            if (triggerBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureTriggerIsMutable();
              trigger_.add(index, value);
              onChanged();
            } else {
              triggerBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder addTrigger(
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder builderForValue) {
            if (triggerBuilder_ == null) {
              ensureTriggerIsMutable();
              trigger_.add(builderForValue.build());
              onChanged();
            } else {
              triggerBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder addTrigger(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder builderForValue) {
            if (triggerBuilder_ == null) {
              ensureTriggerIsMutable();
              trigger_.add(index, builderForValue.build());
              onChanged();
            } else {
              triggerBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder addAllTrigger(
              java.lang.Iterable values) {
            if (triggerBuilder_ == null) {
              ensureTriggerIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, trigger_);
              onChanged();
            } else {
              triggerBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder clearTrigger() {
            if (triggerBuilder_ == null) {
              trigger_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000001);
              onChanged();
            } else {
              triggerBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public Builder removeTrigger(int index) {
            if (triggerBuilder_ == null) {
              ensureTriggerIsMutable();
              trigger_.remove(index);
              onChanged();
            } else {
              triggerBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder getTriggerBuilder(
              int index) {
            return getTriggerFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder getTriggerOrBuilder(
              int index) {
            if (triggerBuilder_ == null) {
              return trigger_.get(index);  } else {
              return triggerBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public java.util.List 
               getTriggerOrBuilderList() {
            if (triggerBuilder_ != null) {
              return triggerBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(trigger_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder addTriggerBuilder() {
            return getTriggerFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder addTriggerBuilder(
              int index) {
            return getTriggerFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger trigger = 1;
           */
          public java.util.List 
               getTriggerBuilderList() {
            return getTriggerFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder> 
              getTriggerFieldBuilder() {
            if (triggerBuilder_ == null) {
              triggerBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTrigger.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.JoinTriggerOrBuilder>(
                      trigger_,
                      ((bitField0_ & 0x00000001) == 0x00000001),
                      getParentForChildren(),
                      isClean());
              trigger_ = null;
            }
            return triggerBuilder_;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode)
        }

        static {
          defaultInstance = new JoinNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode)
      }

      public interface StateNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * repeated int64 timer_instance_id = 1;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 1;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 1;
         */
        long getTimerInstanceId(int index);
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode}
       */
      public static final class StateNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode)
          StateNodeOrBuilder {
        // Use StateNode.newBuilder() to construct.
        private StateNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private StateNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final StateNode defaultInstance;
        public static StateNode getDefaultInstance() {
          return defaultInstance;
        }

        public StateNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private StateNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 8: {
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 10: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public StateNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new StateNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 1;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 1;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        private void initFields() {
          timerInstanceId_ = java.util.Collections.emptyList();
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(1, timerInstanceId_.get(i));
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode(this);
            int from_bitField0_ = bitField0_;
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.timerInstanceId_ = timerInstanceId_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance()) return this;
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000001;
             }
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 1;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode)
        }

        static {
          defaultInstance = new StateNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode)
      }

      public interface CompositeContextNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * repeated int64 timer_instance_id = 2;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 2;
         */
        long getTimerInstanceId(int index);

        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        java.util.List 
            getVariableList();
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index);
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        int getVariableCount();
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        java.util.List 
            getVariableOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
            int index);

        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        java.util.List 
            getNodeInstanceList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index);
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        int getNodeInstanceCount();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        java.util.List 
            getNodeInstanceOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
            int index);

        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        java.util.List 
            getExclusiveGroupList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getExclusiveGroup(int index);
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        int getExclusiveGroupCount();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        java.util.List 
            getExclusiveGroupOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder getExclusiveGroupOrBuilder(
            int index);

        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        java.util.List 
            getIterationLevelsList();
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index);
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        int getIterationLevelsCount();
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        java.util.List 
            getIterationLevelsOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
            int index);
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode}
       */
      public static final class CompositeContextNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode)
          CompositeContextNodeOrBuilder {
        // Use CompositeContextNode.newBuilder() to construct.
        private CompositeContextNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private CompositeContextNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final CompositeContextNode defaultInstance;
        public static CompositeContextNode getDefaultInstance() {
          return defaultInstance;
        }

        public CompositeContextNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private CompositeContextNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 16: {
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 18: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
                case 26: {
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    variable_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  variable_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.Variable.PARSER, extensionRegistry));
                  break;
                }
                case 34: {
                  if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                    nodeInstance_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000004;
                  }
                  nodeInstance_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.PARSER, extensionRegistry));
                  break;
                }
                case 42: {
                  if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                    exclusiveGroup_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000008;
                  }
                  exclusiveGroup_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.PARSER, extensionRegistry));
                  break;
                }
                case 50: {
                  if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                    iterationLevels_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000010;
                  }
                  iterationLevels_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.PARSER, extensionRegistry));
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
              variable_ = java.util.Collections.unmodifiableList(variable_);
            }
            if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
              nodeInstance_ = java.util.Collections.unmodifiableList(nodeInstance_);
            }
            if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
              exclusiveGroup_ = java.util.Collections.unmodifiableList(exclusiveGroup_);
            }
            if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
              iterationLevels_ = java.util.Collections.unmodifiableList(iterationLevels_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public CompositeContextNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new CompositeContextNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 2;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 2;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        public static final int VARIABLE_FIELD_NUMBER = 3;
        private java.util.List variable_;
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        public java.util.List getVariableList() {
          return variable_;
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        public java.util.List 
            getVariableOrBuilderList() {
          return variable_;
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        public int getVariableCount() {
          return variable_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) {
          return variable_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
            int index) {
          return variable_.get(index);
        }

        public static final int NODE_INSTANCE_FIELD_NUMBER = 4;
        private java.util.List nodeInstance_;
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        public java.util.List getNodeInstanceList() {
          return nodeInstance_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        public java.util.List 
            getNodeInstanceOrBuilderList() {
          return nodeInstance_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        public int getNodeInstanceCount() {
          return nodeInstance_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index) {
          return nodeInstance_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
            int index) {
          return nodeInstance_.get(index);
        }

        public static final int EXCLUSIVE_GROUP_FIELD_NUMBER = 5;
        private java.util.List exclusiveGroup_;
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        public java.util.List getExclusiveGroupList() {
          return exclusiveGroup_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        public java.util.List 
            getExclusiveGroupOrBuilderList() {
          return exclusiveGroup_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        public int getExclusiveGroupCount() {
          return exclusiveGroup_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getExclusiveGroup(int index) {
          return exclusiveGroup_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder getExclusiveGroupOrBuilder(
            int index) {
          return exclusiveGroup_.get(index);
        }

        public static final int ITERATIONLEVELS_FIELD_NUMBER = 6;
        private java.util.List iterationLevels_;
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        public java.util.List getIterationLevelsList() {
          return iterationLevels_;
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        public java.util.List 
            getIterationLevelsOrBuilderList() {
          return iterationLevels_;
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        public int getIterationLevelsCount() {
          return iterationLevels_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index) {
          return iterationLevels_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
            int index) {
          return iterationLevels_.get(index);
        }

        private void initFields() {
          timerInstanceId_ = java.util.Collections.emptyList();
          variable_ = java.util.Collections.emptyList();
          nodeInstance_ = java.util.Collections.emptyList();
          exclusiveGroup_ = java.util.Collections.emptyList();
          iterationLevels_ = java.util.Collections.emptyList();
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(2, timerInstanceId_.get(i));
          }
          for (int i = 0; i < variable_.size(); i++) {
            output.writeMessage(3, variable_.get(i));
          }
          for (int i = 0; i < nodeInstance_.size(); i++) {
            output.writeMessage(4, nodeInstance_.get(i));
          }
          for (int i = 0; i < exclusiveGroup_.size(); i++) {
            output.writeMessage(5, exclusiveGroup_.get(i));
          }
          for (int i = 0; i < iterationLevels_.size(); i++) {
            output.writeMessage(6, iterationLevels_.get(i));
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          for (int i = 0; i < variable_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(3, variable_.get(i));
          }
          for (int i = 0; i < nodeInstance_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(4, nodeInstance_.get(i));
          }
          for (int i = 0; i < exclusiveGroup_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(5, exclusiveGroup_.get(i));
          }
          for (int i = 0; i < iterationLevels_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(6, iterationLevels_.get(i));
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
              getVariableFieldBuilder();
              getNodeInstanceFieldBuilder();
              getExclusiveGroupFieldBuilder();
              getIterationLevelsFieldBuilder();
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            if (variableBuilder_ == null) {
              variable_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              variableBuilder_.clear();
            }
            if (nodeInstanceBuilder_ == null) {
              nodeInstance_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              nodeInstanceBuilder_.clear();
            }
            if (exclusiveGroupBuilder_ == null) {
              exclusiveGroup_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000008);
            } else {
              exclusiveGroupBuilder_.clear();
            }
            if (iterationLevelsBuilder_ == null) {
              iterationLevels_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000010);
            } else {
              iterationLevelsBuilder_.clear();
            }
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode(this);
            int from_bitField0_ = bitField0_;
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.timerInstanceId_ = timerInstanceId_;
            if (variableBuilder_ == null) {
              if (((bitField0_ & 0x00000002) == 0x00000002)) {
                variable_ = java.util.Collections.unmodifiableList(variable_);
                bitField0_ = (bitField0_ & ~0x00000002);
              }
              result.variable_ = variable_;
            } else {
              result.variable_ = variableBuilder_.build();
            }
            if (nodeInstanceBuilder_ == null) {
              if (((bitField0_ & 0x00000004) == 0x00000004)) {
                nodeInstance_ = java.util.Collections.unmodifiableList(nodeInstance_);
                bitField0_ = (bitField0_ & ~0x00000004);
              }
              result.nodeInstance_ = nodeInstance_;
            } else {
              result.nodeInstance_ = nodeInstanceBuilder_.build();
            }
            if (exclusiveGroupBuilder_ == null) {
              if (((bitField0_ & 0x00000008) == 0x00000008)) {
                exclusiveGroup_ = java.util.Collections.unmodifiableList(exclusiveGroup_);
                bitField0_ = (bitField0_ & ~0x00000008);
              }
              result.exclusiveGroup_ = exclusiveGroup_;
            } else {
              result.exclusiveGroup_ = exclusiveGroupBuilder_.build();
            }
            if (iterationLevelsBuilder_ == null) {
              if (((bitField0_ & 0x00000010) == 0x00000010)) {
                iterationLevels_ = java.util.Collections.unmodifiableList(iterationLevels_);
                bitField0_ = (bitField0_ & ~0x00000010);
              }
              result.iterationLevels_ = iterationLevels_;
            } else {
              result.iterationLevels_ = iterationLevelsBuilder_.build();
            }
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance()) return this;
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            if (variableBuilder_ == null) {
              if (!other.variable_.isEmpty()) {
                if (variable_.isEmpty()) {
                  variable_ = other.variable_;
                  bitField0_ = (bitField0_ & ~0x00000002);
                } else {
                  ensureVariableIsMutable();
                  variable_.addAll(other.variable_);
                }
                onChanged();
              }
            } else {
              if (!other.variable_.isEmpty()) {
                if (variableBuilder_.isEmpty()) {
                  variableBuilder_.dispose();
                  variableBuilder_ = null;
                  variable_ = other.variable_;
                  bitField0_ = (bitField0_ & ~0x00000002);
                  variableBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getVariableFieldBuilder() : null;
                } else {
                  variableBuilder_.addAllMessages(other.variable_);
                }
              }
            }
            if (nodeInstanceBuilder_ == null) {
              if (!other.nodeInstance_.isEmpty()) {
                if (nodeInstance_.isEmpty()) {
                  nodeInstance_ = other.nodeInstance_;
                  bitField0_ = (bitField0_ & ~0x00000004);
                } else {
                  ensureNodeInstanceIsMutable();
                  nodeInstance_.addAll(other.nodeInstance_);
                }
                onChanged();
              }
            } else {
              if (!other.nodeInstance_.isEmpty()) {
                if (nodeInstanceBuilder_.isEmpty()) {
                  nodeInstanceBuilder_.dispose();
                  nodeInstanceBuilder_ = null;
                  nodeInstance_ = other.nodeInstance_;
                  bitField0_ = (bitField0_ & ~0x00000004);
                  nodeInstanceBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getNodeInstanceFieldBuilder() : null;
                } else {
                  nodeInstanceBuilder_.addAllMessages(other.nodeInstance_);
                }
              }
            }
            if (exclusiveGroupBuilder_ == null) {
              if (!other.exclusiveGroup_.isEmpty()) {
                if (exclusiveGroup_.isEmpty()) {
                  exclusiveGroup_ = other.exclusiveGroup_;
                  bitField0_ = (bitField0_ & ~0x00000008);
                } else {
                  ensureExclusiveGroupIsMutable();
                  exclusiveGroup_.addAll(other.exclusiveGroup_);
                }
                onChanged();
              }
            } else {
              if (!other.exclusiveGroup_.isEmpty()) {
                if (exclusiveGroupBuilder_.isEmpty()) {
                  exclusiveGroupBuilder_.dispose();
                  exclusiveGroupBuilder_ = null;
                  exclusiveGroup_ = other.exclusiveGroup_;
                  bitField0_ = (bitField0_ & ~0x00000008);
                  exclusiveGroupBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getExclusiveGroupFieldBuilder() : null;
                } else {
                  exclusiveGroupBuilder_.addAllMessages(other.exclusiveGroup_);
                }
              }
            }
            if (iterationLevelsBuilder_ == null) {
              if (!other.iterationLevels_.isEmpty()) {
                if (iterationLevels_.isEmpty()) {
                  iterationLevels_ = other.iterationLevels_;
                  bitField0_ = (bitField0_ & ~0x00000010);
                } else {
                  ensureIterationLevelsIsMutable();
                  iterationLevels_.addAll(other.iterationLevels_);
                }
                onChanged();
              }
            } else {
              if (!other.iterationLevels_.isEmpty()) {
                if (iterationLevelsBuilder_.isEmpty()) {
                  iterationLevelsBuilder_.dispose();
                  iterationLevelsBuilder_ = null;
                  iterationLevels_ = other.iterationLevels_;
                  bitField0_ = (bitField0_ & ~0x00000010);
                  iterationLevelsBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getIterationLevelsFieldBuilder() : null;
                } else {
                  iterationLevelsBuilder_.addAllMessages(other.iterationLevels_);
                }
              }
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000001;
             }
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 2;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
            return this;
          }

          private java.util.List variable_ =
            java.util.Collections.emptyList();
          private void ensureVariableIsMutable() {
            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
              variable_ = new java.util.ArrayList(variable_);
              bitField0_ |= 0x00000002;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> variableBuilder_;

          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public java.util.List getVariableList() {
            if (variableBuilder_ == null) {
              return java.util.Collections.unmodifiableList(variable_);
            } else {
              return variableBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public int getVariableCount() {
            if (variableBuilder_ == null) {
              return variable_.size();
            } else {
              return variableBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) {
            if (variableBuilder_ == null) {
              return variable_.get(index);
            } else {
              return variableBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder setVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
            if (variableBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureVariableIsMutable();
              variable_.set(index, value);
              onChanged();
            } else {
              variableBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder setVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.set(index, builderForValue.build());
              onChanged();
            } else {
              variableBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder addVariable(org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
            if (variableBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureVariableIsMutable();
              variable_.add(value);
              onChanged();
            } else {
              variableBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder addVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
            if (variableBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureVariableIsMutable();
              variable_.add(index, value);
              onChanged();
            } else {
              variableBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder addVariable(
              org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.add(builderForValue.build());
              onChanged();
            } else {
              variableBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder addVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.add(index, builderForValue.build());
              onChanged();
            } else {
              variableBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder addAllVariable(
              java.lang.Iterable values) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, variable_);
              onChanged();
            } else {
              variableBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder clearVariable() {
            if (variableBuilder_ == null) {
              variable_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000002);
              onChanged();
            } else {
              variableBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public Builder removeVariable(int index) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.remove(index);
              onChanged();
            } else {
              variableBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder getVariableBuilder(
              int index) {
            return getVariableFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
              int index) {
            if (variableBuilder_ == null) {
              return variable_.get(index);  } else {
              return variableBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public java.util.List 
               getVariableOrBuilderList() {
            if (variableBuilder_ != null) {
              return variableBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(variable_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder() {
            return getVariableFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder(
              int index) {
            return getVariableFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 3;
           */
          public java.util.List 
               getVariableBuilderList() {
            return getVariableFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> 
              getVariableFieldBuilder() {
            if (variableBuilder_ == null) {
              variableBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder>(
                      variable_,
                      ((bitField0_ & 0x00000002) == 0x00000002),
                      getParentForChildren(),
                      isClean());
              variable_ = null;
            }
            return variableBuilder_;
          }

          private java.util.List nodeInstance_ =
            java.util.Collections.emptyList();
          private void ensureNodeInstanceIsMutable() {
            if (!((bitField0_ & 0x00000004) == 0x00000004)) {
              nodeInstance_ = new java.util.ArrayList(nodeInstance_);
              bitField0_ |= 0x00000004;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder> nodeInstanceBuilder_;

          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public java.util.List getNodeInstanceList() {
            if (nodeInstanceBuilder_ == null) {
              return java.util.Collections.unmodifiableList(nodeInstance_);
            } else {
              return nodeInstanceBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public int getNodeInstanceCount() {
            if (nodeInstanceBuilder_ == null) {
              return nodeInstance_.size();
            } else {
              return nodeInstanceBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index) {
            if (nodeInstanceBuilder_ == null) {
              return nodeInstance_.get(index);
            } else {
              return nodeInstanceBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder setNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
            if (nodeInstanceBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureNodeInstanceIsMutable();
              nodeInstance_.set(index, value);
              onChanged();
            } else {
              nodeInstanceBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder setNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.set(index, builderForValue.build());
              onChanged();
            } else {
              nodeInstanceBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder addNodeInstance(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
            if (nodeInstanceBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(value);
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder addNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
            if (nodeInstanceBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(index, value);
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder addNodeInstance(
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(builderForValue.build());
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder addNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(index, builderForValue.build());
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder addAllNodeInstance(
              java.lang.Iterable values) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, nodeInstance_);
              onChanged();
            } else {
              nodeInstanceBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder clearNodeInstance() {
            if (nodeInstanceBuilder_ == null) {
              nodeInstance_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000004);
              onChanged();
            } else {
              nodeInstanceBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public Builder removeNodeInstance(int index) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.remove(index);
              onChanged();
            } else {
              nodeInstanceBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder getNodeInstanceBuilder(
              int index) {
            return getNodeInstanceFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
              int index) {
            if (nodeInstanceBuilder_ == null) {
              return nodeInstance_.get(index);  } else {
              return nodeInstanceBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public java.util.List 
               getNodeInstanceOrBuilderList() {
            if (nodeInstanceBuilder_ != null) {
              return nodeInstanceBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(nodeInstance_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder addNodeInstanceBuilder() {
            return getNodeInstanceFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder addNodeInstanceBuilder(
              int index) {
            return getNodeInstanceFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 4;
           */
          public java.util.List 
               getNodeInstanceBuilderList() {
            return getNodeInstanceFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder> 
              getNodeInstanceFieldBuilder() {
            if (nodeInstanceBuilder_ == null) {
              nodeInstanceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder>(
                      nodeInstance_,
                      ((bitField0_ & 0x00000004) == 0x00000004),
                      getParentForChildren(),
                      isClean());
              nodeInstance_ = null;
            }
            return nodeInstanceBuilder_;
          }

          private java.util.List exclusiveGroup_ =
            java.util.Collections.emptyList();
          private void ensureExclusiveGroupIsMutable() {
            if (!((bitField0_ & 0x00000008) == 0x00000008)) {
              exclusiveGroup_ = new java.util.ArrayList(exclusiveGroup_);
              bitField0_ |= 0x00000008;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder> exclusiveGroupBuilder_;

          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public java.util.List getExclusiveGroupList() {
            if (exclusiveGroupBuilder_ == null) {
              return java.util.Collections.unmodifiableList(exclusiveGroup_);
            } else {
              return exclusiveGroupBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public int getExclusiveGroupCount() {
            if (exclusiveGroupBuilder_ == null) {
              return exclusiveGroup_.size();
            } else {
              return exclusiveGroupBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getExclusiveGroup(int index) {
            if (exclusiveGroupBuilder_ == null) {
              return exclusiveGroup_.get(index);
            } else {
              return exclusiveGroupBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder setExclusiveGroup(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance value) {
            if (exclusiveGroupBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.set(index, value);
              onChanged();
            } else {
              exclusiveGroupBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder setExclusiveGroup(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder builderForValue) {
            if (exclusiveGroupBuilder_ == null) {
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.set(index, builderForValue.build());
              onChanged();
            } else {
              exclusiveGroupBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder addExclusiveGroup(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance value) {
            if (exclusiveGroupBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.add(value);
              onChanged();
            } else {
              exclusiveGroupBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder addExclusiveGroup(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance value) {
            if (exclusiveGroupBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.add(index, value);
              onChanged();
            } else {
              exclusiveGroupBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder addExclusiveGroup(
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder builderForValue) {
            if (exclusiveGroupBuilder_ == null) {
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.add(builderForValue.build());
              onChanged();
            } else {
              exclusiveGroupBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder addExclusiveGroup(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder builderForValue) {
            if (exclusiveGroupBuilder_ == null) {
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.add(index, builderForValue.build());
              onChanged();
            } else {
              exclusiveGroupBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder addAllExclusiveGroup(
              java.lang.Iterable values) {
            if (exclusiveGroupBuilder_ == null) {
              ensureExclusiveGroupIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, exclusiveGroup_);
              onChanged();
            } else {
              exclusiveGroupBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder clearExclusiveGroup() {
            if (exclusiveGroupBuilder_ == null) {
              exclusiveGroup_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000008);
              onChanged();
            } else {
              exclusiveGroupBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public Builder removeExclusiveGroup(int index) {
            if (exclusiveGroupBuilder_ == null) {
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.remove(index);
              onChanged();
            } else {
              exclusiveGroupBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder getExclusiveGroupBuilder(
              int index) {
            return getExclusiveGroupFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder getExclusiveGroupOrBuilder(
              int index) {
            if (exclusiveGroupBuilder_ == null) {
              return exclusiveGroup_.get(index);  } else {
              return exclusiveGroupBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public java.util.List 
               getExclusiveGroupOrBuilderList() {
            if (exclusiveGroupBuilder_ != null) {
              return exclusiveGroupBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(exclusiveGroup_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder addExclusiveGroupBuilder() {
            return getExclusiveGroupFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder addExclusiveGroupBuilder(
              int index) {
            return getExclusiveGroupFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 5;
           */
          public java.util.List 
               getExclusiveGroupBuilderList() {
            return getExclusiveGroupFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder> 
              getExclusiveGroupFieldBuilder() {
            if (exclusiveGroupBuilder_ == null) {
              exclusiveGroupBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder>(
                      exclusiveGroup_,
                      ((bitField0_ & 0x00000008) == 0x00000008),
                      getParentForChildren(),
                      isClean());
              exclusiveGroup_ = null;
            }
            return exclusiveGroupBuilder_;
          }

          private java.util.List iterationLevels_ =
            java.util.Collections.emptyList();
          private void ensureIterationLevelsIsMutable() {
            if (!((bitField0_ & 0x00000010) == 0x00000010)) {
              iterationLevels_ = new java.util.ArrayList(iterationLevels_);
              bitField0_ |= 0x00000010;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder> iterationLevelsBuilder_;

          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public java.util.List getIterationLevelsList() {
            if (iterationLevelsBuilder_ == null) {
              return java.util.Collections.unmodifiableList(iterationLevels_);
            } else {
              return iterationLevelsBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public int getIterationLevelsCount() {
            if (iterationLevelsBuilder_ == null) {
              return iterationLevels_.size();
            } else {
              return iterationLevelsBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index) {
            if (iterationLevelsBuilder_ == null) {
              return iterationLevels_.get(index);
            } else {
              return iterationLevelsBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder setIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
            if (iterationLevelsBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureIterationLevelsIsMutable();
              iterationLevels_.set(index, value);
              onChanged();
            } else {
              iterationLevelsBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder setIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.set(index, builderForValue.build());
              onChanged();
            } else {
              iterationLevelsBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder addIterationLevels(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
            if (iterationLevelsBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(value);
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder addIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
            if (iterationLevelsBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(index, value);
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder addIterationLevels(
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(builderForValue.build());
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder addIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(index, builderForValue.build());
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder addAllIterationLevels(
              java.lang.Iterable values) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, iterationLevels_);
              onChanged();
            } else {
              iterationLevelsBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder clearIterationLevels() {
            if (iterationLevelsBuilder_ == null) {
              iterationLevels_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000010);
              onChanged();
            } else {
              iterationLevelsBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public Builder removeIterationLevels(int index) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.remove(index);
              onChanged();
            } else {
              iterationLevelsBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder getIterationLevelsBuilder(
              int index) {
            return getIterationLevelsFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
              int index) {
            if (iterationLevelsBuilder_ == null) {
              return iterationLevels_.get(index);  } else {
              return iterationLevelsBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public java.util.List 
               getIterationLevelsOrBuilderList() {
            if (iterationLevelsBuilder_ != null) {
              return iterationLevelsBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(iterationLevels_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder addIterationLevelsBuilder() {
            return getIterationLevelsFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder addIterationLevelsBuilder(
              int index) {
            return getIterationLevelsFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 6;
           */
          public java.util.List 
               getIterationLevelsBuilderList() {
            return getIterationLevelsFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder> 
              getIterationLevelsFieldBuilder() {
            if (iterationLevelsBuilder_ == null) {
              iterationLevelsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder>(
                      iterationLevels_,
                      ((bitField0_ & 0x00000010) == 0x00000010),
                      getParentForChildren(),
                      isClean());
              iterationLevels_ = null;
            }
            return iterationLevelsBuilder_;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode)
        }

        static {
          defaultInstance = new CompositeContextNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode)
      }

      public interface ForEachNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        java.util.List 
            getNodeInstanceList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index);
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        int getNodeInstanceCount();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        java.util.List 
            getNodeInstanceOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
            int index);

        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        java.util.List 
            getVariableList();
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index);
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        int getVariableCount();
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        java.util.List 
            getVariableOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
            int index);

        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        java.util.List 
            getIterationLevelsList();
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index);
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        int getIterationLevelsCount();
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        java.util.List 
            getIterationLevelsOrBuilderList();
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
            int index);

        /**
         * optional int32 sequential_counter = 4;
         */
        boolean hasSequentialCounter();
        /**
         * optional int32 sequential_counter = 4;
         */
        int getSequentialCounter();

        /**
         * repeated int64 timer_instance_id = 5;
         */
        java.util.List getTimerInstanceIdList();
        /**
         * repeated int64 timer_instance_id = 5;
         */
        int getTimerInstanceIdCount();
        /**
         * repeated int64 timer_instance_id = 5;
         */
        long getTimerInstanceId(int index);
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode}
       */
      public static final class ForEachNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode)
          ForEachNodeOrBuilder {
        // Use ForEachNode.newBuilder() to construct.
        private ForEachNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private ForEachNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final ForEachNode defaultInstance;
        public static ForEachNode getDefaultInstance() {
          return defaultInstance;
        }

        public ForEachNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private ForEachNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 10: {
                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    nodeInstance_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000001;
                  }
                  nodeInstance_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.PARSER, extensionRegistry));
                  break;
                }
                case 18: {
                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    variable_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000002;
                  }
                  variable_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.Variable.PARSER, extensionRegistry));
                  break;
                }
                case 26: {
                  if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                    iterationLevels_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000004;
                  }
                  iterationLevels_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.PARSER, extensionRegistry));
                  break;
                }
                case 32: {
                  bitField0_ |= 0x00000001;
                  sequentialCounter_ = input.readInt32();
                  break;
                }
                case 40: {
                  if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000010;
                  }
                  timerInstanceId_.add(input.readInt64());
                  break;
                }
                case 42: {
                  int length = input.readRawVarint32();
                  int limit = input.pushLimit(length);
                  if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
                    timerInstanceId_ = new java.util.ArrayList();
                    mutable_bitField0_ |= 0x00000010;
                  }
                  while (input.getBytesUntilLimit() > 0) {
                    timerInstanceId_.add(input.readInt64());
                  }
                  input.popLimit(limit);
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
              nodeInstance_ = java.util.Collections.unmodifiableList(nodeInstance_);
            }
            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
              variable_ = java.util.Collections.unmodifiableList(variable_);
            }
            if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
              iterationLevels_ = java.util.Collections.unmodifiableList(iterationLevels_);
            }
            if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
            }
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public ForEachNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new ForEachNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private int bitField0_;
        public static final int NODE_INSTANCE_FIELD_NUMBER = 1;
        private java.util.List nodeInstance_;
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        public java.util.List getNodeInstanceList() {
          return nodeInstance_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        public java.util.List 
            getNodeInstanceOrBuilderList() {
          return nodeInstance_;
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        public int getNodeInstanceCount() {
          return nodeInstance_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index) {
          return nodeInstance_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
            int index) {
          return nodeInstance_.get(index);
        }

        public static final int VARIABLE_FIELD_NUMBER = 2;
        private java.util.List variable_;
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        public java.util.List getVariableList() {
          return variable_;
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        public java.util.List 
            getVariableOrBuilderList() {
          return variable_;
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        public int getVariableCount() {
          return variable_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) {
          return variable_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.Variable variable = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
            int index) {
          return variable_.get(index);
        }

        public static final int ITERATIONLEVELS_FIELD_NUMBER = 3;
        private java.util.List iterationLevels_;
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        public java.util.List getIterationLevelsList() {
          return iterationLevels_;
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        public java.util.List 
            getIterationLevelsOrBuilderList() {
          return iterationLevels_;
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        public int getIterationLevelsCount() {
          return iterationLevels_.size();
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index) {
          return iterationLevels_.get(index);
        }
        /**
         * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
            int index) {
          return iterationLevels_.get(index);
        }

        public static final int SEQUENTIAL_COUNTER_FIELD_NUMBER = 4;
        private int sequentialCounter_;
        /**
         * optional int32 sequential_counter = 4;
         */
        public boolean hasSequentialCounter() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional int32 sequential_counter = 4;
         */
        public int getSequentialCounter() {
          return sequentialCounter_;
        }

        public static final int TIMER_INSTANCE_ID_FIELD_NUMBER = 5;
        private java.util.List timerInstanceId_;
        /**
         * repeated int64 timer_instance_id = 5;
         */
        public java.util.List
            getTimerInstanceIdList() {
          return timerInstanceId_;
        }
        /**
         * repeated int64 timer_instance_id = 5;
         */
        public int getTimerInstanceIdCount() {
          return timerInstanceId_.size();
        }
        /**
         * repeated int64 timer_instance_id = 5;
         */
        public long getTimerInstanceId(int index) {
          return timerInstanceId_.get(index);
        }

        private void initFields() {
          nodeInstance_ = java.util.Collections.emptyList();
          variable_ = java.util.Collections.emptyList();
          iterationLevels_ = java.util.Collections.emptyList();
          sequentialCounter_ = 0;
          timerInstanceId_ = java.util.Collections.emptyList();
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          for (int i = 0; i < nodeInstance_.size(); i++) {
            output.writeMessage(1, nodeInstance_.get(i));
          }
          for (int i = 0; i < variable_.size(); i++) {
            output.writeMessage(2, variable_.get(i));
          }
          for (int i = 0; i < iterationLevels_.size(); i++) {
            output.writeMessage(3, iterationLevels_.get(i));
          }
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeInt32(4, sequentialCounter_);
          }
          for (int i = 0; i < timerInstanceId_.size(); i++) {
            output.writeInt64(5, timerInstanceId_.get(i));
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          for (int i = 0; i < nodeInstance_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(1, nodeInstance_.get(i));
          }
          for (int i = 0; i < variable_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(2, variable_.get(i));
          }
          for (int i = 0; i < iterationLevels_.size(); i++) {
            size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(3, iterationLevels_.get(i));
          }
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeInt32Size(4, sequentialCounter_);
          }
          {
            int dataSize = 0;
            for (int i = 0; i < timerInstanceId_.size(); i++) {
              dataSize += com.google.protobuf.CodedOutputStream
                .computeInt64SizeNoTag(timerInstanceId_.get(i));
            }
            size += dataSize;
            size += 1 * getTimerInstanceIdList().size();
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
              getNodeInstanceFieldBuilder();
              getVariableFieldBuilder();
              getIterationLevelsFieldBuilder();
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            if (nodeInstanceBuilder_ == null) {
              nodeInstance_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              nodeInstanceBuilder_.clear();
            }
            if (variableBuilder_ == null) {
              variable_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              variableBuilder_.clear();
            }
            if (iterationLevelsBuilder_ == null) {
              iterationLevels_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              iterationLevelsBuilder_.clear();
            }
            sequentialCounter_ = 0;
            bitField0_ = (bitField0_ & ~0x00000008);
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000010);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (nodeInstanceBuilder_ == null) {
              if (((bitField0_ & 0x00000001) == 0x00000001)) {
                nodeInstance_ = java.util.Collections.unmodifiableList(nodeInstance_);
                bitField0_ = (bitField0_ & ~0x00000001);
              }
              result.nodeInstance_ = nodeInstance_;
            } else {
              result.nodeInstance_ = nodeInstanceBuilder_.build();
            }
            if (variableBuilder_ == null) {
              if (((bitField0_ & 0x00000002) == 0x00000002)) {
                variable_ = java.util.Collections.unmodifiableList(variable_);
                bitField0_ = (bitField0_ & ~0x00000002);
              }
              result.variable_ = variable_;
            } else {
              result.variable_ = variableBuilder_.build();
            }
            if (iterationLevelsBuilder_ == null) {
              if (((bitField0_ & 0x00000004) == 0x00000004)) {
                iterationLevels_ = java.util.Collections.unmodifiableList(iterationLevels_);
                bitField0_ = (bitField0_ & ~0x00000004);
              }
              result.iterationLevels_ = iterationLevels_;
            } else {
              result.iterationLevels_ = iterationLevelsBuilder_.build();
            }
            if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
              to_bitField0_ |= 0x00000001;
            }
            result.sequentialCounter_ = sequentialCounter_;
            if (((bitField0_ & 0x00000010) == 0x00000010)) {
              timerInstanceId_ = java.util.Collections.unmodifiableList(timerInstanceId_);
              bitField0_ = (bitField0_ & ~0x00000010);
            }
            result.timerInstanceId_ = timerInstanceId_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance()) return this;
            if (nodeInstanceBuilder_ == null) {
              if (!other.nodeInstance_.isEmpty()) {
                if (nodeInstance_.isEmpty()) {
                  nodeInstance_ = other.nodeInstance_;
                  bitField0_ = (bitField0_ & ~0x00000001);
                } else {
                  ensureNodeInstanceIsMutable();
                  nodeInstance_.addAll(other.nodeInstance_);
                }
                onChanged();
              }
            } else {
              if (!other.nodeInstance_.isEmpty()) {
                if (nodeInstanceBuilder_.isEmpty()) {
                  nodeInstanceBuilder_.dispose();
                  nodeInstanceBuilder_ = null;
                  nodeInstance_ = other.nodeInstance_;
                  bitField0_ = (bitField0_ & ~0x00000001);
                  nodeInstanceBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getNodeInstanceFieldBuilder() : null;
                } else {
                  nodeInstanceBuilder_.addAllMessages(other.nodeInstance_);
                }
              }
            }
            if (variableBuilder_ == null) {
              if (!other.variable_.isEmpty()) {
                if (variable_.isEmpty()) {
                  variable_ = other.variable_;
                  bitField0_ = (bitField0_ & ~0x00000002);
                } else {
                  ensureVariableIsMutable();
                  variable_.addAll(other.variable_);
                }
                onChanged();
              }
            } else {
              if (!other.variable_.isEmpty()) {
                if (variableBuilder_.isEmpty()) {
                  variableBuilder_.dispose();
                  variableBuilder_ = null;
                  variable_ = other.variable_;
                  bitField0_ = (bitField0_ & ~0x00000002);
                  variableBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getVariableFieldBuilder() : null;
                } else {
                  variableBuilder_.addAllMessages(other.variable_);
                }
              }
            }
            if (iterationLevelsBuilder_ == null) {
              if (!other.iterationLevels_.isEmpty()) {
                if (iterationLevels_.isEmpty()) {
                  iterationLevels_ = other.iterationLevels_;
                  bitField0_ = (bitField0_ & ~0x00000004);
                } else {
                  ensureIterationLevelsIsMutable();
                  iterationLevels_.addAll(other.iterationLevels_);
                }
                onChanged();
              }
            } else {
              if (!other.iterationLevels_.isEmpty()) {
                if (iterationLevelsBuilder_.isEmpty()) {
                  iterationLevelsBuilder_.dispose();
                  iterationLevelsBuilder_ = null;
                  iterationLevels_ = other.iterationLevels_;
                  bitField0_ = (bitField0_ & ~0x00000004);
                  iterationLevelsBuilder_ = 
                    com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                       getIterationLevelsFieldBuilder() : null;
                } else {
                  iterationLevelsBuilder_.addAllMessages(other.iterationLevels_);
                }
              }
            }
            if (other.hasSequentialCounter()) {
              setSequentialCounter(other.getSequentialCounter());
            }
            if (!other.timerInstanceId_.isEmpty()) {
              if (timerInstanceId_.isEmpty()) {
                timerInstanceId_ = other.timerInstanceId_;
                bitField0_ = (bitField0_ & ~0x00000010);
              } else {
                ensureTimerInstanceIdIsMutable();
                timerInstanceId_.addAll(other.timerInstanceId_);
              }
              onChanged();
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.util.List nodeInstance_ =
            java.util.Collections.emptyList();
          private void ensureNodeInstanceIsMutable() {
            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
              nodeInstance_ = new java.util.ArrayList(nodeInstance_);
              bitField0_ |= 0x00000001;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder> nodeInstanceBuilder_;

          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public java.util.List getNodeInstanceList() {
            if (nodeInstanceBuilder_ == null) {
              return java.util.Collections.unmodifiableList(nodeInstance_);
            } else {
              return nodeInstanceBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public int getNodeInstanceCount() {
            if (nodeInstanceBuilder_ == null) {
              return nodeInstance_.size();
            } else {
              return nodeInstanceBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index) {
            if (nodeInstanceBuilder_ == null) {
              return nodeInstance_.get(index);
            } else {
              return nodeInstanceBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder setNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
            if (nodeInstanceBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureNodeInstanceIsMutable();
              nodeInstance_.set(index, value);
              onChanged();
            } else {
              nodeInstanceBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder setNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.set(index, builderForValue.build());
              onChanged();
            } else {
              nodeInstanceBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder addNodeInstance(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
            if (nodeInstanceBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(value);
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder addNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
            if (nodeInstanceBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(index, value);
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder addNodeInstance(
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(builderForValue.build());
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder addNodeInstance(
              int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.add(index, builderForValue.build());
              onChanged();
            } else {
              nodeInstanceBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder addAllNodeInstance(
              java.lang.Iterable values) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, nodeInstance_);
              onChanged();
            } else {
              nodeInstanceBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder clearNodeInstance() {
            if (nodeInstanceBuilder_ == null) {
              nodeInstance_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000001);
              onChanged();
            } else {
              nodeInstanceBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public Builder removeNodeInstance(int index) {
            if (nodeInstanceBuilder_ == null) {
              ensureNodeInstanceIsMutable();
              nodeInstance_.remove(index);
              onChanged();
            } else {
              nodeInstanceBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder getNodeInstanceBuilder(
              int index) {
            return getNodeInstanceFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
              int index) {
            if (nodeInstanceBuilder_ == null) {
              return nodeInstance_.get(index);  } else {
              return nodeInstanceBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public java.util.List 
               getNodeInstanceOrBuilderList() {
            if (nodeInstanceBuilder_ != null) {
              return nodeInstanceBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(nodeInstance_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder addNodeInstanceBuilder() {
            return getNodeInstanceFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder addNodeInstanceBuilder(
              int index) {
            return getNodeInstanceFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 1;
           */
          public java.util.List 
               getNodeInstanceBuilderList() {
            return getNodeInstanceFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder> 
              getNodeInstanceFieldBuilder() {
            if (nodeInstanceBuilder_ == null) {
              nodeInstanceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder>(
                      nodeInstance_,
                      ((bitField0_ & 0x00000001) == 0x00000001),
                      getParentForChildren(),
                      isClean());
              nodeInstance_ = null;
            }
            return nodeInstanceBuilder_;
          }

          private java.util.List variable_ =
            java.util.Collections.emptyList();
          private void ensureVariableIsMutable() {
            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
              variable_ = new java.util.ArrayList(variable_);
              bitField0_ |= 0x00000002;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> variableBuilder_;

          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public java.util.List getVariableList() {
            if (variableBuilder_ == null) {
              return java.util.Collections.unmodifiableList(variable_);
            } else {
              return variableBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public int getVariableCount() {
            if (variableBuilder_ == null) {
              return variable_.size();
            } else {
              return variableBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) {
            if (variableBuilder_ == null) {
              return variable_.get(index);
            } else {
              return variableBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder setVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
            if (variableBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureVariableIsMutable();
              variable_.set(index, value);
              onChanged();
            } else {
              variableBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder setVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.set(index, builderForValue.build());
              onChanged();
            } else {
              variableBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder addVariable(org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
            if (variableBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureVariableIsMutable();
              variable_.add(value);
              onChanged();
            } else {
              variableBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder addVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
            if (variableBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureVariableIsMutable();
              variable_.add(index, value);
              onChanged();
            } else {
              variableBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder addVariable(
              org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.add(builderForValue.build());
              onChanged();
            } else {
              variableBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder addVariable(
              int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.add(index, builderForValue.build());
              onChanged();
            } else {
              variableBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder addAllVariable(
              java.lang.Iterable values) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, variable_);
              onChanged();
            } else {
              variableBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder clearVariable() {
            if (variableBuilder_ == null) {
              variable_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000002);
              onChanged();
            } else {
              variableBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public Builder removeVariable(int index) {
            if (variableBuilder_ == null) {
              ensureVariableIsMutable();
              variable_.remove(index);
              onChanged();
            } else {
              variableBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder getVariableBuilder(
              int index) {
            return getVariableFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
              int index) {
            if (variableBuilder_ == null) {
              return variable_.get(index);  } else {
              return variableBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public java.util.List 
               getVariableOrBuilderList() {
            if (variableBuilder_ != null) {
              return variableBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(variable_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder() {
            return getVariableFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder(
              int index) {
            return getVariableFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.Variable variable = 2;
           */
          public java.util.List 
               getVariableBuilderList() {
            return getVariableFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> 
              getVariableFieldBuilder() {
            if (variableBuilder_ == null) {
              variableBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder>(
                      variable_,
                      ((bitField0_ & 0x00000002) == 0x00000002),
                      getParentForChildren(),
                      isClean());
              variable_ = null;
            }
            return variableBuilder_;
          }

          private java.util.List iterationLevels_ =
            java.util.Collections.emptyList();
          private void ensureIterationLevelsIsMutable() {
            if (!((bitField0_ & 0x00000004) == 0x00000004)) {
              iterationLevels_ = new java.util.ArrayList(iterationLevels_);
              bitField0_ |= 0x00000004;
             }
          }

          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder> iterationLevelsBuilder_;

          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public java.util.List getIterationLevelsList() {
            if (iterationLevelsBuilder_ == null) {
              return java.util.Collections.unmodifiableList(iterationLevels_);
            } else {
              return iterationLevelsBuilder_.getMessageList();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public int getIterationLevelsCount() {
            if (iterationLevelsBuilder_ == null) {
              return iterationLevels_.size();
            } else {
              return iterationLevelsBuilder_.getCount();
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index) {
            if (iterationLevelsBuilder_ == null) {
              return iterationLevels_.get(index);
            } else {
              return iterationLevelsBuilder_.getMessage(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder setIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
            if (iterationLevelsBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureIterationLevelsIsMutable();
              iterationLevels_.set(index, value);
              onChanged();
            } else {
              iterationLevelsBuilder_.setMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder setIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.set(index, builderForValue.build());
              onChanged();
            } else {
              iterationLevelsBuilder_.setMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder addIterationLevels(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
            if (iterationLevelsBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(value);
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder addIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
            if (iterationLevelsBuilder_ == null) {
              if (value == null) {
                throw new NullPointerException();
              }
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(index, value);
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(index, value);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder addIterationLevels(
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(builderForValue.build());
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder addIterationLevels(
              int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.add(index, builderForValue.build());
              onChanged();
            } else {
              iterationLevelsBuilder_.addMessage(index, builderForValue.build());
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder addAllIterationLevels(
              java.lang.Iterable values) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              com.google.protobuf.AbstractMessageLite.Builder.addAll(
                  values, iterationLevels_);
              onChanged();
            } else {
              iterationLevelsBuilder_.addAllMessages(values);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder clearIterationLevels() {
            if (iterationLevelsBuilder_ == null) {
              iterationLevels_ = java.util.Collections.emptyList();
              bitField0_ = (bitField0_ & ~0x00000004);
              onChanged();
            } else {
              iterationLevelsBuilder_.clear();
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public Builder removeIterationLevels(int index) {
            if (iterationLevelsBuilder_ == null) {
              ensureIterationLevelsIsMutable();
              iterationLevels_.remove(index);
              onChanged();
            } else {
              iterationLevelsBuilder_.remove(index);
            }
            return this;
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder getIterationLevelsBuilder(
              int index) {
            return getIterationLevelsFieldBuilder().getBuilder(index);
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
              int index) {
            if (iterationLevelsBuilder_ == null) {
              return iterationLevels_.get(index);  } else {
              return iterationLevelsBuilder_.getMessageOrBuilder(index);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public java.util.List 
               getIterationLevelsOrBuilderList() {
            if (iterationLevelsBuilder_ != null) {
              return iterationLevelsBuilder_.getMessageOrBuilderList();
            } else {
              return java.util.Collections.unmodifiableList(iterationLevels_);
            }
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder addIterationLevelsBuilder() {
            return getIterationLevelsFieldBuilder().addBuilder(
                org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder addIterationLevelsBuilder(
              int index) {
            return getIterationLevelsFieldBuilder().addBuilder(
                index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance());
          }
          /**
           * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 3;
           */
          public java.util.List 
               getIterationLevelsBuilderList() {
            return getIterationLevelsFieldBuilder().getBuilderList();
          }
          private com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder> 
              getIterationLevelsFieldBuilder() {
            if (iterationLevelsBuilder_ == null) {
              iterationLevelsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                  org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder>(
                      iterationLevels_,
                      ((bitField0_ & 0x00000004) == 0x00000004),
                      getParentForChildren(),
                      isClean());
              iterationLevels_ = null;
            }
            return iterationLevelsBuilder_;
          }

          private int sequentialCounter_ ;
          /**
           * optional int32 sequential_counter = 4;
           */
          public boolean hasSequentialCounter() {
            return ((bitField0_ & 0x00000008) == 0x00000008);
          }
          /**
           * optional int32 sequential_counter = 4;
           */
          public int getSequentialCounter() {
            return sequentialCounter_;
          }
          /**
           * optional int32 sequential_counter = 4;
           */
          public Builder setSequentialCounter(int value) {
            bitField0_ |= 0x00000008;
            sequentialCounter_ = value;
            onChanged();
            return this;
          }
          /**
           * optional int32 sequential_counter = 4;
           */
          public Builder clearSequentialCounter() {
            bitField0_ = (bitField0_ & ~0x00000008);
            sequentialCounter_ = 0;
            onChanged();
            return this;
          }

          private java.util.List timerInstanceId_ = java.util.Collections.emptyList();
          private void ensureTimerInstanceIdIsMutable() {
            if (!((bitField0_ & 0x00000010) == 0x00000010)) {
              timerInstanceId_ = new java.util.ArrayList(timerInstanceId_);
              bitField0_ |= 0x00000010;
             }
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public java.util.List
              getTimerInstanceIdList() {
            return java.util.Collections.unmodifiableList(timerInstanceId_);
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public int getTimerInstanceIdCount() {
            return timerInstanceId_.size();
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public long getTimerInstanceId(int index) {
            return timerInstanceId_.get(index);
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public Builder setTimerInstanceId(
              int index, long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.set(index, value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public Builder addTimerInstanceId(long value) {
            ensureTimerInstanceIdIsMutable();
            timerInstanceId_.add(value);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public Builder addAllTimerInstanceId(
              java.lang.Iterable values) {
            ensureTimerInstanceIdIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, timerInstanceId_);
            onChanged();
            return this;
          }
          /**
           * repeated int64 timer_instance_id = 5;
           */
          public Builder clearTimerInstanceId() {
            timerInstanceId_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000010);
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode)
        }

        static {
          defaultInstance = new ForEachNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode)
      }

      public interface AsyncEventNodeOrBuilder extends
          // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode)
          com.google.protobuf.MessageOrBuilder {

        /**
         * optional string event_type = 1;
         */
        boolean hasEventType();
        /**
         * optional string event_type = 1;
         */
        java.lang.String getEventType();
        /**
         * optional string event_type = 1;
         */
        com.google.protobuf.ByteString
            getEventTypeBytes();
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode}
       */
      public static final class AsyncEventNode extends
          com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode)
          AsyncEventNodeOrBuilder {
        // Use AsyncEventNode.newBuilder() to construct.
        private AsyncEventNode(com.google.protobuf.GeneratedMessage.Builder builder) {
          super(builder);
          this.unknownFields = builder.getUnknownFields();
        }
        private AsyncEventNode(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

        private static final AsyncEventNode defaultInstance;
        public static AsyncEventNode getDefaultInstance() {
          return defaultInstance;
        }

        public AsyncEventNode getDefaultInstanceForType() {
          return defaultInstance;
        }

        private final com.google.protobuf.UnknownFieldSet unknownFields;
        @java.lang.Override
        public final com.google.protobuf.UnknownFieldSet
            getUnknownFields() {
          return this.unknownFields;
        }
        private AsyncEventNode(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          initFields();
          int mutable_bitField0_ = 0;
          com.google.protobuf.UnknownFieldSet.Builder unknownFields =
              com.google.protobuf.UnknownFieldSet.newBuilder();
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!parseUnknownField(input, unknownFields,
                                         extensionRegistry, tag)) {
                    done = true;
                  }
                  break;
                }
                case 10: {
                  com.google.protobuf.ByteString bs = input.readBytes();
                  bitField0_ |= 0x00000001;
                  eventType_ = bs;
                  break;
                }
              }
            }
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(this);
          } catch (java.io.IOException e) {
            throw new com.google.protobuf.InvalidProtocolBufferException(
                e.getMessage()).setUnfinishedMessage(this);
          } finally {
            this.unknownFields = unknownFields.build();
            makeExtensionsImmutable();
          }
        }
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder.class);
        }

        public static com.google.protobuf.Parser PARSER =
            new com.google.protobuf.AbstractParser() {
          public AsyncEventNode parsePartialFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.google.protobuf.InvalidProtocolBufferException {
            return new AsyncEventNode(input, extensionRegistry);
          }
        };

        @java.lang.Override
        public com.google.protobuf.Parser getParserForType() {
          return PARSER;
        }

        private int bitField0_;
        public static final int EVENT_TYPE_FIELD_NUMBER = 1;
        private java.lang.Object eventType_;
        /**
         * optional string event_type = 1;
         */
        public boolean hasEventType() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional string event_type = 1;
         */
        public java.lang.String getEventType() {
          java.lang.Object ref = eventType_;
          if (ref instanceof java.lang.String) {
            return (java.lang.String) ref;
          } else {
            com.google.protobuf.ByteString bs = 
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              eventType_ = s;
            }
            return s;
          }
        }
        /**
         * optional string event_type = 1;
         */
        public com.google.protobuf.ByteString
            getEventTypeBytes() {
          java.lang.Object ref = eventType_;
          if (ref instanceof java.lang.String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            eventType_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }

        private void initFields() {
          eventType_ = "";
        }
        private byte memoizedIsInitialized = -1;
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;

          memoizedIsInitialized = 1;
          return true;
        }

        public void writeTo(com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          getSerializedSize();
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            output.writeBytes(1, getEventTypeBytes());
          }
          getUnknownFields().writeTo(output);
        }

        private int memoizedSerializedSize = -1;
        public int getSerializedSize() {
          int size = memoizedSerializedSize;
          if (size != -1) return size;

          size = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            size += com.google.protobuf.CodedOutputStream
              .computeBytesSize(1, getEventTypeBytes());
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSerializedSize = size;
          return size;
        }

        private static final long serialVersionUID = 0L;
        @java.lang.Override
        protected java.lang.Object writeReplace()
            throws java.io.ObjectStreamException {
          return super.writeReplace();
        }

        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseDelimitedFrom(input, extensionRegistry);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return PARSER.parseFrom(input);
        }
        public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return PARSER.parseFrom(input, extensionRegistry);
        }

        public static Builder newBuilder() { return Builder.create(); }
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode prototype) {
          return newBuilder().mergeFrom(prototype);
        }
        public Builder toBuilder() { return newBuilder(this); }

        @java.lang.Override
        protected Builder newBuilderForType(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessage.Builder implements
            // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode)
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder {
          public static final com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_descriptor;
          }

          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder.class);
          }

          // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.newBuilder()
          private Builder() {
            maybeForceBuilderInitialization();
          }

          private Builder(
              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
            maybeForceBuilderInitialization();
          }
          private void maybeForceBuilderInitialization() {
            if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            }
          }
          private static Builder create() {
            return new Builder();
          }

          public Builder clear() {
            super.clear();
            eventType_ = "";
            bitField0_ = (bitField0_ & ~0x00000001);
            return this;
          }

          public Builder clone() {
            return create().mergeFrom(buildPartial());
          }

          public com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_descriptor;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode getDefaultInstanceForType() {
            return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance();
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode build() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }

          public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode buildPartial() {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode(this);
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
              to_bitField0_ |= 0x00000001;
            }
            result.eventType_ = eventType_;
            result.bitField0_ = to_bitField0_;
            onBuilt();
            return result;
          }

          public Builder mergeFrom(com.google.protobuf.Message other) {
            if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode) {
              return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }

          public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode other) {
            if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance()) return this;
            if (other.hasEventType()) {
              bitField0_ |= 0x00000001;
              eventType_ = other.eventType_;
              onChanged();
            }
            this.mergeUnknownFields(other.getUnknownFields());
            return this;
          }

          public final boolean isInitialized() {
            return true;
          }

          public Builder mergeFrom(
              com.google.protobuf.CodedInputStream input,
              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode parsedMessage = null;
            try {
              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
              parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode) e.getUnfinishedMessage();
              throw e;
            } finally {
              if (parsedMessage != null) {
                mergeFrom(parsedMessage);
              }
            }
            return this;
          }
          private int bitField0_;

          private java.lang.Object eventType_ = "";
          /**
           * optional string event_type = 1;
           */
          public boolean hasEventType() {
            return ((bitField0_ & 0x00000001) == 0x00000001);
          }
          /**
           * optional string event_type = 1;
           */
          public java.lang.String getEventType() {
            java.lang.Object ref = eventType_;
            if (!(ref instanceof java.lang.String)) {
              com.google.protobuf.ByteString bs =
                  (com.google.protobuf.ByteString) ref;
              java.lang.String s = bs.toStringUtf8();
              if (bs.isValidUtf8()) {
                eventType_ = s;
              }
              return s;
            } else {
              return (java.lang.String) ref;
            }
          }
          /**
           * optional string event_type = 1;
           */
          public com.google.protobuf.ByteString
              getEventTypeBytes() {
            java.lang.Object ref = eventType_;
            if (ref instanceof String) {
              com.google.protobuf.ByteString b = 
                  com.google.protobuf.ByteString.copyFromUtf8(
                      (java.lang.String) ref);
              eventType_ = b;
              return b;
            } else {
              return (com.google.protobuf.ByteString) ref;
            }
          }
          /**
           * optional string event_type = 1;
           */
          public Builder setEventType(
              java.lang.String value) {
            if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
            eventType_ = value;
            onChanged();
            return this;
          }
          /**
           * optional string event_type = 1;
           */
          public Builder clearEventType() {
            bitField0_ = (bitField0_ & ~0x00000001);
            eventType_ = getDefaultInstance().getEventType();
            onChanged();
            return this;
          }
          /**
           * optional string event_type = 1;
           */
          public Builder setEventTypeBytes(
              com.google.protobuf.ByteString value) {
            if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
            eventType_ = value;
            onChanged();
            return this;
          }

          // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode)
        }

        static {
          defaultInstance = new AsyncEventNode(true);
          defaultInstance.initFields();
        }

        // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode)
      }

      private int bitField0_;
      public static final int TYPE_FIELD_NUMBER = 1;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType type_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
       */
      public boolean hasType() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType getType() {
        return type_;
      }

      public static final int RULE_SET_FIELD_NUMBER = 2;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode ruleSet_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
       */
      public boolean hasRuleSet() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode getRuleSet() {
        return ruleSet_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder getRuleSetOrBuilder() {
        return ruleSet_;
      }

      public static final int HUMAN_TASK_FIELD_NUMBER = 3;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode humanTask_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
       */
      public boolean hasHumanTask() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode getHumanTask() {
        return humanTask_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder getHumanTaskOrBuilder() {
        return humanTask_;
      }

      public static final int WORK_ITEM_FIELD_NUMBER = 4;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode workItem_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
       */
      public boolean hasWorkItem() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode getWorkItem() {
        return workItem_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder getWorkItemOrBuilder() {
        return workItem_;
      }

      public static final int SUB_PROCESS_FIELD_NUMBER = 5;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode subProcess_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
       */
      public boolean hasSubProcess() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode getSubProcess() {
        return subProcess_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder getSubProcessOrBuilder() {
        return subProcess_;
      }

      public static final int MILESTONE_FIELD_NUMBER = 6;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode milestone_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
       */
      public boolean hasMilestone() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode getMilestone() {
        return milestone_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder getMilestoneOrBuilder() {
        return milestone_;
      }

      public static final int EVENT_FIELD_NUMBER = 7;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode event_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
       */
      public boolean hasEvent() {
        return ((bitField0_ & 0x00000040) == 0x00000040);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode getEvent() {
        return event_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder getEventOrBuilder() {
        return event_;
      }

      public static final int TIMER_FIELD_NUMBER = 8;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode timer_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
       */
      public boolean hasTimer() {
        return ((bitField0_ & 0x00000080) == 0x00000080);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode getTimer() {
        return timer_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder getTimerOrBuilder() {
        return timer_;
      }

      public static final int JOIN_FIELD_NUMBER = 9;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode join_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
       */
      public boolean hasJoin() {
        return ((bitField0_ & 0x00000100) == 0x00000100);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode getJoin() {
        return join_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder getJoinOrBuilder() {
        return join_;
      }

      public static final int STATE_FIELD_NUMBER = 10;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode state_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
       */
      public boolean hasState() {
        return ((bitField0_ & 0x00000200) == 0x00000200);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode getState() {
        return state_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder getStateOrBuilder() {
        return state_;
      }

      public static final int COMPOSITE_FIELD_NUMBER = 11;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode composite_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
       */
      public boolean hasComposite() {
        return ((bitField0_ & 0x00000400) == 0x00000400);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode getComposite() {
        return composite_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder getCompositeOrBuilder() {
        return composite_;
      }

      public static final int FOR_EACH_FIELD_NUMBER = 12;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode forEach_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
       */
      public boolean hasForEach() {
        return ((bitField0_ & 0x00000800) == 0x00000800);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode getForEach() {
        return forEach_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder getForEachOrBuilder() {
        return forEach_;
      }

      public static final int ASYNC_EVENT_FIELD_NUMBER = 13;
      private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode asyncEvent_;
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
       */
      public boolean hasAsyncEvent() {
        return ((bitField0_ & 0x00001000) == 0x00001000);
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode getAsyncEvent() {
        return asyncEvent_;
      }
      /**
       * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder getAsyncEventOrBuilder() {
        return asyncEvent_;
      }

      private void initFields() {
        type_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType.RULE_SET_NODE;
        ruleSet_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance();
        humanTask_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance();
        workItem_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance();
        subProcess_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance();
        milestone_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance();
        event_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance();
        timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance();
        join_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance();
        state_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance();
        composite_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance();
        forEach_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance();
        asyncEvent_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance();
      }
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          output.writeEnum(1, type_.getNumber());
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          output.writeMessage(2, ruleSet_);
        }
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          output.writeMessage(3, humanTask_);
        }
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          output.writeMessage(4, workItem_);
        }
        if (((bitField0_ & 0x00000010) == 0x00000010)) {
          output.writeMessage(5, subProcess_);
        }
        if (((bitField0_ & 0x00000020) == 0x00000020)) {
          output.writeMessage(6, milestone_);
        }
        if (((bitField0_ & 0x00000040) == 0x00000040)) {
          output.writeMessage(7, event_);
        }
        if (((bitField0_ & 0x00000080) == 0x00000080)) {
          output.writeMessage(8, timer_);
        }
        if (((bitField0_ & 0x00000100) == 0x00000100)) {
          output.writeMessage(9, join_);
        }
        if (((bitField0_ & 0x00000200) == 0x00000200)) {
          output.writeMessage(10, state_);
        }
        if (((bitField0_ & 0x00000400) == 0x00000400)) {
          output.writeMessage(11, composite_);
        }
        if (((bitField0_ & 0x00000800) == 0x00000800)) {
          output.writeMessage(12, forEach_);
        }
        if (((bitField0_ & 0x00001000) == 0x00001000)) {
          output.writeMessage(13, asyncEvent_);
        }
        getUnknownFields().writeTo(output);
      }

      private int memoizedSerializedSize = -1;
      public int getSerializedSize() {
        int size = memoizedSerializedSize;
        if (size != -1) return size;

        size = 0;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          size += com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, type_.getNumber());
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, ruleSet_);
        }
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, humanTask_);
        }
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, workItem_);
        }
        if (((bitField0_ & 0x00000010) == 0x00000010)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(5, subProcess_);
        }
        if (((bitField0_ & 0x00000020) == 0x00000020)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(6, milestone_);
        }
        if (((bitField0_ & 0x00000040) == 0x00000040)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(7, event_);
        }
        if (((bitField0_ & 0x00000080) == 0x00000080)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(8, timer_);
        }
        if (((bitField0_ & 0x00000100) == 0x00000100)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(9, join_);
        }
        if (((bitField0_ & 0x00000200) == 0x00000200)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(10, state_);
        }
        if (((bitField0_ & 0x00000400) == 0x00000400)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(11, composite_);
        }
        if (((bitField0_ & 0x00000800) == 0x00000800)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(12, forEach_);
        }
        if (((bitField0_ & 0x00001000) == 0x00001000)) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(13, asyncEvent_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSerializedSize = size;
        return size;
      }

      private static final long serialVersionUID = 0L;
      @java.lang.Override
      protected java.lang.Object writeReplace()
          throws java.io.ObjectStreamException {
        return super.writeReplace();
      }

      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input, extensionRegistry);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }

      public static Builder newBuilder() { return Builder.create(); }
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent prototype) {
        return newBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() { return newBuilder(this); }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.jbpm.marshalling.ProcessInstance.NodeInstanceContent}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessage.Builder implements
          // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent)
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContentOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor;
        }

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.Builder.class);
        }

        // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
            getRuleSetFieldBuilder();
            getHumanTaskFieldBuilder();
            getWorkItemFieldBuilder();
            getSubProcessFieldBuilder();
            getMilestoneFieldBuilder();
            getEventFieldBuilder();
            getTimerFieldBuilder();
            getJoinFieldBuilder();
            getStateFieldBuilder();
            getCompositeFieldBuilder();
            getForEachFieldBuilder();
            getAsyncEventFieldBuilder();
          }
        }
        private static Builder create() {
          return new Builder();
        }

        public Builder clear() {
          super.clear();
          type_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType.RULE_SET_NODE;
          bitField0_ = (bitField0_ & ~0x00000001);
          if (ruleSetBuilder_ == null) {
            ruleSet_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance();
          } else {
            ruleSetBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          if (humanTaskBuilder_ == null) {
            humanTask_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance();
          } else {
            humanTaskBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000004);
          if (workItemBuilder_ == null) {
            workItem_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance();
          } else {
            workItemBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000008);
          if (subProcessBuilder_ == null) {
            subProcess_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance();
          } else {
            subProcessBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000010);
          if (milestoneBuilder_ == null) {
            milestone_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance();
          } else {
            milestoneBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000020);
          if (eventBuilder_ == null) {
            event_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance();
          } else {
            eventBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000040);
          if (timerBuilder_ == null) {
            timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance();
          } else {
            timerBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000080);
          if (joinBuilder_ == null) {
            join_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance();
          } else {
            joinBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000100);
          if (stateBuilder_ == null) {
            state_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance();
          } else {
            stateBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000200);
          if (compositeBuilder_ == null) {
            composite_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance();
          } else {
            compositeBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000400);
          if (forEachBuilder_ == null) {
            forEach_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance();
          } else {
            forEachBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000800);
          if (asyncEventBuilder_ == null) {
            asyncEvent_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance();
          } else {
            asyncEventBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00001000);
          return this;
        }

        public Builder clone() {
          return create().mergeFrom(buildPartial());
        }

        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent getDefaultInstanceForType() {
          return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance();
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent build() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent buildPartial() {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
            to_bitField0_ |= 0x00000001;
          }
          result.type_ = type_;
          if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
            to_bitField0_ |= 0x00000002;
          }
          if (ruleSetBuilder_ == null) {
            result.ruleSet_ = ruleSet_;
          } else {
            result.ruleSet_ = ruleSetBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
            to_bitField0_ |= 0x00000004;
          }
          if (humanTaskBuilder_ == null) {
            result.humanTask_ = humanTask_;
          } else {
            result.humanTask_ = humanTaskBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
            to_bitField0_ |= 0x00000008;
          }
          if (workItemBuilder_ == null) {
            result.workItem_ = workItem_;
          } else {
            result.workItem_ = workItemBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
            to_bitField0_ |= 0x00000010;
          }
          if (subProcessBuilder_ == null) {
            result.subProcess_ = subProcess_;
          } else {
            result.subProcess_ = subProcessBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
            to_bitField0_ |= 0x00000020;
          }
          if (milestoneBuilder_ == null) {
            result.milestone_ = milestone_;
          } else {
            result.milestone_ = milestoneBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
            to_bitField0_ |= 0x00000040;
          }
          if (eventBuilder_ == null) {
            result.event_ = event_;
          } else {
            result.event_ = eventBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
            to_bitField0_ |= 0x00000080;
          }
          if (timerBuilder_ == null) {
            result.timer_ = timer_;
          } else {
            result.timer_ = timerBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
            to_bitField0_ |= 0x00000100;
          }
          if (joinBuilder_ == null) {
            result.join_ = join_;
          } else {
            result.join_ = joinBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
            to_bitField0_ |= 0x00000200;
          }
          if (stateBuilder_ == null) {
            result.state_ = state_;
          } else {
            result.state_ = stateBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000400) == 0x00000400)) {
            to_bitField0_ |= 0x00000400;
          }
          if (compositeBuilder_ == null) {
            result.composite_ = composite_;
          } else {
            result.composite_ = compositeBuilder_.build();
          }
          if (((from_bitField0_ & 0x00000800) == 0x00000800)) {
            to_bitField0_ |= 0x00000800;
          }
          if (forEachBuilder_ == null) {
            result.forEach_ = forEach_;
          } else {
            result.forEach_ = forEachBuilder_.build();
          }
          if (((from_bitField0_ & 0x00001000) == 0x00001000)) {
            to_bitField0_ |= 0x00001000;
          }
          if (asyncEventBuilder_ == null) {
            result.asyncEvent_ = asyncEvent_;
          } else {
            result.asyncEvent_ = asyncEventBuilder_.build();
          }
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }

        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent) {
            return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent other) {
          if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.getDefaultInstance()) return this;
          if (other.hasType()) {
            setType(other.getType());
          }
          if (other.hasRuleSet()) {
            mergeRuleSet(other.getRuleSet());
          }
          if (other.hasHumanTask()) {
            mergeHumanTask(other.getHumanTask());
          }
          if (other.hasWorkItem()) {
            mergeWorkItem(other.getWorkItem());
          }
          if (other.hasSubProcess()) {
            mergeSubProcess(other.getSubProcess());
          }
          if (other.hasMilestone()) {
            mergeMilestone(other.getMilestone());
          }
          if (other.hasEvent()) {
            mergeEvent(other.getEvent());
          }
          if (other.hasTimer()) {
            mergeTimer(other.getTimer());
          }
          if (other.hasJoin()) {
            mergeJoin(other.getJoin());
          }
          if (other.hasState()) {
            mergeState(other.getState());
          }
          if (other.hasComposite()) {
            mergeComposite(other.getComposite());
          }
          if (other.hasForEach()) {
            mergeForEach(other.getForEach());
          }
          if (other.hasAsyncEvent()) {
            mergeAsyncEvent(other.getAsyncEvent());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          return this;
        }

        public final boolean isInitialized() {
          return true;
        }

        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent) e.getUnfinishedMessage();
            throw e;
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType type_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType.RULE_SET_NODE;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
         */
        public boolean hasType() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType getType() {
          return type_;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
         */
        public Builder setType(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          type_ = value;
          onChanged();
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceType type = 1;
         */
        public Builder clearType() {
          bitField0_ = (bitField0_ & ~0x00000001);
          type_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceType.RULE_SET_NODE;
          onChanged();
          return this;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode ruleSet_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder> ruleSetBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public boolean hasRuleSet() {
          return ((bitField0_ & 0x00000002) == 0x00000002);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode getRuleSet() {
          if (ruleSetBuilder_ == null) {
            return ruleSet_;
          } else {
            return ruleSetBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public Builder setRuleSet(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode value) {
          if (ruleSetBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ruleSet_ = value;
            onChanged();
          } else {
            ruleSetBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public Builder setRuleSet(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder builderForValue) {
          if (ruleSetBuilder_ == null) {
            ruleSet_ = builderForValue.build();
            onChanged();
          } else {
            ruleSetBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public Builder mergeRuleSet(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode value) {
          if (ruleSetBuilder_ == null) {
            if (((bitField0_ & 0x00000002) == 0x00000002) &&
                ruleSet_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance()) {
              ruleSet_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.newBuilder(ruleSet_).mergeFrom(value).buildPartial();
            } else {
              ruleSet_ = value;
            }
            onChanged();
          } else {
            ruleSetBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000002;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public Builder clearRuleSet() {
          if (ruleSetBuilder_ == null) {
            ruleSet_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.getDefaultInstance();
            onChanged();
          } else {
            ruleSetBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder getRuleSetBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getRuleSetFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder getRuleSetOrBuilder() {
          if (ruleSetBuilder_ != null) {
            return ruleSetBuilder_.getMessageOrBuilder();
          } else {
            return ruleSet_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.RuleSetNode rule_set = 2;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder> 
            getRuleSetFieldBuilder() {
          if (ruleSetBuilder_ == null) {
            ruleSetBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.RuleSetNodeOrBuilder>(
                    getRuleSet(),
                    getParentForChildren(),
                    isClean());
            ruleSet_ = null;
          }
          return ruleSetBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode humanTask_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder> humanTaskBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public boolean hasHumanTask() {
          return ((bitField0_ & 0x00000004) == 0x00000004);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode getHumanTask() {
          if (humanTaskBuilder_ == null) {
            return humanTask_;
          } else {
            return humanTaskBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public Builder setHumanTask(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode value) {
          if (humanTaskBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            humanTask_ = value;
            onChanged();
          } else {
            humanTaskBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public Builder setHumanTask(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder builderForValue) {
          if (humanTaskBuilder_ == null) {
            humanTask_ = builderForValue.build();
            onChanged();
          } else {
            humanTaskBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public Builder mergeHumanTask(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode value) {
          if (humanTaskBuilder_ == null) {
            if (((bitField0_ & 0x00000004) == 0x00000004) &&
                humanTask_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance()) {
              humanTask_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.newBuilder(humanTask_).mergeFrom(value).buildPartial();
            } else {
              humanTask_ = value;
            }
            onChanged();
          } else {
            humanTaskBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000004;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public Builder clearHumanTask() {
          if (humanTaskBuilder_ == null) {
            humanTask_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.getDefaultInstance();
            onChanged();
          } else {
            humanTaskBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000004);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder getHumanTaskBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getHumanTaskFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder getHumanTaskOrBuilder() {
          if (humanTaskBuilder_ != null) {
            return humanTaskBuilder_.getMessageOrBuilder();
          } else {
            return humanTask_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.HumanTaskNode human_task = 3;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder> 
            getHumanTaskFieldBuilder() {
          if (humanTaskBuilder_ == null) {
            humanTaskBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.HumanTaskNodeOrBuilder>(
                    getHumanTask(),
                    getParentForChildren(),
                    isClean());
            humanTask_ = null;
          }
          return humanTaskBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode workItem_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder> workItemBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public boolean hasWorkItem() {
          return ((bitField0_ & 0x00000008) == 0x00000008);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode getWorkItem() {
          if (workItemBuilder_ == null) {
            return workItem_;
          } else {
            return workItemBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public Builder setWorkItem(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode value) {
          if (workItemBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            workItem_ = value;
            onChanged();
          } else {
            workItemBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public Builder setWorkItem(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder builderForValue) {
          if (workItemBuilder_ == null) {
            workItem_ = builderForValue.build();
            onChanged();
          } else {
            workItemBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public Builder mergeWorkItem(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode value) {
          if (workItemBuilder_ == null) {
            if (((bitField0_ & 0x00000008) == 0x00000008) &&
                workItem_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance()) {
              workItem_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.newBuilder(workItem_).mergeFrom(value).buildPartial();
            } else {
              workItem_ = value;
            }
            onChanged();
          } else {
            workItemBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000008;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public Builder clearWorkItem() {
          if (workItemBuilder_ == null) {
            workItem_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.getDefaultInstance();
            onChanged();
          } else {
            workItemBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000008);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder getWorkItemBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getWorkItemFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder getWorkItemOrBuilder() {
          if (workItemBuilder_ != null) {
            return workItemBuilder_.getMessageOrBuilder();
          } else {
            return workItem_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.WorkItemNode work_item = 4;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder> 
            getWorkItemFieldBuilder() {
          if (workItemBuilder_ == null) {
            workItemBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.WorkItemNodeOrBuilder>(
                    getWorkItem(),
                    getParentForChildren(),
                    isClean());
            workItem_ = null;
          }
          return workItemBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode subProcess_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder> subProcessBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public boolean hasSubProcess() {
          return ((bitField0_ & 0x00000010) == 0x00000010);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode getSubProcess() {
          if (subProcessBuilder_ == null) {
            return subProcess_;
          } else {
            return subProcessBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public Builder setSubProcess(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode value) {
          if (subProcessBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            subProcess_ = value;
            onChanged();
          } else {
            subProcessBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000010;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public Builder setSubProcess(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder builderForValue) {
          if (subProcessBuilder_ == null) {
            subProcess_ = builderForValue.build();
            onChanged();
          } else {
            subProcessBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000010;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public Builder mergeSubProcess(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode value) {
          if (subProcessBuilder_ == null) {
            if (((bitField0_ & 0x00000010) == 0x00000010) &&
                subProcess_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance()) {
              subProcess_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.newBuilder(subProcess_).mergeFrom(value).buildPartial();
            } else {
              subProcess_ = value;
            }
            onChanged();
          } else {
            subProcessBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000010;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public Builder clearSubProcess() {
          if (subProcessBuilder_ == null) {
            subProcess_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.getDefaultInstance();
            onChanged();
          } else {
            subProcessBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000010);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder getSubProcessBuilder() {
          bitField0_ |= 0x00000010;
          onChanged();
          return getSubProcessFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder getSubProcessOrBuilder() {
          if (subProcessBuilder_ != null) {
            return subProcessBuilder_.getMessageOrBuilder();
          } else {
            return subProcess_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.SubProcessNode sub_process = 5;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder> 
            getSubProcessFieldBuilder() {
          if (subProcessBuilder_ == null) {
            subProcessBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.SubProcessNodeOrBuilder>(
                    getSubProcess(),
                    getParentForChildren(),
                    isClean());
            subProcess_ = null;
          }
          return subProcessBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode milestone_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder> milestoneBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public boolean hasMilestone() {
          return ((bitField0_ & 0x00000020) == 0x00000020);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode getMilestone() {
          if (milestoneBuilder_ == null) {
            return milestone_;
          } else {
            return milestoneBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public Builder setMilestone(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode value) {
          if (milestoneBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            milestone_ = value;
            onChanged();
          } else {
            milestoneBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000020;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public Builder setMilestone(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder builderForValue) {
          if (milestoneBuilder_ == null) {
            milestone_ = builderForValue.build();
            onChanged();
          } else {
            milestoneBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000020;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public Builder mergeMilestone(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode value) {
          if (milestoneBuilder_ == null) {
            if (((bitField0_ & 0x00000020) == 0x00000020) &&
                milestone_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance()) {
              milestone_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.newBuilder(milestone_).mergeFrom(value).buildPartial();
            } else {
              milestone_ = value;
            }
            onChanged();
          } else {
            milestoneBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000020;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public Builder clearMilestone() {
          if (milestoneBuilder_ == null) {
            milestone_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.getDefaultInstance();
            onChanged();
          } else {
            milestoneBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000020);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder getMilestoneBuilder() {
          bitField0_ |= 0x00000020;
          onChanged();
          return getMilestoneFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder getMilestoneOrBuilder() {
          if (milestoneBuilder_ != null) {
            return milestoneBuilder_.getMessageOrBuilder();
          } else {
            return milestone_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.MilestoneNode milestone = 6;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder> 
            getMilestoneFieldBuilder() {
          if (milestoneBuilder_ == null) {
            milestoneBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.MilestoneNodeOrBuilder>(
                    getMilestone(),
                    getParentForChildren(),
                    isClean());
            milestone_ = null;
          }
          return milestoneBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode event_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder> eventBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public boolean hasEvent() {
          return ((bitField0_ & 0x00000040) == 0x00000040);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode getEvent() {
          if (eventBuilder_ == null) {
            return event_;
          } else {
            return eventBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public Builder setEvent(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode value) {
          if (eventBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            event_ = value;
            onChanged();
          } else {
            eventBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000040;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public Builder setEvent(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder builderForValue) {
          if (eventBuilder_ == null) {
            event_ = builderForValue.build();
            onChanged();
          } else {
            eventBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000040;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public Builder mergeEvent(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode value) {
          if (eventBuilder_ == null) {
            if (((bitField0_ & 0x00000040) == 0x00000040) &&
                event_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance()) {
              event_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.newBuilder(event_).mergeFrom(value).buildPartial();
            } else {
              event_ = value;
            }
            onChanged();
          } else {
            eventBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000040;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public Builder clearEvent() {
          if (eventBuilder_ == null) {
            event_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.getDefaultInstance();
            onChanged();
          } else {
            eventBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000040);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder getEventBuilder() {
          bitField0_ |= 0x00000040;
          onChanged();
          return getEventFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder getEventOrBuilder() {
          if (eventBuilder_ != null) {
            return eventBuilder_.getMessageOrBuilder();
          } else {
            return event_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.EventNode event = 7;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder> 
            getEventFieldBuilder() {
          if (eventBuilder_ == null) {
            eventBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.EventNodeOrBuilder>(
                    getEvent(),
                    getParentForChildren(),
                    isClean());
            event_ = null;
          }
          return eventBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder> timerBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public boolean hasTimer() {
          return ((bitField0_ & 0x00000080) == 0x00000080);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode getTimer() {
          if (timerBuilder_ == null) {
            return timer_;
          } else {
            return timerBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public Builder setTimer(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode value) {
          if (timerBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            timer_ = value;
            onChanged();
          } else {
            timerBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000080;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public Builder setTimer(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder builderForValue) {
          if (timerBuilder_ == null) {
            timer_ = builderForValue.build();
            onChanged();
          } else {
            timerBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000080;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public Builder mergeTimer(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode value) {
          if (timerBuilder_ == null) {
            if (((bitField0_ & 0x00000080) == 0x00000080) &&
                timer_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance()) {
              timer_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.newBuilder(timer_).mergeFrom(value).buildPartial();
            } else {
              timer_ = value;
            }
            onChanged();
          } else {
            timerBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000080;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public Builder clearTimer() {
          if (timerBuilder_ == null) {
            timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.getDefaultInstance();
            onChanged();
          } else {
            timerBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000080);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder getTimerBuilder() {
          bitField0_ |= 0x00000080;
          onChanged();
          return getTimerFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder getTimerOrBuilder() {
          if (timerBuilder_ != null) {
            return timerBuilder_.getMessageOrBuilder();
          } else {
            return timer_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.TimerNode timer = 8;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder> 
            getTimerFieldBuilder() {
          if (timerBuilder_ == null) {
            timerBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.TimerNodeOrBuilder>(
                    getTimer(),
                    getParentForChildren(),
                    isClean());
            timer_ = null;
          }
          return timerBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode join_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder> joinBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public boolean hasJoin() {
          return ((bitField0_ & 0x00000100) == 0x00000100);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode getJoin() {
          if (joinBuilder_ == null) {
            return join_;
          } else {
            return joinBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public Builder setJoin(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode value) {
          if (joinBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            join_ = value;
            onChanged();
          } else {
            joinBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000100;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public Builder setJoin(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder builderForValue) {
          if (joinBuilder_ == null) {
            join_ = builderForValue.build();
            onChanged();
          } else {
            joinBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000100;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public Builder mergeJoin(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode value) {
          if (joinBuilder_ == null) {
            if (((bitField0_ & 0x00000100) == 0x00000100) &&
                join_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance()) {
              join_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.newBuilder(join_).mergeFrom(value).buildPartial();
            } else {
              join_ = value;
            }
            onChanged();
          } else {
            joinBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000100;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public Builder clearJoin() {
          if (joinBuilder_ == null) {
            join_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.getDefaultInstance();
            onChanged();
          } else {
            joinBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000100);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder getJoinBuilder() {
          bitField0_ |= 0x00000100;
          onChanged();
          return getJoinFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder getJoinOrBuilder() {
          if (joinBuilder_ != null) {
            return joinBuilder_.getMessageOrBuilder();
          } else {
            return join_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.JoinNode join = 9;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder> 
            getJoinFieldBuilder() {
          if (joinBuilder_ == null) {
            joinBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.JoinNodeOrBuilder>(
                    getJoin(),
                    getParentForChildren(),
                    isClean());
            join_ = null;
          }
          return joinBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode state_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder> stateBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public boolean hasState() {
          return ((bitField0_ & 0x00000200) == 0x00000200);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode getState() {
          if (stateBuilder_ == null) {
            return state_;
          } else {
            return stateBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public Builder setState(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode value) {
          if (stateBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            state_ = value;
            onChanged();
          } else {
            stateBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000200;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public Builder setState(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder builderForValue) {
          if (stateBuilder_ == null) {
            state_ = builderForValue.build();
            onChanged();
          } else {
            stateBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000200;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public Builder mergeState(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode value) {
          if (stateBuilder_ == null) {
            if (((bitField0_ & 0x00000200) == 0x00000200) &&
                state_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance()) {
              state_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.newBuilder(state_).mergeFrom(value).buildPartial();
            } else {
              state_ = value;
            }
            onChanged();
          } else {
            stateBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000200;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public Builder clearState() {
          if (stateBuilder_ == null) {
            state_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.getDefaultInstance();
            onChanged();
          } else {
            stateBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000200);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder getStateBuilder() {
          bitField0_ |= 0x00000200;
          onChanged();
          return getStateFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder getStateOrBuilder() {
          if (stateBuilder_ != null) {
            return stateBuilder_.getMessageOrBuilder();
          } else {
            return state_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.StateNode state = 10;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder> 
            getStateFieldBuilder() {
          if (stateBuilder_ == null) {
            stateBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.StateNodeOrBuilder>(
                    getState(),
                    getParentForChildren(),
                    isClean());
            state_ = null;
          }
          return stateBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode composite_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder> compositeBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public boolean hasComposite() {
          return ((bitField0_ & 0x00000400) == 0x00000400);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode getComposite() {
          if (compositeBuilder_ == null) {
            return composite_;
          } else {
            return compositeBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public Builder setComposite(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode value) {
          if (compositeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            composite_ = value;
            onChanged();
          } else {
            compositeBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000400;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public Builder setComposite(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder builderForValue) {
          if (compositeBuilder_ == null) {
            composite_ = builderForValue.build();
            onChanged();
          } else {
            compositeBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000400;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public Builder mergeComposite(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode value) {
          if (compositeBuilder_ == null) {
            if (((bitField0_ & 0x00000400) == 0x00000400) &&
                composite_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance()) {
              composite_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.newBuilder(composite_).mergeFrom(value).buildPartial();
            } else {
              composite_ = value;
            }
            onChanged();
          } else {
            compositeBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000400;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public Builder clearComposite() {
          if (compositeBuilder_ == null) {
            composite_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.getDefaultInstance();
            onChanged();
          } else {
            compositeBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000400);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder getCompositeBuilder() {
          bitField0_ |= 0x00000400;
          onChanged();
          return getCompositeFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder getCompositeOrBuilder() {
          if (compositeBuilder_ != null) {
            return compositeBuilder_.getMessageOrBuilder();
          } else {
            return composite_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.CompositeContextNode composite = 11;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder> 
            getCompositeFieldBuilder() {
          if (compositeBuilder_ == null) {
            compositeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.CompositeContextNodeOrBuilder>(
                    getComposite(),
                    getParentForChildren(),
                    isClean());
            composite_ = null;
          }
          return compositeBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode forEach_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder> forEachBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public boolean hasForEach() {
          return ((bitField0_ & 0x00000800) == 0x00000800);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode getForEach() {
          if (forEachBuilder_ == null) {
            return forEach_;
          } else {
            return forEachBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public Builder setForEach(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode value) {
          if (forEachBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            forEach_ = value;
            onChanged();
          } else {
            forEachBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000800;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public Builder setForEach(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder builderForValue) {
          if (forEachBuilder_ == null) {
            forEach_ = builderForValue.build();
            onChanged();
          } else {
            forEachBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000800;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public Builder mergeForEach(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode value) {
          if (forEachBuilder_ == null) {
            if (((bitField0_ & 0x00000800) == 0x00000800) &&
                forEach_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance()) {
              forEach_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.newBuilder(forEach_).mergeFrom(value).buildPartial();
            } else {
              forEach_ = value;
            }
            onChanged();
          } else {
            forEachBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00000800;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public Builder clearForEach() {
          if (forEachBuilder_ == null) {
            forEach_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.getDefaultInstance();
            onChanged();
          } else {
            forEachBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000800);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder getForEachBuilder() {
          bitField0_ |= 0x00000800;
          onChanged();
          return getForEachFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder getForEachOrBuilder() {
          if (forEachBuilder_ != null) {
            return forEachBuilder_.getMessageOrBuilder();
          } else {
            return forEach_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.ForEachNode for_each = 12;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder> 
            getForEachFieldBuilder() {
          if (forEachBuilder_ == null) {
            forEachBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.ForEachNodeOrBuilder>(
                    getForEach(),
                    getParentForChildren(),
                    isClean());
            forEach_ = null;
          }
          return forEachBuilder_;
        }

        private org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode asyncEvent_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance();
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder> asyncEventBuilder_;
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public boolean hasAsyncEvent() {
          return ((bitField0_ & 0x00001000) == 0x00001000);
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode getAsyncEvent() {
          if (asyncEventBuilder_ == null) {
            return asyncEvent_;
          } else {
            return asyncEventBuilder_.getMessage();
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public Builder setAsyncEvent(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode value) {
          if (asyncEventBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            asyncEvent_ = value;
            onChanged();
          } else {
            asyncEventBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00001000;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public Builder setAsyncEvent(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder builderForValue) {
          if (asyncEventBuilder_ == null) {
            asyncEvent_ = builderForValue.build();
            onChanged();
          } else {
            asyncEventBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00001000;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public Builder mergeAsyncEvent(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode value) {
          if (asyncEventBuilder_ == null) {
            if (((bitField0_ & 0x00001000) == 0x00001000) &&
                asyncEvent_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance()) {
              asyncEvent_ =
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.newBuilder(asyncEvent_).mergeFrom(value).buildPartial();
            } else {
              asyncEvent_ = value;
            }
            onChanged();
          } else {
            asyncEventBuilder_.mergeFrom(value);
          }
          bitField0_ |= 0x00001000;
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public Builder clearAsyncEvent() {
          if (asyncEventBuilder_ == null) {
            asyncEvent_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.getDefaultInstance();
            onChanged();
          } else {
            asyncEventBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00001000);
          return this;
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder getAsyncEventBuilder() {
          bitField0_ |= 0x00001000;
          onChanged();
          return getAsyncEventFieldBuilder().getBuilder();
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder getAsyncEventOrBuilder() {
          if (asyncEventBuilder_ != null) {
            return asyncEventBuilder_.getMessageOrBuilder();
          } else {
            return asyncEvent_;
          }
        }
        /**
         * optional .org.jbpm.marshalling.ProcessInstance.NodeInstanceContent.AsyncEventNode async_event = 13;
         */
        private com.google.protobuf.SingleFieldBuilder<
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder> 
            getAsyncEventFieldBuilder() {
          if (asyncEventBuilder_ == null) {
            asyncEventBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNode.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceContent.AsyncEventNodeOrBuilder>(
                    getAsyncEvent(),
                    getParentForChildren(),
                    isClean());
            asyncEvent_ = null;
          }
          return asyncEventBuilder_;
        }

        // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent)
      }

      static {
        defaultInstance = new NodeInstanceContent(true);
        defaultInstance.initFields();
      }

      // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance.NodeInstanceContent)
    }

    private int bitField0_;
    public static final int PROCESS_TYPE_FIELD_NUMBER = 1;
    private java.lang.Object processType_;
    /**
     * optional string process_type = 1;
     */
    public boolean hasProcessType() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * optional string process_type = 1;
     */
    public java.lang.String getProcessType() {
      java.lang.Object ref = processType_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          processType_ = s;
        }
        return s;
      }
    }
    /**
     * optional string process_type = 1;
     */
    public com.google.protobuf.ByteString
        getProcessTypeBytes() {
      java.lang.Object ref = processType_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        processType_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ID_FIELD_NUMBER = 2;
    private long id_;
    /**
     * optional int64 id = 2;
     */
    public boolean hasId() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * optional int64 id = 2;
     */
    public long getId() {
      return id_;
    }

    public static final int PROCESS_ID_FIELD_NUMBER = 3;
    private java.lang.Object processId_;
    /**
     * optional string process_id = 3;
     */
    public boolean hasProcessId() {
      return ((bitField0_ & 0x00000004) == 0x00000004);
    }
    /**
     * optional string process_id = 3;
     */
    public java.lang.String getProcessId() {
      java.lang.Object ref = processId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          processId_ = s;
        }
        return s;
      }
    }
    /**
     * optional string process_id = 3;
     */
    public com.google.protobuf.ByteString
        getProcessIdBytes() {
      java.lang.Object ref = processId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        processId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int STATE_FIELD_NUMBER = 4;
    private int state_;
    /**
     * optional int32 state = 4;
     */
    public boolean hasState() {
      return ((bitField0_ & 0x00000008) == 0x00000008);
    }
    /**
     * optional int32 state = 4;
     */
    public int getState() {
      return state_;
    }

    public static final int NODE_INSTANCE_COUNTER_FIELD_NUMBER = 5;
    private long nodeInstanceCounter_;
    /**
     * optional int64 node_instance_counter = 5;
     */
    public boolean hasNodeInstanceCounter() {
      return ((bitField0_ & 0x00000010) == 0x00000010);
    }
    /**
     * optional int64 node_instance_counter = 5;
     */
    public long getNodeInstanceCounter() {
      return nodeInstanceCounter_;
    }

    public static final int PROCESS_XML_FIELD_NUMBER = 11;
    private java.lang.Object processXml_;
    /**
     * optional string process_xml = 11;
     */
    public boolean hasProcessXml() {
      return ((bitField0_ & 0x00000020) == 0x00000020);
    }
    /**
     * optional string process_xml = 11;
     */
    public java.lang.String getProcessXml() {
      java.lang.Object ref = processXml_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          processXml_ = s;
        }
        return s;
      }
    }
    /**
     * optional string process_xml = 11;
     */
    public com.google.protobuf.ByteString
        getProcessXmlBytes() {
      java.lang.Object ref = processXml_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        processXml_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int PARENT_PROCESS_INSTANCE_ID_FIELD_NUMBER = 12;
    private long parentProcessInstanceId_;
    /**
     * optional int64 parent_process_instance_id = 12;
     */
    public boolean hasParentProcessInstanceId() {
      return ((bitField0_ & 0x00000040) == 0x00000040);
    }
    /**
     * optional int64 parent_process_instance_id = 12;
     */
    public long getParentProcessInstanceId() {
      return parentProcessInstanceId_;
    }

    public static final int DESCRIPTION_FIELD_NUMBER = 15;
    private java.lang.Object description_;
    /**
     * optional string description = 15;
     */
    public boolean hasDescription() {
      return ((bitField0_ & 0x00000080) == 0x00000080);
    }
    /**
     * optional string description = 15;
     */
    public java.lang.String getDescription() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          description_ = s;
        }
        return s;
      }
    }
    /**
     * optional string description = 15;
     */
    public com.google.protobuf.ByteString
        getDescriptionBytes() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        description_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SIGNAL_COMPLETION_FIELD_NUMBER = 16;
    private boolean signalCompletion_;
    /**
     * optional bool signal_completion = 16 [default = true];
     */
    public boolean hasSignalCompletion() {
      return ((bitField0_ & 0x00000100) == 0x00000100);
    }
    /**
     * optional bool signal_completion = 16 [default = true];
     */
    public boolean getSignalCompletion() {
      return signalCompletion_;
    }

    public static final int DEPLOYMENTID_FIELD_NUMBER = 17;
    private java.lang.Object deploymentId_;
    /**
     * optional string deploymentId = 17;
     */
    public boolean hasDeploymentId() {
      return ((bitField0_ & 0x00000200) == 0x00000200);
    }
    /**
     * optional string deploymentId = 17;
     */
    public java.lang.String getDeploymentId() {
      java.lang.Object ref = deploymentId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          deploymentId_ = s;
        }
        return s;
      }
    }
    /**
     * optional string deploymentId = 17;
     */
    public com.google.protobuf.ByteString
        getDeploymentIdBytes() {
      java.lang.Object ref = deploymentId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deploymentId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CORRELATION_KEY_FIELD_NUMBER = 18;
    private java.lang.Object correlationKey_;
    /**
     * optional string correlation_key = 18;
     */
    public boolean hasCorrelationKey() {
      return ((bitField0_ & 0x00000400) == 0x00000400);
    }
    /**
     * optional string correlation_key = 18;
     */
    public java.lang.String getCorrelationKey() {
      java.lang.Object ref = correlationKey_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          correlationKey_ = s;
        }
        return s;
      }
    }
    /**
     * optional string correlation_key = 18;
     */
    public com.google.protobuf.ByteString
        getCorrelationKeyBytes() {
      java.lang.Object ref = correlationKey_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        correlationKey_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SLA_TIMER_ID_FIELD_NUMBER = 19;
    private long slaTimerId_;
    /**
     * optional int64 sla_timer_id = 19;
     */
    public boolean hasSlaTimerId() {
      return ((bitField0_ & 0x00000800) == 0x00000800);
    }
    /**
     * optional int64 sla_timer_id = 19;
     */
    public long getSlaTimerId() {
      return slaTimerId_;
    }

    public static final int SLA_DUE_DATE_FIELD_NUMBER = 20;
    private long slaDueDate_;
    /**
     * optional int64 sla_due_date = 20;
     */
    public boolean hasSlaDueDate() {
      return ((bitField0_ & 0x00001000) == 0x00001000);
    }
    /**
     * optional int64 sla_due_date = 20;
     */
    public long getSlaDueDate() {
      return slaDueDate_;
    }

    public static final int SLA_COMPLIANCE_FIELD_NUMBER = 21;
    private int slaCompliance_;
    /**
     * optional int32 sla_compliance = 21;
     */
    public boolean hasSlaCompliance() {
      return ((bitField0_ & 0x00002000) == 0x00002000);
    }
    /**
     * optional int32 sla_compliance = 21;
     */
    public int getSlaCompliance() {
      return slaCompliance_;
    }

    public static final int SWIMLANE_CONTEXT_FIELD_NUMBER = 6;
    private java.util.List swimlaneContext_;
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    public java.util.List getSwimlaneContextList() {
      return swimlaneContext_;
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    public java.util.List 
        getSwimlaneContextOrBuilderList() {
      return swimlaneContext_;
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    public int getSwimlaneContextCount() {
      return swimlaneContext_.size();
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance getSwimlaneContext(int index) {
      return swimlaneContext_.get(index);
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder getSwimlaneContextOrBuilder(
        int index) {
      return swimlaneContext_.get(index);
    }

    public static final int NODE_INSTANCE_FIELD_NUMBER = 7;
    private java.util.List nodeInstance_;
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    public java.util.List getNodeInstanceList() {
      return nodeInstance_;
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    public java.util.List 
        getNodeInstanceOrBuilderList() {
      return nodeInstance_;
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    public int getNodeInstanceCount() {
      return nodeInstance_.size();
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index) {
      return nodeInstance_.get(index);
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
        int index) {
      return nodeInstance_.get(index);
    }

    public static final int VARIABLE_FIELD_NUMBER = 8;
    private java.util.List variable_;
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    public java.util.List getVariableList() {
      return variable_;
    }
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    public java.util.List 
        getVariableOrBuilderList() {
      return variable_;
    }
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    public int getVariableCount() {
      return variable_.size();
    }
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) {
      return variable_.get(index);
    }
    /**
     * repeated .org.jbpm.marshalling.Variable variable = 8;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
        int index) {
      return variable_.get(index);
    }

    public static final int EXCLUSIVE_GROUP_FIELD_NUMBER = 10;
    private java.util.List exclusiveGroup_;
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    public java.util.List getExclusiveGroupList() {
      return exclusiveGroup_;
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    public java.util.List 
        getExclusiveGroupOrBuilderList() {
      return exclusiveGroup_;
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    public int getExclusiveGroupCount() {
      return exclusiveGroup_.size();
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getExclusiveGroup(int index) {
      return exclusiveGroup_.get(index);
    }
    /**
     * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder getExclusiveGroupOrBuilder(
        int index) {
      return exclusiveGroup_.get(index);
    }

    public static final int COMPLETEDNODEIDS_FIELD_NUMBER = 13;
    private com.google.protobuf.LazyStringList completedNodeIds_;
    /**
     * repeated string completedNodeIds = 13;
     */
    public com.google.protobuf.ProtocolStringList
        getCompletedNodeIdsList() {
      return completedNodeIds_;
    }
    /**
     * repeated string completedNodeIds = 13;
     */
    public int getCompletedNodeIdsCount() {
      return completedNodeIds_.size();
    }
    /**
     * repeated string completedNodeIds = 13;
     */
    public java.lang.String getCompletedNodeIds(int index) {
      return completedNodeIds_.get(index);
    }
    /**
     * repeated string completedNodeIds = 13;
     */
    public com.google.protobuf.ByteString
        getCompletedNodeIdsBytes(int index) {
      return completedNodeIds_.getByteString(index);
    }

    public static final int ITERATIONLEVELS_FIELD_NUMBER = 14;
    private java.util.List iterationLevels_;
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    public java.util.List getIterationLevelsList() {
      return iterationLevels_;
    }
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    public java.util.List 
        getIterationLevelsOrBuilderList() {
      return iterationLevels_;
    }
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    public int getIterationLevelsCount() {
      return iterationLevels_.size();
    }
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index) {
      return iterationLevels_.get(index);
    }
    /**
     * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
     */
    public org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
        int index) {
      return iterationLevels_.get(index);
    }

    private void initFields() {
      processType_ = "";
      id_ = 0L;
      processId_ = "";
      state_ = 0;
      nodeInstanceCounter_ = 0L;
      processXml_ = "";
      parentProcessInstanceId_ = 0L;
      description_ = "";
      signalCompletion_ = true;
      deploymentId_ = "";
      correlationKey_ = "";
      slaTimerId_ = 0L;
      slaDueDate_ = 0L;
      slaCompliance_ = 0;
      swimlaneContext_ = java.util.Collections.emptyList();
      nodeInstance_ = java.util.Collections.emptyList();
      variable_ = java.util.Collections.emptyList();
      exclusiveGroup_ = java.util.Collections.emptyList();
      completedNodeIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      iterationLevels_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeBytes(1, getProcessTypeBytes());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeInt64(2, id_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeBytes(3, getProcessIdBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        output.writeInt32(4, state_);
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        output.writeInt64(5, nodeInstanceCounter_);
      }
      for (int i = 0; i < swimlaneContext_.size(); i++) {
        output.writeMessage(6, swimlaneContext_.get(i));
      }
      for (int i = 0; i < nodeInstance_.size(); i++) {
        output.writeMessage(7, nodeInstance_.get(i));
      }
      for (int i = 0; i < variable_.size(); i++) {
        output.writeMessage(8, variable_.get(i));
      }
      for (int i = 0; i < exclusiveGroup_.size(); i++) {
        output.writeMessage(10, exclusiveGroup_.get(i));
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        output.writeBytes(11, getProcessXmlBytes());
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        output.writeInt64(12, parentProcessInstanceId_);
      }
      for (int i = 0; i < completedNodeIds_.size(); i++) {
        output.writeBytes(13, completedNodeIds_.getByteString(i));
      }
      for (int i = 0; i < iterationLevels_.size(); i++) {
        output.writeMessage(14, iterationLevels_.get(i));
      }
      if (((bitField0_ & 0x00000080) == 0x00000080)) {
        output.writeBytes(15, getDescriptionBytes());
      }
      if (((bitField0_ & 0x00000100) == 0x00000100)) {
        output.writeBool(16, signalCompletion_);
      }
      if (((bitField0_ & 0x00000200) == 0x00000200)) {
        output.writeBytes(17, getDeploymentIdBytes());
      }
      if (((bitField0_ & 0x00000400) == 0x00000400)) {
        output.writeBytes(18, getCorrelationKeyBytes());
      }
      if (((bitField0_ & 0x00000800) == 0x00000800)) {
        output.writeInt64(19, slaTimerId_);
      }
      if (((bitField0_ & 0x00001000) == 0x00001000)) {
        output.writeInt64(20, slaDueDate_);
      }
      if (((bitField0_ & 0x00002000) == 0x00002000)) {
        output.writeInt32(21, slaCompliance_);
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(1, getProcessTypeBytes());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, id_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(3, getProcessIdBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, state_);
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(5, nodeInstanceCounter_);
      }
      for (int i = 0; i < swimlaneContext_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, swimlaneContext_.get(i));
      }
      for (int i = 0; i < nodeInstance_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, nodeInstance_.get(i));
      }
      for (int i = 0; i < variable_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(8, variable_.get(i));
      }
      for (int i = 0; i < exclusiveGroup_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(10, exclusiveGroup_.get(i));
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(11, getProcessXmlBytes());
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(12, parentProcessInstanceId_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < completedNodeIds_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeBytesSizeNoTag(completedNodeIds_.getByteString(i));
        }
        size += dataSize;
        size += 1 * getCompletedNodeIdsList().size();
      }
      for (int i = 0; i < iterationLevels_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(14, iterationLevels_.get(i));
      }
      if (((bitField0_ & 0x00000080) == 0x00000080)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(15, getDescriptionBytes());
      }
      if (((bitField0_ & 0x00000100) == 0x00000100)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(16, signalCompletion_);
      }
      if (((bitField0_ & 0x00000200) == 0x00000200)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(17, getDeploymentIdBytes());
      }
      if (((bitField0_ & 0x00000400) == 0x00000400)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(18, getCorrelationKeyBytes());
      }
      if (((bitField0_ & 0x00000800) == 0x00000800)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(19, slaTimerId_);
      }
      if (((bitField0_ & 0x00001000) == 0x00001000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(20, slaDueDate_);
      }
      if (((bitField0_ & 0x00002000) == 0x00002000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(21, slaCompliance_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code org.jbpm.marshalling.ProcessInstance}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder implements
        // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessInstance)
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstanceOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.Builder.class);
      }

      // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getSwimlaneContextFieldBuilder();
          getNodeInstanceFieldBuilder();
          getVariableFieldBuilder();
          getExclusiveGroupFieldBuilder();
          getIterationLevelsFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        processType_ = "";
        bitField0_ = (bitField0_ & ~0x00000001);
        id_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000002);
        processId_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        state_ = 0;
        bitField0_ = (bitField0_ & ~0x00000008);
        nodeInstanceCounter_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000010);
        processXml_ = "";
        bitField0_ = (bitField0_ & ~0x00000020);
        parentProcessInstanceId_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000040);
        description_ = "";
        bitField0_ = (bitField0_ & ~0x00000080);
        signalCompletion_ = true;
        bitField0_ = (bitField0_ & ~0x00000100);
        deploymentId_ = "";
        bitField0_ = (bitField0_ & ~0x00000200);
        correlationKey_ = "";
        bitField0_ = (bitField0_ & ~0x00000400);
        slaTimerId_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000800);
        slaDueDate_ = 0L;
        bitField0_ = (bitField0_ & ~0x00001000);
        slaCompliance_ = 0;
        bitField0_ = (bitField0_ & ~0x00002000);
        if (swimlaneContextBuilder_ == null) {
          swimlaneContext_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00004000);
        } else {
          swimlaneContextBuilder_.clear();
        }
        if (nodeInstanceBuilder_ == null) {
          nodeInstance_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00008000);
        } else {
          nodeInstanceBuilder_.clear();
        }
        if (variableBuilder_ == null) {
          variable_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00010000);
        } else {
          variableBuilder_.clear();
        }
        if (exclusiveGroupBuilder_ == null) {
          exclusiveGroup_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00020000);
        } else {
          exclusiveGroupBuilder_.clear();
        }
        completedNodeIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00040000);
        if (iterationLevelsBuilder_ == null) {
          iterationLevels_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00080000);
        } else {
          iterationLevelsBuilder_.clear();
        }
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessInstance_descriptor;
      }

      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance getDefaultInstanceForType() {
        return org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.getDefaultInstance();
      }

      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance build() {
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance buildPartial() {
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
          to_bitField0_ |= 0x00000001;
        }
        result.processType_ = processType_;
        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
          to_bitField0_ |= 0x00000002;
        }
        result.id_ = id_;
        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
          to_bitField0_ |= 0x00000004;
        }
        result.processId_ = processId_;
        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
          to_bitField0_ |= 0x00000008;
        }
        result.state_ = state_;
        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
          to_bitField0_ |= 0x00000010;
        }
        result.nodeInstanceCounter_ = nodeInstanceCounter_;
        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
          to_bitField0_ |= 0x00000020;
        }
        result.processXml_ = processXml_;
        if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
          to_bitField0_ |= 0x00000040;
        }
        result.parentProcessInstanceId_ = parentProcessInstanceId_;
        if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
          to_bitField0_ |= 0x00000080;
        }
        result.description_ = description_;
        if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
          to_bitField0_ |= 0x00000100;
        }
        result.signalCompletion_ = signalCompletion_;
        if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
          to_bitField0_ |= 0x00000200;
        }
        result.deploymentId_ = deploymentId_;
        if (((from_bitField0_ & 0x00000400) == 0x00000400)) {
          to_bitField0_ |= 0x00000400;
        }
        result.correlationKey_ = correlationKey_;
        if (((from_bitField0_ & 0x00000800) == 0x00000800)) {
          to_bitField0_ |= 0x00000800;
        }
        result.slaTimerId_ = slaTimerId_;
        if (((from_bitField0_ & 0x00001000) == 0x00001000)) {
          to_bitField0_ |= 0x00001000;
        }
        result.slaDueDate_ = slaDueDate_;
        if (((from_bitField0_ & 0x00002000) == 0x00002000)) {
          to_bitField0_ |= 0x00002000;
        }
        result.slaCompliance_ = slaCompliance_;
        if (swimlaneContextBuilder_ == null) {
          if (((bitField0_ & 0x00004000) == 0x00004000)) {
            swimlaneContext_ = java.util.Collections.unmodifiableList(swimlaneContext_);
            bitField0_ = (bitField0_ & ~0x00004000);
          }
          result.swimlaneContext_ = swimlaneContext_;
        } else {
          result.swimlaneContext_ = swimlaneContextBuilder_.build();
        }
        if (nodeInstanceBuilder_ == null) {
          if (((bitField0_ & 0x00008000) == 0x00008000)) {
            nodeInstance_ = java.util.Collections.unmodifiableList(nodeInstance_);
            bitField0_ = (bitField0_ & ~0x00008000);
          }
          result.nodeInstance_ = nodeInstance_;
        } else {
          result.nodeInstance_ = nodeInstanceBuilder_.build();
        }
        if (variableBuilder_ == null) {
          if (((bitField0_ & 0x00010000) == 0x00010000)) {
            variable_ = java.util.Collections.unmodifiableList(variable_);
            bitField0_ = (bitField0_ & ~0x00010000);
          }
          result.variable_ = variable_;
        } else {
          result.variable_ = variableBuilder_.build();
        }
        if (exclusiveGroupBuilder_ == null) {
          if (((bitField0_ & 0x00020000) == 0x00020000)) {
            exclusiveGroup_ = java.util.Collections.unmodifiableList(exclusiveGroup_);
            bitField0_ = (bitField0_ & ~0x00020000);
          }
          result.exclusiveGroup_ = exclusiveGroup_;
        } else {
          result.exclusiveGroup_ = exclusiveGroupBuilder_.build();
        }
        if (((bitField0_ & 0x00040000) == 0x00040000)) {
          completedNodeIds_ = completedNodeIds_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00040000);
        }
        result.completedNodeIds_ = completedNodeIds_;
        if (iterationLevelsBuilder_ == null) {
          if (((bitField0_ & 0x00080000) == 0x00080000)) {
            iterationLevels_ = java.util.Collections.unmodifiableList(iterationLevels_);
            bitField0_ = (bitField0_ & ~0x00080000);
          }
          result.iterationLevels_ = iterationLevels_;
        } else {
          result.iterationLevels_ = iterationLevelsBuilder_.build();
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance) {
          return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance other) {
        if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.getDefaultInstance()) return this;
        if (other.hasProcessType()) {
          bitField0_ |= 0x00000001;
          processType_ = other.processType_;
          onChanged();
        }
        if (other.hasId()) {
          setId(other.getId());
        }
        if (other.hasProcessId()) {
          bitField0_ |= 0x00000004;
          processId_ = other.processId_;
          onChanged();
        }
        if (other.hasState()) {
          setState(other.getState());
        }
        if (other.hasNodeInstanceCounter()) {
          setNodeInstanceCounter(other.getNodeInstanceCounter());
        }
        if (other.hasProcessXml()) {
          bitField0_ |= 0x00000020;
          processXml_ = other.processXml_;
          onChanged();
        }
        if (other.hasParentProcessInstanceId()) {
          setParentProcessInstanceId(other.getParentProcessInstanceId());
        }
        if (other.hasDescription()) {
          bitField0_ |= 0x00000080;
          description_ = other.description_;
          onChanged();
        }
        if (other.hasSignalCompletion()) {
          setSignalCompletion(other.getSignalCompletion());
        }
        if (other.hasDeploymentId()) {
          bitField0_ |= 0x00000200;
          deploymentId_ = other.deploymentId_;
          onChanged();
        }
        if (other.hasCorrelationKey()) {
          bitField0_ |= 0x00000400;
          correlationKey_ = other.correlationKey_;
          onChanged();
        }
        if (other.hasSlaTimerId()) {
          setSlaTimerId(other.getSlaTimerId());
        }
        if (other.hasSlaDueDate()) {
          setSlaDueDate(other.getSlaDueDate());
        }
        if (other.hasSlaCompliance()) {
          setSlaCompliance(other.getSlaCompliance());
        }
        if (swimlaneContextBuilder_ == null) {
          if (!other.swimlaneContext_.isEmpty()) {
            if (swimlaneContext_.isEmpty()) {
              swimlaneContext_ = other.swimlaneContext_;
              bitField0_ = (bitField0_ & ~0x00004000);
            } else {
              ensureSwimlaneContextIsMutable();
              swimlaneContext_.addAll(other.swimlaneContext_);
            }
            onChanged();
          }
        } else {
          if (!other.swimlaneContext_.isEmpty()) {
            if (swimlaneContextBuilder_.isEmpty()) {
              swimlaneContextBuilder_.dispose();
              swimlaneContextBuilder_ = null;
              swimlaneContext_ = other.swimlaneContext_;
              bitField0_ = (bitField0_ & ~0x00004000);
              swimlaneContextBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getSwimlaneContextFieldBuilder() : null;
            } else {
              swimlaneContextBuilder_.addAllMessages(other.swimlaneContext_);
            }
          }
        }
        if (nodeInstanceBuilder_ == null) {
          if (!other.nodeInstance_.isEmpty()) {
            if (nodeInstance_.isEmpty()) {
              nodeInstance_ = other.nodeInstance_;
              bitField0_ = (bitField0_ & ~0x00008000);
            } else {
              ensureNodeInstanceIsMutable();
              nodeInstance_.addAll(other.nodeInstance_);
            }
            onChanged();
          }
        } else {
          if (!other.nodeInstance_.isEmpty()) {
            if (nodeInstanceBuilder_.isEmpty()) {
              nodeInstanceBuilder_.dispose();
              nodeInstanceBuilder_ = null;
              nodeInstance_ = other.nodeInstance_;
              bitField0_ = (bitField0_ & ~0x00008000);
              nodeInstanceBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getNodeInstanceFieldBuilder() : null;
            } else {
              nodeInstanceBuilder_.addAllMessages(other.nodeInstance_);
            }
          }
        }
        if (variableBuilder_ == null) {
          if (!other.variable_.isEmpty()) {
            if (variable_.isEmpty()) {
              variable_ = other.variable_;
              bitField0_ = (bitField0_ & ~0x00010000);
            } else {
              ensureVariableIsMutable();
              variable_.addAll(other.variable_);
            }
            onChanged();
          }
        } else {
          if (!other.variable_.isEmpty()) {
            if (variableBuilder_.isEmpty()) {
              variableBuilder_.dispose();
              variableBuilder_ = null;
              variable_ = other.variable_;
              bitField0_ = (bitField0_ & ~0x00010000);
              variableBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getVariableFieldBuilder() : null;
            } else {
              variableBuilder_.addAllMessages(other.variable_);
            }
          }
        }
        if (exclusiveGroupBuilder_ == null) {
          if (!other.exclusiveGroup_.isEmpty()) {
            if (exclusiveGroup_.isEmpty()) {
              exclusiveGroup_ = other.exclusiveGroup_;
              bitField0_ = (bitField0_ & ~0x00020000);
            } else {
              ensureExclusiveGroupIsMutable();
              exclusiveGroup_.addAll(other.exclusiveGroup_);
            }
            onChanged();
          }
        } else {
          if (!other.exclusiveGroup_.isEmpty()) {
            if (exclusiveGroupBuilder_.isEmpty()) {
              exclusiveGroupBuilder_.dispose();
              exclusiveGroupBuilder_ = null;
              exclusiveGroup_ = other.exclusiveGroup_;
              bitField0_ = (bitField0_ & ~0x00020000);
              exclusiveGroupBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getExclusiveGroupFieldBuilder() : null;
            } else {
              exclusiveGroupBuilder_.addAllMessages(other.exclusiveGroup_);
            }
          }
        }
        if (!other.completedNodeIds_.isEmpty()) {
          if (completedNodeIds_.isEmpty()) {
            completedNodeIds_ = other.completedNodeIds_;
            bitField0_ = (bitField0_ & ~0x00040000);
          } else {
            ensureCompletedNodeIdsIsMutable();
            completedNodeIds_.addAll(other.completedNodeIds_);
          }
          onChanged();
        }
        if (iterationLevelsBuilder_ == null) {
          if (!other.iterationLevels_.isEmpty()) {
            if (iterationLevels_.isEmpty()) {
              iterationLevels_ = other.iterationLevels_;
              bitField0_ = (bitField0_ & ~0x00080000);
            } else {
              ensureIterationLevelsIsMutable();
              iterationLevels_.addAll(other.iterationLevels_);
            }
            onChanged();
          }
        } else {
          if (!other.iterationLevels_.isEmpty()) {
            if (iterationLevelsBuilder_.isEmpty()) {
              iterationLevelsBuilder_.dispose();
              iterationLevelsBuilder_ = null;
              iterationLevels_ = other.iterationLevels_;
              bitField0_ = (bitField0_ & ~0x00080000);
              iterationLevelsBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getIterationLevelsFieldBuilder() : null;
            } else {
              iterationLevelsBuilder_.addAllMessages(other.iterationLevels_);
            }
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.lang.Object processType_ = "";
      /**
       * optional string process_type = 1;
       */
      public boolean hasProcessType() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * optional string process_type = 1;
       */
      public java.lang.String getProcessType() {
        java.lang.Object ref = processType_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            processType_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string process_type = 1;
       */
      public com.google.protobuf.ByteString
          getProcessTypeBytes() {
        java.lang.Object ref = processType_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          processType_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string process_type = 1;
       */
      public Builder setProcessType(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        processType_ = value;
        onChanged();
        return this;
      }
      /**
       * optional string process_type = 1;
       */
      public Builder clearProcessType() {
        bitField0_ = (bitField0_ & ~0x00000001);
        processType_ = getDefaultInstance().getProcessType();
        onChanged();
        return this;
      }
      /**
       * optional string process_type = 1;
       */
      public Builder setProcessTypeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        processType_ = value;
        onChanged();
        return this;
      }

      private long id_ ;
      /**
       * optional int64 id = 2;
       */
      public boolean hasId() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * optional int64 id = 2;
       */
      public long getId() {
        return id_;
      }
      /**
       * optional int64 id = 2;
       */
      public Builder setId(long value) {
        bitField0_ |= 0x00000002;
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int64 id = 2;
       */
      public Builder clearId() {
        bitField0_ = (bitField0_ & ~0x00000002);
        id_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object processId_ = "";
      /**
       * optional string process_id = 3;
       */
      public boolean hasProcessId() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * optional string process_id = 3;
       */
      public java.lang.String getProcessId() {
        java.lang.Object ref = processId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            processId_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string process_id = 3;
       */
      public com.google.protobuf.ByteString
          getProcessIdBytes() {
        java.lang.Object ref = processId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          processId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string process_id = 3;
       */
      public Builder setProcessId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        processId_ = value;
        onChanged();
        return this;
      }
      /**
       * optional string process_id = 3;
       */
      public Builder clearProcessId() {
        bitField0_ = (bitField0_ & ~0x00000004);
        processId_ = getDefaultInstance().getProcessId();
        onChanged();
        return this;
      }
      /**
       * optional string process_id = 3;
       */
      public Builder setProcessIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        processId_ = value;
        onChanged();
        return this;
      }

      private int state_ ;
      /**
       * optional int32 state = 4;
       */
      public boolean hasState() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * optional int32 state = 4;
       */
      public int getState() {
        return state_;
      }
      /**
       * optional int32 state = 4;
       */
      public Builder setState(int value) {
        bitField0_ |= 0x00000008;
        state_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int32 state = 4;
       */
      public Builder clearState() {
        bitField0_ = (bitField0_ & ~0x00000008);
        state_ = 0;
        onChanged();
        return this;
      }

      private long nodeInstanceCounter_ ;
      /**
       * optional int64 node_instance_counter = 5;
       */
      public boolean hasNodeInstanceCounter() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * optional int64 node_instance_counter = 5;
       */
      public long getNodeInstanceCounter() {
        return nodeInstanceCounter_;
      }
      /**
       * optional int64 node_instance_counter = 5;
       */
      public Builder setNodeInstanceCounter(long value) {
        bitField0_ |= 0x00000010;
        nodeInstanceCounter_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int64 node_instance_counter = 5;
       */
      public Builder clearNodeInstanceCounter() {
        bitField0_ = (bitField0_ & ~0x00000010);
        nodeInstanceCounter_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object processXml_ = "";
      /**
       * optional string process_xml = 11;
       */
      public boolean hasProcessXml() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * optional string process_xml = 11;
       */
      public java.lang.String getProcessXml() {
        java.lang.Object ref = processXml_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            processXml_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string process_xml = 11;
       */
      public com.google.protobuf.ByteString
          getProcessXmlBytes() {
        java.lang.Object ref = processXml_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          processXml_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string process_xml = 11;
       */
      public Builder setProcessXml(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000020;
        processXml_ = value;
        onChanged();
        return this;
      }
      /**
       * optional string process_xml = 11;
       */
      public Builder clearProcessXml() {
        bitField0_ = (bitField0_ & ~0x00000020);
        processXml_ = getDefaultInstance().getProcessXml();
        onChanged();
        return this;
      }
      /**
       * optional string process_xml = 11;
       */
      public Builder setProcessXmlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000020;
        processXml_ = value;
        onChanged();
        return this;
      }

      private long parentProcessInstanceId_ ;
      /**
       * optional int64 parent_process_instance_id = 12;
       */
      public boolean hasParentProcessInstanceId() {
        return ((bitField0_ & 0x00000040) == 0x00000040);
      }
      /**
       * optional int64 parent_process_instance_id = 12;
       */
      public long getParentProcessInstanceId() {
        return parentProcessInstanceId_;
      }
      /**
       * optional int64 parent_process_instance_id = 12;
       */
      public Builder setParentProcessInstanceId(long value) {
        bitField0_ |= 0x00000040;
        parentProcessInstanceId_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int64 parent_process_instance_id = 12;
       */
      public Builder clearParentProcessInstanceId() {
        bitField0_ = (bitField0_ & ~0x00000040);
        parentProcessInstanceId_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object description_ = "";
      /**
       * optional string description = 15;
       */
      public boolean hasDescription() {
        return ((bitField0_ & 0x00000080) == 0x00000080);
      }
      /**
       * optional string description = 15;
       */
      public java.lang.String getDescription() {
        java.lang.Object ref = description_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            description_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string description = 15;
       */
      public com.google.protobuf.ByteString
          getDescriptionBytes() {
        java.lang.Object ref = description_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          description_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string description = 15;
       */
      public Builder setDescription(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        description_ = value;
        onChanged();
        return this;
      }
      /**
       * optional string description = 15;
       */
      public Builder clearDescription() {
        bitField0_ = (bitField0_ & ~0x00000080);
        description_ = getDefaultInstance().getDescription();
        onChanged();
        return this;
      }
      /**
       * optional string description = 15;
       */
      public Builder setDescriptionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        description_ = value;
        onChanged();
        return this;
      }

      private boolean signalCompletion_ = true;
      /**
       * optional bool signal_completion = 16 [default = true];
       */
      public boolean hasSignalCompletion() {
        return ((bitField0_ & 0x00000100) == 0x00000100);
      }
      /**
       * optional bool signal_completion = 16 [default = true];
       */
      public boolean getSignalCompletion() {
        return signalCompletion_;
      }
      /**
       * optional bool signal_completion = 16 [default = true];
       */
      public Builder setSignalCompletion(boolean value) {
        bitField0_ |= 0x00000100;
        signalCompletion_ = value;
        onChanged();
        return this;
      }
      /**
       * optional bool signal_completion = 16 [default = true];
       */
      public Builder clearSignalCompletion() {
        bitField0_ = (bitField0_ & ~0x00000100);
        signalCompletion_ = true;
        onChanged();
        return this;
      }

      private java.lang.Object deploymentId_ = "";
      /**
       * optional string deploymentId = 17;
       */
      public boolean hasDeploymentId() {
        return ((bitField0_ & 0x00000200) == 0x00000200);
      }
      /**
       * optional string deploymentId = 17;
       */
      public java.lang.String getDeploymentId() {
        java.lang.Object ref = deploymentId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            deploymentId_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string deploymentId = 17;
       */
      public com.google.protobuf.ByteString
          getDeploymentIdBytes() {
        java.lang.Object ref = deploymentId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          deploymentId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string deploymentId = 17;
       */
      public Builder setDeploymentId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        deploymentId_ = value;
        onChanged();
        return this;
      }
      /**
       * optional string deploymentId = 17;
       */
      public Builder clearDeploymentId() {
        bitField0_ = (bitField0_ & ~0x00000200);
        deploymentId_ = getDefaultInstance().getDeploymentId();
        onChanged();
        return this;
      }
      /**
       * optional string deploymentId = 17;
       */
      public Builder setDeploymentIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        deploymentId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object correlationKey_ = "";
      /**
       * optional string correlation_key = 18;
       */
      public boolean hasCorrelationKey() {
        return ((bitField0_ & 0x00000400) == 0x00000400);
      }
      /**
       * optional string correlation_key = 18;
       */
      public java.lang.String getCorrelationKey() {
        java.lang.Object ref = correlationKey_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            correlationKey_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string correlation_key = 18;
       */
      public com.google.protobuf.ByteString
          getCorrelationKeyBytes() {
        java.lang.Object ref = correlationKey_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          correlationKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string correlation_key = 18;
       */
      public Builder setCorrelationKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
        correlationKey_ = value;
        onChanged();
        return this;
      }
      /**
       * optional string correlation_key = 18;
       */
      public Builder clearCorrelationKey() {
        bitField0_ = (bitField0_ & ~0x00000400);
        correlationKey_ = getDefaultInstance().getCorrelationKey();
        onChanged();
        return this;
      }
      /**
       * optional string correlation_key = 18;
       */
      public Builder setCorrelationKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
        correlationKey_ = value;
        onChanged();
        return this;
      }

      private long slaTimerId_ ;
      /**
       * optional int64 sla_timer_id = 19;
       */
      public boolean hasSlaTimerId() {
        return ((bitField0_ & 0x00000800) == 0x00000800);
      }
      /**
       * optional int64 sla_timer_id = 19;
       */
      public long getSlaTimerId() {
        return slaTimerId_;
      }
      /**
       * optional int64 sla_timer_id = 19;
       */
      public Builder setSlaTimerId(long value) {
        bitField0_ |= 0x00000800;
        slaTimerId_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int64 sla_timer_id = 19;
       */
      public Builder clearSlaTimerId() {
        bitField0_ = (bitField0_ & ~0x00000800);
        slaTimerId_ = 0L;
        onChanged();
        return this;
      }

      private long slaDueDate_ ;
      /**
       * optional int64 sla_due_date = 20;
       */
      public boolean hasSlaDueDate() {
        return ((bitField0_ & 0x00001000) == 0x00001000);
      }
      /**
       * optional int64 sla_due_date = 20;
       */
      public long getSlaDueDate() {
        return slaDueDate_;
      }
      /**
       * optional int64 sla_due_date = 20;
       */
      public Builder setSlaDueDate(long value) {
        bitField0_ |= 0x00001000;
        slaDueDate_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int64 sla_due_date = 20;
       */
      public Builder clearSlaDueDate() {
        bitField0_ = (bitField0_ & ~0x00001000);
        slaDueDate_ = 0L;
        onChanged();
        return this;
      }

      private int slaCompliance_ ;
      /**
       * optional int32 sla_compliance = 21;
       */
      public boolean hasSlaCompliance() {
        return ((bitField0_ & 0x00002000) == 0x00002000);
      }
      /**
       * optional int32 sla_compliance = 21;
       */
      public int getSlaCompliance() {
        return slaCompliance_;
      }
      /**
       * optional int32 sla_compliance = 21;
       */
      public Builder setSlaCompliance(int value) {
        bitField0_ |= 0x00002000;
        slaCompliance_ = value;
        onChanged();
        return this;
      }
      /**
       * optional int32 sla_compliance = 21;
       */
      public Builder clearSlaCompliance() {
        bitField0_ = (bitField0_ & ~0x00002000);
        slaCompliance_ = 0;
        onChanged();
        return this;
      }

      private java.util.List swimlaneContext_ =
        java.util.Collections.emptyList();
      private void ensureSwimlaneContextIsMutable() {
        if (!((bitField0_ & 0x00004000) == 0x00004000)) {
          swimlaneContext_ = new java.util.ArrayList(swimlaneContext_);
          bitField0_ |= 0x00004000;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder> swimlaneContextBuilder_;

      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public java.util.List getSwimlaneContextList() {
        if (swimlaneContextBuilder_ == null) {
          return java.util.Collections.unmodifiableList(swimlaneContext_);
        } else {
          return swimlaneContextBuilder_.getMessageList();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public int getSwimlaneContextCount() {
        if (swimlaneContextBuilder_ == null) {
          return swimlaneContext_.size();
        } else {
          return swimlaneContextBuilder_.getCount();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance getSwimlaneContext(int index) {
        if (swimlaneContextBuilder_ == null) {
          return swimlaneContext_.get(index);
        } else {
          return swimlaneContextBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder setSwimlaneContext(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance value) {
        if (swimlaneContextBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.set(index, value);
          onChanged();
        } else {
          swimlaneContextBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder setSwimlaneContext(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder builderForValue) {
        if (swimlaneContextBuilder_ == null) {
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.set(index, builderForValue.build());
          onChanged();
        } else {
          swimlaneContextBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder addSwimlaneContext(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance value) {
        if (swimlaneContextBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.add(value);
          onChanged();
        } else {
          swimlaneContextBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder addSwimlaneContext(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance value) {
        if (swimlaneContextBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.add(index, value);
          onChanged();
        } else {
          swimlaneContextBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder addSwimlaneContext(
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder builderForValue) {
        if (swimlaneContextBuilder_ == null) {
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.add(builderForValue.build());
          onChanged();
        } else {
          swimlaneContextBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder addSwimlaneContext(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder builderForValue) {
        if (swimlaneContextBuilder_ == null) {
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.add(index, builderForValue.build());
          onChanged();
        } else {
          swimlaneContextBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder addAllSwimlaneContext(
          java.lang.Iterable values) {
        if (swimlaneContextBuilder_ == null) {
          ensureSwimlaneContextIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, swimlaneContext_);
          onChanged();
        } else {
          swimlaneContextBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder clearSwimlaneContext() {
        if (swimlaneContextBuilder_ == null) {
          swimlaneContext_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00004000);
          onChanged();
        } else {
          swimlaneContextBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public Builder removeSwimlaneContext(int index) {
        if (swimlaneContextBuilder_ == null) {
          ensureSwimlaneContextIsMutable();
          swimlaneContext_.remove(index);
          onChanged();
        } else {
          swimlaneContextBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder getSwimlaneContextBuilder(
          int index) {
        return getSwimlaneContextFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder getSwimlaneContextOrBuilder(
          int index) {
        if (swimlaneContextBuilder_ == null) {
          return swimlaneContext_.get(index);  } else {
          return swimlaneContextBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public java.util.List 
           getSwimlaneContextOrBuilderList() {
        if (swimlaneContextBuilder_ != null) {
          return swimlaneContextBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(swimlaneContext_);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder addSwimlaneContextBuilder() {
        return getSwimlaneContextFieldBuilder().addBuilder(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder addSwimlaneContextBuilder(
          int index) {
        return getSwimlaneContextFieldBuilder().addBuilder(
            index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.SwimlaneContextInstance swimlane_context = 6;
       */
      public java.util.List 
           getSwimlaneContextBuilderList() {
        return getSwimlaneContextFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder> 
          getSwimlaneContextFieldBuilder() {
        if (swimlaneContextBuilder_ == null) {
          swimlaneContextBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.SwimlaneContextInstanceOrBuilder>(
                  swimlaneContext_,
                  ((bitField0_ & 0x00004000) == 0x00004000),
                  getParentForChildren(),
                  isClean());
          swimlaneContext_ = null;
        }
        return swimlaneContextBuilder_;
      }

      private java.util.List nodeInstance_ =
        java.util.Collections.emptyList();
      private void ensureNodeInstanceIsMutable() {
        if (!((bitField0_ & 0x00008000) == 0x00008000)) {
          nodeInstance_ = new java.util.ArrayList(nodeInstance_);
          bitField0_ |= 0x00008000;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder> nodeInstanceBuilder_;

      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public java.util.List getNodeInstanceList() {
        if (nodeInstanceBuilder_ == null) {
          return java.util.Collections.unmodifiableList(nodeInstance_);
        } else {
          return nodeInstanceBuilder_.getMessageList();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public int getNodeInstanceCount() {
        if (nodeInstanceBuilder_ == null) {
          return nodeInstance_.size();
        } else {
          return nodeInstanceBuilder_.getCount();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance getNodeInstance(int index) {
        if (nodeInstanceBuilder_ == null) {
          return nodeInstance_.get(index);
        } else {
          return nodeInstanceBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder setNodeInstance(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
        if (nodeInstanceBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureNodeInstanceIsMutable();
          nodeInstance_.set(index, value);
          onChanged();
        } else {
          nodeInstanceBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder setNodeInstance(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
        if (nodeInstanceBuilder_ == null) {
          ensureNodeInstanceIsMutable();
          nodeInstance_.set(index, builderForValue.build());
          onChanged();
        } else {
          nodeInstanceBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder addNodeInstance(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
        if (nodeInstanceBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureNodeInstanceIsMutable();
          nodeInstance_.add(value);
          onChanged();
        } else {
          nodeInstanceBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder addNodeInstance(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance value) {
        if (nodeInstanceBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureNodeInstanceIsMutable();
          nodeInstance_.add(index, value);
          onChanged();
        } else {
          nodeInstanceBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder addNodeInstance(
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
        if (nodeInstanceBuilder_ == null) {
          ensureNodeInstanceIsMutable();
          nodeInstance_.add(builderForValue.build());
          onChanged();
        } else {
          nodeInstanceBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder addNodeInstance(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder builderForValue) {
        if (nodeInstanceBuilder_ == null) {
          ensureNodeInstanceIsMutable();
          nodeInstance_.add(index, builderForValue.build());
          onChanged();
        } else {
          nodeInstanceBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder addAllNodeInstance(
          java.lang.Iterable values) {
        if (nodeInstanceBuilder_ == null) {
          ensureNodeInstanceIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, nodeInstance_);
          onChanged();
        } else {
          nodeInstanceBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder clearNodeInstance() {
        if (nodeInstanceBuilder_ == null) {
          nodeInstance_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00008000);
          onChanged();
        } else {
          nodeInstanceBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public Builder removeNodeInstance(int index) {
        if (nodeInstanceBuilder_ == null) {
          ensureNodeInstanceIsMutable();
          nodeInstance_.remove(index);
          onChanged();
        } else {
          nodeInstanceBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder getNodeInstanceBuilder(
          int index) {
        return getNodeInstanceFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder getNodeInstanceOrBuilder(
          int index) {
        if (nodeInstanceBuilder_ == null) {
          return nodeInstance_.get(index);  } else {
          return nodeInstanceBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public java.util.List 
           getNodeInstanceOrBuilderList() {
        if (nodeInstanceBuilder_ != null) {
          return nodeInstanceBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(nodeInstance_);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder addNodeInstanceBuilder() {
        return getNodeInstanceFieldBuilder().addBuilder(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder addNodeInstanceBuilder(
          int index) {
        return getNodeInstanceFieldBuilder().addBuilder(
            index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.NodeInstance node_instance = 7;
       */
      public java.util.List 
           getNodeInstanceBuilderList() {
        return getNodeInstanceFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder> 
          getNodeInstanceFieldBuilder() {
        if (nodeInstanceBuilder_ == null) {
          nodeInstanceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.NodeInstanceOrBuilder>(
                  nodeInstance_,
                  ((bitField0_ & 0x00008000) == 0x00008000),
                  getParentForChildren(),
                  isClean());
          nodeInstance_ = null;
        }
        return nodeInstanceBuilder_;
      }

      private java.util.List variable_ =
        java.util.Collections.emptyList();
      private void ensureVariableIsMutable() {
        if (!((bitField0_ & 0x00010000) == 0x00010000)) {
          variable_ = new java.util.ArrayList(variable_);
          bitField0_ |= 0x00010000;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> variableBuilder_;

      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public java.util.List getVariableList() {
        if (variableBuilder_ == null) {
          return java.util.Collections.unmodifiableList(variable_);
        } else {
          return variableBuilder_.getMessageList();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public int getVariableCount() {
        if (variableBuilder_ == null) {
          return variable_.size();
        } else {
          return variableBuilder_.getCount();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) {
        if (variableBuilder_ == null) {
          return variable_.get(index);
        } else {
          return variableBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder setVariable(
          int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
        if (variableBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureVariableIsMutable();
          variable_.set(index, value);
          onChanged();
        } else {
          variableBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder setVariable(
          int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
        if (variableBuilder_ == null) {
          ensureVariableIsMutable();
          variable_.set(index, builderForValue.build());
          onChanged();
        } else {
          variableBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder addVariable(org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
        if (variableBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureVariableIsMutable();
          variable_.add(value);
          onChanged();
        } else {
          variableBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder addVariable(
          int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) {
        if (variableBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureVariableIsMutable();
          variable_.add(index, value);
          onChanged();
        } else {
          variableBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder addVariable(
          org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
        if (variableBuilder_ == null) {
          ensureVariableIsMutable();
          variable_.add(builderForValue.build());
          onChanged();
        } else {
          variableBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder addVariable(
          int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) {
        if (variableBuilder_ == null) {
          ensureVariableIsMutable();
          variable_.add(index, builderForValue.build());
          onChanged();
        } else {
          variableBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder addAllVariable(
          java.lang.Iterable values) {
        if (variableBuilder_ == null) {
          ensureVariableIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, variable_);
          onChanged();
        } else {
          variableBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder clearVariable() {
        if (variableBuilder_ == null) {
          variable_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00010000);
          onChanged();
        } else {
          variableBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public Builder removeVariable(int index) {
        if (variableBuilder_ == null) {
          ensureVariableIsMutable();
          variable_.remove(index);
          onChanged();
        } else {
          variableBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder getVariableBuilder(
          int index) {
        return getVariableFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder(
          int index) {
        if (variableBuilder_ == null) {
          return variable_.get(index);  } else {
          return variableBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public java.util.List 
           getVariableOrBuilderList() {
        if (variableBuilder_ != null) {
          return variableBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(variable_);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder() {
        return getVariableFieldBuilder().addBuilder(
            org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder(
          int index) {
        return getVariableFieldBuilder().addBuilder(
            index, org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.Variable variable = 8;
       */
      public java.util.List 
           getVariableBuilderList() {
        return getVariableFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> 
          getVariableFieldBuilder() {
        if (variableBuilder_ == null) {
          variableBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder>(
                  variable_,
                  ((bitField0_ & 0x00010000) == 0x00010000),
                  getParentForChildren(),
                  isClean());
          variable_ = null;
        }
        return variableBuilder_;
      }

      private java.util.List exclusiveGroup_ =
        java.util.Collections.emptyList();
      private void ensureExclusiveGroupIsMutable() {
        if (!((bitField0_ & 0x00020000) == 0x00020000)) {
          exclusiveGroup_ = new java.util.ArrayList(exclusiveGroup_);
          bitField0_ |= 0x00020000;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder> exclusiveGroupBuilder_;

      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public java.util.List getExclusiveGroupList() {
        if (exclusiveGroupBuilder_ == null) {
          return java.util.Collections.unmodifiableList(exclusiveGroup_);
        } else {
          return exclusiveGroupBuilder_.getMessageList();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public int getExclusiveGroupCount() {
        if (exclusiveGroupBuilder_ == null) {
          return exclusiveGroup_.size();
        } else {
          return exclusiveGroupBuilder_.getCount();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance getExclusiveGroup(int index) {
        if (exclusiveGroupBuilder_ == null) {
          return exclusiveGroup_.get(index);
        } else {
          return exclusiveGroupBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder setExclusiveGroup(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance value) {
        if (exclusiveGroupBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.set(index, value);
          onChanged();
        } else {
          exclusiveGroupBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder setExclusiveGroup(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder builderForValue) {
        if (exclusiveGroupBuilder_ == null) {
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.set(index, builderForValue.build());
          onChanged();
        } else {
          exclusiveGroupBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder addExclusiveGroup(org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance value) {
        if (exclusiveGroupBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.add(value);
          onChanged();
        } else {
          exclusiveGroupBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder addExclusiveGroup(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance value) {
        if (exclusiveGroupBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.add(index, value);
          onChanged();
        } else {
          exclusiveGroupBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder addExclusiveGroup(
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder builderForValue) {
        if (exclusiveGroupBuilder_ == null) {
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.add(builderForValue.build());
          onChanged();
        } else {
          exclusiveGroupBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder addExclusiveGroup(
          int index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder builderForValue) {
        if (exclusiveGroupBuilder_ == null) {
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.add(index, builderForValue.build());
          onChanged();
        } else {
          exclusiveGroupBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder addAllExclusiveGroup(
          java.lang.Iterable values) {
        if (exclusiveGroupBuilder_ == null) {
          ensureExclusiveGroupIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, exclusiveGroup_);
          onChanged();
        } else {
          exclusiveGroupBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder clearExclusiveGroup() {
        if (exclusiveGroupBuilder_ == null) {
          exclusiveGroup_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00020000);
          onChanged();
        } else {
          exclusiveGroupBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public Builder removeExclusiveGroup(int index) {
        if (exclusiveGroupBuilder_ == null) {
          ensureExclusiveGroupIsMutable();
          exclusiveGroup_.remove(index);
          onChanged();
        } else {
          exclusiveGroupBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder getExclusiveGroupBuilder(
          int index) {
        return getExclusiveGroupFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder getExclusiveGroupOrBuilder(
          int index) {
        if (exclusiveGroupBuilder_ == null) {
          return exclusiveGroup_.get(index);  } else {
          return exclusiveGroupBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public java.util.List 
           getExclusiveGroupOrBuilderList() {
        if (exclusiveGroupBuilder_ != null) {
          return exclusiveGroupBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(exclusiveGroup_);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder addExclusiveGroupBuilder() {
        return getExclusiveGroupFieldBuilder().addBuilder(
            org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder addExclusiveGroupBuilder(
          int index) {
        return getExclusiveGroupFieldBuilder().addBuilder(
            index, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.ProcessInstance.ExclusiveGroupInstance exclusive_group = 10;
       */
      public java.util.List 
           getExclusiveGroupBuilderList() {
        return getExclusiveGroupFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder> 
          getExclusiveGroupFieldBuilder() {
        if (exclusiveGroupBuilder_ == null) {
          exclusiveGroupBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.ExclusiveGroupInstanceOrBuilder>(
                  exclusiveGroup_,
                  ((bitField0_ & 0x00020000) == 0x00020000),
                  getParentForChildren(),
                  isClean());
          exclusiveGroup_ = null;
        }
        return exclusiveGroupBuilder_;
      }

      private com.google.protobuf.LazyStringList completedNodeIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureCompletedNodeIdsIsMutable() {
        if (!((bitField0_ & 0x00040000) == 0x00040000)) {
          completedNodeIds_ = new com.google.protobuf.LazyStringArrayList(completedNodeIds_);
          bitField0_ |= 0x00040000;
         }
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public com.google.protobuf.ProtocolStringList
          getCompletedNodeIdsList() {
        return completedNodeIds_.getUnmodifiableView();
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public int getCompletedNodeIdsCount() {
        return completedNodeIds_.size();
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public java.lang.String getCompletedNodeIds(int index) {
        return completedNodeIds_.get(index);
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public com.google.protobuf.ByteString
          getCompletedNodeIdsBytes(int index) {
        return completedNodeIds_.getByteString(index);
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public Builder setCompletedNodeIds(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCompletedNodeIdsIsMutable();
        completedNodeIds_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public Builder addCompletedNodeIds(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCompletedNodeIdsIsMutable();
        completedNodeIds_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public Builder addAllCompletedNodeIds(
          java.lang.Iterable values) {
        ensureCompletedNodeIdsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, completedNodeIds_);
        onChanged();
        return this;
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public Builder clearCompletedNodeIds() {
        completedNodeIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00040000);
        onChanged();
        return this;
      }
      /**
       * repeated string completedNodeIds = 13;
       */
      public Builder addCompletedNodeIdsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCompletedNodeIdsIsMutable();
        completedNodeIds_.add(value);
        onChanged();
        return this;
      }

      private java.util.List iterationLevels_ =
        java.util.Collections.emptyList();
      private void ensureIterationLevelsIsMutable() {
        if (!((bitField0_ & 0x00080000) == 0x00080000)) {
          iterationLevels_ = new java.util.ArrayList(iterationLevels_);
          bitField0_ |= 0x00080000;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder> iterationLevelsBuilder_;

      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public java.util.List getIterationLevelsList() {
        if (iterationLevelsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(iterationLevels_);
        } else {
          return iterationLevelsBuilder_.getMessageList();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public int getIterationLevelsCount() {
        if (iterationLevelsBuilder_ == null) {
          return iterationLevels_.size();
        } else {
          return iterationLevelsBuilder_.getCount();
        }
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getIterationLevels(int index) {
        if (iterationLevelsBuilder_ == null) {
          return iterationLevels_.get(index);
        } else {
          return iterationLevelsBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder setIterationLevels(
          int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
        if (iterationLevelsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureIterationLevelsIsMutable();
          iterationLevels_.set(index, value);
          onChanged();
        } else {
          iterationLevelsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder setIterationLevels(
          int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
        if (iterationLevelsBuilder_ == null) {
          ensureIterationLevelsIsMutable();
          iterationLevels_.set(index, builderForValue.build());
          onChanged();
        } else {
          iterationLevelsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder addIterationLevels(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
        if (iterationLevelsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureIterationLevelsIsMutable();
          iterationLevels_.add(value);
          onChanged();
        } else {
          iterationLevelsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder addIterationLevels(
          int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel value) {
        if (iterationLevelsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureIterationLevelsIsMutable();
          iterationLevels_.add(index, value);
          onChanged();
        } else {
          iterationLevelsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder addIterationLevels(
          org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
        if (iterationLevelsBuilder_ == null) {
          ensureIterationLevelsIsMutable();
          iterationLevels_.add(builderForValue.build());
          onChanged();
        } else {
          iterationLevelsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder addIterationLevels(
          int index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder builderForValue) {
        if (iterationLevelsBuilder_ == null) {
          ensureIterationLevelsIsMutable();
          iterationLevels_.add(index, builderForValue.build());
          onChanged();
        } else {
          iterationLevelsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder addAllIterationLevels(
          java.lang.Iterable values) {
        if (iterationLevelsBuilder_ == null) {
          ensureIterationLevelsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, iterationLevels_);
          onChanged();
        } else {
          iterationLevelsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder clearIterationLevels() {
        if (iterationLevelsBuilder_ == null) {
          iterationLevels_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00080000);
          onChanged();
        } else {
          iterationLevelsBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public Builder removeIterationLevels(int index) {
        if (iterationLevelsBuilder_ == null) {
          ensureIterationLevelsIsMutable();
          iterationLevels_.remove(index);
          onChanged();
        } else {
          iterationLevelsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder getIterationLevelsBuilder(
          int index) {
        return getIterationLevelsFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder getIterationLevelsOrBuilder(
          int index) {
        if (iterationLevelsBuilder_ == null) {
          return iterationLevels_.get(index);  } else {
          return iterationLevelsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public java.util.List 
           getIterationLevelsOrBuilderList() {
        if (iterationLevelsBuilder_ != null) {
          return iterationLevelsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(iterationLevels_);
        }
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder addIterationLevelsBuilder() {
        return getIterationLevelsFieldBuilder().addBuilder(
            org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder addIterationLevelsBuilder(
          int index) {
        return getIterationLevelsFieldBuilder().addBuilder(
            index, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance());
      }
      /**
       * repeated .org.jbpm.marshalling.IterationLevel iterationLevels = 14;
       */
      public java.util.List 
           getIterationLevelsBuilderList() {
        return getIterationLevelsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder> 
          getIterationLevelsFieldBuilder() {
        if (iterationLevelsBuilder_ == null) {
          iterationLevelsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.jbpm.marshalling.impl.JBPMMessages.IterationLevel, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder, org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder>(
                  iterationLevels_,
                  ((bitField0_ & 0x00080000) == 0x00080000),
                  getParentForChildren(),
                  isClean());
          iterationLevels_ = null;
        }
        return iterationLevelsBuilder_;
      }

      // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessInstance)
    }

    static {
      defaultInstance = new ProcessInstance(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessInstance)
  }

  public interface VariableOrBuilder extends
      // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.Variable)
      com.google.protobuf.MessageOrBuilder {

    /**
     * optional string name = 1;
     */
    boolean hasName();
    /**
     * optional string name = 1;
     */
    java.lang.String getName();
    /**
     * optional string name = 1;
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * optional int32 strategy_index = 2;
     *
     * 
     * the actual object reference
     * 
*/ boolean hasStrategyIndex(); /** * optional int32 strategy_index = 2; * *
     * the actual object reference
     * 
*/ int getStrategyIndex(); /** * optional bytes value = 3; */ boolean hasValue(); /** * optional bytes value = 3; */ com.google.protobuf.ByteString getValue(); } /** * Protobuf type {@code org.jbpm.marshalling.Variable} */ public static final class Variable extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.Variable) VariableOrBuilder { // Use Variable.newBuilder() to construct. private Variable(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private Variable(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final Variable defaultInstance; public static Variable getDefaultInstance() { return defaultInstance; } public Variable getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Variable( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000001; name_ = bs; break; } case 16: { bitField0_ |= 0x00000002; strategyIndex_ = input.readInt32(); break; } case 26: { bitField0_ |= 0x00000004; value_ = input.readBytes(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_Variable_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_Variable_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.Variable.class, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder.class); } public static com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { public Variable parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Variable(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } private int bitField0_; public static final int NAME_FIELD_NUMBER = 1; private java.lang.Object name_; /** * optional string name = 1; */ public boolean hasName() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional string name = 1; */ public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { name_ = s; } return s; } } /** * optional string name = 1; */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int STRATEGY_INDEX_FIELD_NUMBER = 2; private int strategyIndex_; /** * optional int32 strategy_index = 2; * *
     * the actual object reference
     * 
*/ public boolean hasStrategyIndex() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int32 strategy_index = 2; * *
     * the actual object reference
     * 
*/ public int getStrategyIndex() { return strategyIndex_; } public static final int VALUE_FIELD_NUMBER = 3; private com.google.protobuf.ByteString value_; /** * optional bytes value = 3; */ public boolean hasValue() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional bytes value = 3; */ public com.google.protobuf.ByteString getValue() { return value_; } private void initFields() { name_ = ""; strategyIndex_ = 0; value_ = com.google.protobuf.ByteString.EMPTY; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, getNameBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt32(2, strategyIndex_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBytes(3, value_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getNameBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(2, strategyIndex_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, value_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.Variable parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.Variable prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code org.jbpm.marshalling.Variable} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.Variable) org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_Variable_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_Variable_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.Variable.class, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder.class); } // Construct using org.jbpm.marshalling.impl.JBPMMessages.Variable.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); name_ = ""; bitField0_ = (bitField0_ & ~0x00000001); strategyIndex_ = 0; bitField0_ = (bitField0_ & ~0x00000002); value_ = com.google.protobuf.ByteString.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_Variable_descriptor; } public org.jbpm.marshalling.impl.JBPMMessages.Variable getDefaultInstanceForType() { return org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance(); } public org.jbpm.marshalling.impl.JBPMMessages.Variable build() { org.jbpm.marshalling.impl.JBPMMessages.Variable result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.jbpm.marshalling.impl.JBPMMessages.Variable buildPartial() { org.jbpm.marshalling.impl.JBPMMessages.Variable result = new org.jbpm.marshalling.impl.JBPMMessages.Variable(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.name_ = name_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.strategyIndex_ = strategyIndex_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.value_ = value_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.Variable) { return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.Variable)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.Variable other) { if (other == org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance()) return this; if (other.hasName()) { bitField0_ |= 0x00000001; name_ = other.name_; onChanged(); } if (other.hasStrategyIndex()) { setStrategyIndex(other.getStrategyIndex()); } if (other.hasValue()) { setValue(other.getValue()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.jbpm.marshalling.impl.JBPMMessages.Variable parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.Variable) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object name_ = ""; /** * optional string name = 1; */ public boolean hasName() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional string name = 1; */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { name_ = s; } return s; } else { return (java.lang.String) ref; } } /** * optional string name = 1; */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * optional string name = 1; */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; name_ = value; onChanged(); return this; } /** * optional string name = 1; */ public Builder clearName() { bitField0_ = (bitField0_ & ~0x00000001); name_ = getDefaultInstance().getName(); onChanged(); return this; } /** * optional string name = 1; */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; name_ = value; onChanged(); return this; } private int strategyIndex_ ; /** * optional int32 strategy_index = 2; * *
       * the actual object reference
       * 
*/ public boolean hasStrategyIndex() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int32 strategy_index = 2; * *
       * the actual object reference
       * 
*/ public int getStrategyIndex() { return strategyIndex_; } /** * optional int32 strategy_index = 2; * *
       * the actual object reference
       * 
*/ public Builder setStrategyIndex(int value) { bitField0_ |= 0x00000002; strategyIndex_ = value; onChanged(); return this; } /** * optional int32 strategy_index = 2; * *
       * the actual object reference
       * 
*/ public Builder clearStrategyIndex() { bitField0_ = (bitField0_ & ~0x00000002); strategyIndex_ = 0; onChanged(); return this; } private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY; /** * optional bytes value = 3; */ public boolean hasValue() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional bytes value = 3; */ public com.google.protobuf.ByteString getValue() { return value_; } /** * optional bytes value = 3; */ public Builder setValue(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; value_ = value; onChanged(); return this; } /** * optional bytes value = 3; */ public Builder clearValue() { bitField0_ = (bitField0_ & ~0x00000004); value_ = getDefaultInstance().getValue(); onChanged(); return this; } // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.Variable) } static { defaultInstance = new Variable(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.Variable) } public interface WorkItemOrBuilder extends // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.WorkItem) com.google.protobuf.MessageOrBuilder { /** * optional int64 id = 1; */ boolean hasId(); /** * optional int64 id = 1; */ long getId(); /** * optional int64 process_instances_id = 2; */ boolean hasProcessInstancesId(); /** * optional int64 process_instances_id = 2; */ long getProcessInstancesId(); /** * optional string name = 3; */ boolean hasName(); /** * optional string name = 3; */ java.lang.String getName(); /** * optional string name = 3; */ com.google.protobuf.ByteString getNameBytes(); /** * optional int32 state = 4; */ boolean hasState(); /** * optional int32 state = 4; */ int getState(); /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ java.util.List getVariableList(); /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index); /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ int getVariableCount(); /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ java.util.List getVariableOrBuilderList(); /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder( int index); /** * optional string deployment_id = 6; */ boolean hasDeploymentId(); /** * optional string deployment_id = 6; */ java.lang.String getDeploymentId(); /** * optional string deployment_id = 6; */ com.google.protobuf.ByteString getDeploymentIdBytes(); /** * optional int64 node_instance_id = 7; */ boolean hasNodeInstanceId(); /** * optional int64 node_instance_id = 7; */ long getNodeInstanceId(); /** * optional int64 node_id = 8; */ boolean hasNodeId(); /** * optional int64 node_id = 8; */ long getNodeId(); } /** * Protobuf type {@code org.jbpm.marshalling.WorkItem} */ public static final class WorkItem extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.WorkItem) WorkItemOrBuilder { // Use WorkItem.newBuilder() to construct. private WorkItem(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private WorkItem(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final WorkItem defaultInstance; public static WorkItem getDefaultInstance() { return defaultInstance; } public WorkItem getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private WorkItem( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { bitField0_ |= 0x00000001; id_ = input.readInt64(); break; } case 16: { bitField0_ |= 0x00000002; processInstancesId_ = input.readInt64(); break; } case 26: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000004; name_ = bs; break; } case 32: { bitField0_ |= 0x00000008; state_ = input.readInt32(); break; } case 42: { if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) { variable_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000010; } variable_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.Variable.PARSER, extensionRegistry)); break; } case 50: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000010; deploymentId_ = bs; break; } case 56: { bitField0_ |= 0x00000020; nodeInstanceId_ = input.readInt64(); break; } case 64: { bitField0_ |= 0x00000040; nodeId_ = input.readInt64(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) { variable_ = java.util.Collections.unmodifiableList(variable_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_WorkItem_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_WorkItem_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.WorkItem.class, org.jbpm.marshalling.impl.JBPMMessages.WorkItem.Builder.class); } public static com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { public WorkItem parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new WorkItem(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } private int bitField0_; public static final int ID_FIELD_NUMBER = 1; private long id_; /** * optional int64 id = 1; */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional int64 id = 1; */ public long getId() { return id_; } public static final int PROCESS_INSTANCES_ID_FIELD_NUMBER = 2; private long processInstancesId_; /** * optional int64 process_instances_id = 2; */ public boolean hasProcessInstancesId() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int64 process_instances_id = 2; */ public long getProcessInstancesId() { return processInstancesId_; } public static final int NAME_FIELD_NUMBER = 3; private java.lang.Object name_; /** * optional string name = 3; */ public boolean hasName() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional string name = 3; */ public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { name_ = s; } return s; } } /** * optional string name = 3; */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int STATE_FIELD_NUMBER = 4; private int state_; /** * optional int32 state = 4; */ public boolean hasState() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * optional int32 state = 4; */ public int getState() { return state_; } public static final int VARIABLE_FIELD_NUMBER = 5; private java.util.List variable_; /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public java.util.List getVariableList() { return variable_; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public java.util.List getVariableOrBuilderList() { return variable_; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public int getVariableCount() { return variable_.size(); } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) { return variable_.get(index); } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder( int index) { return variable_.get(index); } public static final int DEPLOYMENT_ID_FIELD_NUMBER = 6; private java.lang.Object deploymentId_; /** * optional string deployment_id = 6; */ public boolean hasDeploymentId() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * optional string deployment_id = 6; */ public java.lang.String getDeploymentId() { java.lang.Object ref = deploymentId_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { deploymentId_ = s; } return s; } } /** * optional string deployment_id = 6; */ public com.google.protobuf.ByteString getDeploymentIdBytes() { java.lang.Object ref = deploymentId_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); deploymentId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int NODE_INSTANCE_ID_FIELD_NUMBER = 7; private long nodeInstanceId_; /** * optional int64 node_instance_id = 7; */ public boolean hasNodeInstanceId() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * optional int64 node_instance_id = 7; */ public long getNodeInstanceId() { return nodeInstanceId_; } public static final int NODE_ID_FIELD_NUMBER = 8; private long nodeId_; /** * optional int64 node_id = 8; */ public boolean hasNodeId() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * optional int64 node_id = 8; */ public long getNodeId() { return nodeId_; } private void initFields() { id_ = 0L; processInstancesId_ = 0L; name_ = ""; state_ = 0; variable_ = java.util.Collections.emptyList(); deploymentId_ = ""; nodeInstanceId_ = 0L; nodeId_ = 0L; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeInt64(1, id_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt64(2, processInstancesId_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeBytes(3, getNameBytes()); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeInt32(4, state_); } for (int i = 0; i < variable_.size(); i++) { output.writeMessage(5, variable_.get(i)); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeBytes(6, getDeploymentIdBytes()); } if (((bitField0_ & 0x00000020) == 0x00000020)) { output.writeInt64(7, nodeInstanceId_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { output.writeInt64(8, nodeId_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(1, id_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(2, processInstancesId_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, getNameBytes()); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(4, state_); } for (int i = 0; i < variable_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(5, variable_.get(i)); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(6, getDeploymentIdBytes()); } if (((bitField0_ & 0x00000020) == 0x00000020)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(7, nodeInstanceId_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(8, nodeId_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.WorkItem parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.WorkItem prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code org.jbpm.marshalling.WorkItem} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.WorkItem) org.jbpm.marshalling.impl.JBPMMessages.WorkItemOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_WorkItem_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_WorkItem_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.WorkItem.class, org.jbpm.marshalling.impl.JBPMMessages.WorkItem.Builder.class); } // Construct using org.jbpm.marshalling.impl.JBPMMessages.WorkItem.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getVariableFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); id_ = 0L; bitField0_ = (bitField0_ & ~0x00000001); processInstancesId_ = 0L; bitField0_ = (bitField0_ & ~0x00000002); name_ = ""; bitField0_ = (bitField0_ & ~0x00000004); state_ = 0; bitField0_ = (bitField0_ & ~0x00000008); if (variableBuilder_ == null) { variable_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); } else { variableBuilder_.clear(); } deploymentId_ = ""; bitField0_ = (bitField0_ & ~0x00000020); nodeInstanceId_ = 0L; bitField0_ = (bitField0_ & ~0x00000040); nodeId_ = 0L; bitField0_ = (bitField0_ & ~0x00000080); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_WorkItem_descriptor; } public org.jbpm.marshalling.impl.JBPMMessages.WorkItem getDefaultInstanceForType() { return org.jbpm.marshalling.impl.JBPMMessages.WorkItem.getDefaultInstance(); } public org.jbpm.marshalling.impl.JBPMMessages.WorkItem build() { org.jbpm.marshalling.impl.JBPMMessages.WorkItem result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.jbpm.marshalling.impl.JBPMMessages.WorkItem buildPartial() { org.jbpm.marshalling.impl.JBPMMessages.WorkItem result = new org.jbpm.marshalling.impl.JBPMMessages.WorkItem(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.id_ = id_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.processInstancesId_ = processInstancesId_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.name_ = name_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.state_ = state_; if (variableBuilder_ == null) { if (((bitField0_ & 0x00000010) == 0x00000010)) { variable_ = java.util.Collections.unmodifiableList(variable_); bitField0_ = (bitField0_ & ~0x00000010); } result.variable_ = variable_; } else { result.variable_ = variableBuilder_.build(); } if (((from_bitField0_ & 0x00000020) == 0x00000020)) { to_bitField0_ |= 0x00000010; } result.deploymentId_ = deploymentId_; if (((from_bitField0_ & 0x00000040) == 0x00000040)) { to_bitField0_ |= 0x00000020; } result.nodeInstanceId_ = nodeInstanceId_; if (((from_bitField0_ & 0x00000080) == 0x00000080)) { to_bitField0_ |= 0x00000040; } result.nodeId_ = nodeId_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.WorkItem) { return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.WorkItem)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.WorkItem other) { if (other == org.jbpm.marshalling.impl.JBPMMessages.WorkItem.getDefaultInstance()) return this; if (other.hasId()) { setId(other.getId()); } if (other.hasProcessInstancesId()) { setProcessInstancesId(other.getProcessInstancesId()); } if (other.hasName()) { bitField0_ |= 0x00000004; name_ = other.name_; onChanged(); } if (other.hasState()) { setState(other.getState()); } if (variableBuilder_ == null) { if (!other.variable_.isEmpty()) { if (variable_.isEmpty()) { variable_ = other.variable_; bitField0_ = (bitField0_ & ~0x00000010); } else { ensureVariableIsMutable(); variable_.addAll(other.variable_); } onChanged(); } } else { if (!other.variable_.isEmpty()) { if (variableBuilder_.isEmpty()) { variableBuilder_.dispose(); variableBuilder_ = null; variable_ = other.variable_; bitField0_ = (bitField0_ & ~0x00000010); variableBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getVariableFieldBuilder() : null; } else { variableBuilder_.addAllMessages(other.variable_); } } } if (other.hasDeploymentId()) { bitField0_ |= 0x00000020; deploymentId_ = other.deploymentId_; onChanged(); } if (other.hasNodeInstanceId()) { setNodeInstanceId(other.getNodeInstanceId()); } if (other.hasNodeId()) { setNodeId(other.getNodeId()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.jbpm.marshalling.impl.JBPMMessages.WorkItem parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.WorkItem) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private long id_ ; /** * optional int64 id = 1; */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional int64 id = 1; */ public long getId() { return id_; } /** * optional int64 id = 1; */ public Builder setId(long value) { bitField0_ |= 0x00000001; id_ = value; onChanged(); return this; } /** * optional int64 id = 1; */ public Builder clearId() { bitField0_ = (bitField0_ & ~0x00000001); id_ = 0L; onChanged(); return this; } private long processInstancesId_ ; /** * optional int64 process_instances_id = 2; */ public boolean hasProcessInstancesId() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int64 process_instances_id = 2; */ public long getProcessInstancesId() { return processInstancesId_; } /** * optional int64 process_instances_id = 2; */ public Builder setProcessInstancesId(long value) { bitField0_ |= 0x00000002; processInstancesId_ = value; onChanged(); return this; } /** * optional int64 process_instances_id = 2; */ public Builder clearProcessInstancesId() { bitField0_ = (bitField0_ & ~0x00000002); processInstancesId_ = 0L; onChanged(); return this; } private java.lang.Object name_ = ""; /** * optional string name = 3; */ public boolean hasName() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional string name = 3; */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { name_ = s; } return s; } else { return (java.lang.String) ref; } } /** * optional string name = 3; */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * optional string name = 3; */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; name_ = value; onChanged(); return this; } /** * optional string name = 3; */ public Builder clearName() { bitField0_ = (bitField0_ & ~0x00000004); name_ = getDefaultInstance().getName(); onChanged(); return this; } /** * optional string name = 3; */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000004; name_ = value; onChanged(); return this; } private int state_ ; /** * optional int32 state = 4; */ public boolean hasState() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * optional int32 state = 4; */ public int getState() { return state_; } /** * optional int32 state = 4; */ public Builder setState(int value) { bitField0_ |= 0x00000008; state_ = value; onChanged(); return this; } /** * optional int32 state = 4; */ public Builder clearState() { bitField0_ = (bitField0_ & ~0x00000008); state_ = 0; onChanged(); return this; } private java.util.List variable_ = java.util.Collections.emptyList(); private void ensureVariableIsMutable() { if (!((bitField0_ & 0x00000010) == 0x00000010)) { variable_ = new java.util.ArrayList(variable_); bitField0_ |= 0x00000010; } } private com.google.protobuf.RepeatedFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> variableBuilder_; /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public java.util.List getVariableList() { if (variableBuilder_ == null) { return java.util.Collections.unmodifiableList(variable_); } else { return variableBuilder_.getMessageList(); } } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public int getVariableCount() { if (variableBuilder_ == null) { return variable_.size(); } else { return variableBuilder_.getCount(); } } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) { if (variableBuilder_ == null) { return variable_.get(index); } else { return variableBuilder_.getMessage(index); } } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder setVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) { if (variableBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureVariableIsMutable(); variable_.set(index, value); onChanged(); } else { variableBuilder_.setMessage(index, value); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder setVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.set(index, builderForValue.build()); onChanged(); } else { variableBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder addVariable(org.jbpm.marshalling.impl.JBPMMessages.Variable value) { if (variableBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureVariableIsMutable(); variable_.add(value); onChanged(); } else { variableBuilder_.addMessage(value); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder addVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) { if (variableBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureVariableIsMutable(); variable_.add(index, value); onChanged(); } else { variableBuilder_.addMessage(index, value); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder addVariable( org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.add(builderForValue.build()); onChanged(); } else { variableBuilder_.addMessage(builderForValue.build()); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder addVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.add(index, builderForValue.build()); onChanged(); } else { variableBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder addAllVariable( java.lang.Iterable values) { if (variableBuilder_ == null) { ensureVariableIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, variable_); onChanged(); } else { variableBuilder_.addAllMessages(values); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder clearVariable() { if (variableBuilder_ == null) { variable_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); onChanged(); } else { variableBuilder_.clear(); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public Builder removeVariable(int index) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.remove(index); onChanged(); } else { variableBuilder_.remove(index); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder getVariableBuilder( int index) { return getVariableFieldBuilder().getBuilder(index); } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder( int index) { if (variableBuilder_ == null) { return variable_.get(index); } else { return variableBuilder_.getMessageOrBuilder(index); } } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public java.util.List getVariableOrBuilderList() { if (variableBuilder_ != null) { return variableBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(variable_); } } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder() { return getVariableFieldBuilder().addBuilder( org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance()); } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder( int index) { return getVariableFieldBuilder().addBuilder( index, org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance()); } /** * repeated .org.jbpm.marshalling.Variable variable = 5; */ public java.util.List getVariableBuilderList() { return getVariableFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> getVariableFieldBuilder() { if (variableBuilder_ == null) { variableBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder>( variable_, ((bitField0_ & 0x00000010) == 0x00000010), getParentForChildren(), isClean()); variable_ = null; } return variableBuilder_; } private java.lang.Object deploymentId_ = ""; /** * optional string deployment_id = 6; */ public boolean hasDeploymentId() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * optional string deployment_id = 6; */ public java.lang.String getDeploymentId() { java.lang.Object ref = deploymentId_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { deploymentId_ = s; } return s; } else { return (java.lang.String) ref; } } /** * optional string deployment_id = 6; */ public com.google.protobuf.ByteString getDeploymentIdBytes() { java.lang.Object ref = deploymentId_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); deploymentId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * optional string deployment_id = 6; */ public Builder setDeploymentId( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000020; deploymentId_ = value; onChanged(); return this; } /** * optional string deployment_id = 6; */ public Builder clearDeploymentId() { bitField0_ = (bitField0_ & ~0x00000020); deploymentId_ = getDefaultInstance().getDeploymentId(); onChanged(); return this; } /** * optional string deployment_id = 6; */ public Builder setDeploymentIdBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000020; deploymentId_ = value; onChanged(); return this; } private long nodeInstanceId_ ; /** * optional int64 node_instance_id = 7; */ public boolean hasNodeInstanceId() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * optional int64 node_instance_id = 7; */ public long getNodeInstanceId() { return nodeInstanceId_; } /** * optional int64 node_instance_id = 7; */ public Builder setNodeInstanceId(long value) { bitField0_ |= 0x00000040; nodeInstanceId_ = value; onChanged(); return this; } /** * optional int64 node_instance_id = 7; */ public Builder clearNodeInstanceId() { bitField0_ = (bitField0_ & ~0x00000040); nodeInstanceId_ = 0L; onChanged(); return this; } private long nodeId_ ; /** * optional int64 node_id = 8; */ public boolean hasNodeId() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * optional int64 node_id = 8; */ public long getNodeId() { return nodeId_; } /** * optional int64 node_id = 8; */ public Builder setNodeId(long value) { bitField0_ |= 0x00000080; nodeId_ = value; onChanged(); return this; } /** * optional int64 node_id = 8; */ public Builder clearNodeId() { bitField0_ = (bitField0_ & ~0x00000080); nodeId_ = 0L; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.WorkItem) } static { defaultInstance = new WorkItem(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.WorkItem) } public interface ProcessTimerOrBuilder extends // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessTimer) com.google.protobuf.MessageOrBuilder { /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ boolean hasTimer(); /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance getTimer(); /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder getTimerOrBuilder(); /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ boolean hasTrigger(); /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ org.drools.serialization.protobuf.ProtobufMessages.Trigger getTrigger(); /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ org.drools.serialization.protobuf.ProtobufMessages.TriggerOrBuilder getTriggerOrBuilder(); } /** * Protobuf type {@code org.jbpm.marshalling.ProcessTimer} */ public static final class ProcessTimer extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessTimer) ProcessTimerOrBuilder { // Use ProcessTimer.newBuilder() to construct. private ProcessTimer(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private ProcessTimer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final ProcessTimer defaultInstance; public static ProcessTimer getDefaultInstance() { return defaultInstance; } public ProcessTimer getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private ProcessTimer( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder subBuilder = null; if (((bitField0_ & 0x00000001) == 0x00000001)) { subBuilder = timer_.toBuilder(); } timer_ = input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(timer_); timer_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000001; break; } case 18: { org.drools.serialization.protobuf.ProtobufMessages.Trigger.Builder subBuilder = null; if (((bitField0_ & 0x00000002) == 0x00000002)) { subBuilder = trigger_.toBuilder(); } trigger_ = input.readMessage(org.drools.serialization.protobuf.ProtobufMessages.Trigger.PARSER, extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(trigger_); trigger_ = subBuilder.buildPartial(); } bitField0_ |= 0x00000002; break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.Builder.class); } public static com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { public ProcessTimer parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new ProcessTimer(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } public interface TimerInstanceOrBuilder extends // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.ProcessTimer.TimerInstance) com.google.protobuf.MessageOrBuilder { /** * optional int64 id = 1; */ boolean hasId(); /** * optional int64 id = 1; */ long getId(); /** * optional int64 timer_id = 2; */ boolean hasTimerId(); /** * optional int64 timer_id = 2; */ long getTimerId(); /** * optional int64 delay = 3; */ boolean hasDelay(); /** * optional int64 delay = 3; */ long getDelay(); /** * optional int64 period = 4; */ boolean hasPeriod(); /** * optional int64 period = 4; */ long getPeriod(); /** * optional int64 process_instance_id = 5; */ boolean hasProcessInstanceId(); /** * optional int64 process_instance_id = 5; */ long getProcessInstanceId(); /** * optional int64 activated_time = 6; */ boolean hasActivatedTime(); /** * optional int64 activated_time = 6; */ long getActivatedTime(); /** * optional int64 last_triggered = 7; */ boolean hasLastTriggered(); /** * optional int64 last_triggered = 7; */ long getLastTriggered(); /** * optional int32 DEPRECATED_sessionId = 8; */ boolean hasDEPRECATEDSessionId(); /** * optional int32 DEPRECATED_sessionId = 8; */ int getDEPRECATEDSessionId(); /** * optional int64 sessionId = 9; */ boolean hasSessionId(); /** * optional int64 sessionId = 9; */ long getSessionId(); /** * optional int32 repeatLimit = 10; */ boolean hasRepeatLimit(); /** * optional int32 repeatLimit = 10; */ int getRepeatLimit(); /** * optional string name = 11; */ boolean hasName(); /** * optional string name = 11; */ java.lang.String getName(); /** * optional string name = 11; */ com.google.protobuf.ByteString getNameBytes(); } /** * Protobuf type {@code org.jbpm.marshalling.ProcessTimer.TimerInstance} */ public static final class TimerInstance extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.ProcessTimer.TimerInstance) TimerInstanceOrBuilder { // Use TimerInstance.newBuilder() to construct. private TimerInstance(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private TimerInstance(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final TimerInstance defaultInstance; public static TimerInstance getDefaultInstance() { return defaultInstance; } public TimerInstance getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private TimerInstance( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 8: { bitField0_ |= 0x00000001; id_ = input.readInt64(); break; } case 16: { bitField0_ |= 0x00000002; timerId_ = input.readInt64(); break; } case 24: { bitField0_ |= 0x00000004; delay_ = input.readInt64(); break; } case 32: { bitField0_ |= 0x00000008; period_ = input.readInt64(); break; } case 40: { bitField0_ |= 0x00000010; processInstanceId_ = input.readInt64(); break; } case 48: { bitField0_ |= 0x00000020; activatedTime_ = input.readInt64(); break; } case 56: { bitField0_ |= 0x00000040; lastTriggered_ = input.readInt64(); break; } case 64: { bitField0_ |= 0x00000080; dEPRECATEDSessionId_ = input.readInt32(); break; } case 72: { bitField0_ |= 0x00000100; sessionId_ = input.readInt64(); break; } case 80: { bitField0_ |= 0x00000200; repeatLimit_ = input.readInt32(); break; } case 90: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000400; name_ = bs; break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder.class); } public static com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { public TimerInstance parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new TimerInstance(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } private int bitField0_; public static final int ID_FIELD_NUMBER = 1; private long id_; /** * optional int64 id = 1; */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional int64 id = 1; */ public long getId() { return id_; } public static final int TIMER_ID_FIELD_NUMBER = 2; private long timerId_; /** * optional int64 timer_id = 2; */ public boolean hasTimerId() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int64 timer_id = 2; */ public long getTimerId() { return timerId_; } public static final int DELAY_FIELD_NUMBER = 3; private long delay_; /** * optional int64 delay = 3; */ public boolean hasDelay() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional int64 delay = 3; */ public long getDelay() { return delay_; } public static final int PERIOD_FIELD_NUMBER = 4; private long period_; /** * optional int64 period = 4; */ public boolean hasPeriod() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * optional int64 period = 4; */ public long getPeriod() { return period_; } public static final int PROCESS_INSTANCE_ID_FIELD_NUMBER = 5; private long processInstanceId_; /** * optional int64 process_instance_id = 5; */ public boolean hasProcessInstanceId() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * optional int64 process_instance_id = 5; */ public long getProcessInstanceId() { return processInstanceId_; } public static final int ACTIVATED_TIME_FIELD_NUMBER = 6; private long activatedTime_; /** * optional int64 activated_time = 6; */ public boolean hasActivatedTime() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * optional int64 activated_time = 6; */ public long getActivatedTime() { return activatedTime_; } public static final int LAST_TRIGGERED_FIELD_NUMBER = 7; private long lastTriggered_; /** * optional int64 last_triggered = 7; */ public boolean hasLastTriggered() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * optional int64 last_triggered = 7; */ public long getLastTriggered() { return lastTriggered_; } public static final int DEPRECATED_SESSIONID_FIELD_NUMBER = 8; private int dEPRECATEDSessionId_; /** * optional int32 DEPRECATED_sessionId = 8; */ public boolean hasDEPRECATEDSessionId() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * optional int32 DEPRECATED_sessionId = 8; */ public int getDEPRECATEDSessionId() { return dEPRECATEDSessionId_; } public static final int SESSIONID_FIELD_NUMBER = 9; private long sessionId_; /** * optional int64 sessionId = 9; */ public boolean hasSessionId() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * optional int64 sessionId = 9; */ public long getSessionId() { return sessionId_; } public static final int REPEATLIMIT_FIELD_NUMBER = 10; private int repeatLimit_; /** * optional int32 repeatLimit = 10; */ public boolean hasRepeatLimit() { return ((bitField0_ & 0x00000200) == 0x00000200); } /** * optional int32 repeatLimit = 10; */ public int getRepeatLimit() { return repeatLimit_; } public static final int NAME_FIELD_NUMBER = 11; private java.lang.Object name_; /** * optional string name = 11; */ public boolean hasName() { return ((bitField0_ & 0x00000400) == 0x00000400); } /** * optional string name = 11; */ public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { name_ = s; } return s; } } /** * optional string name = 11; */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } private void initFields() { id_ = 0L; timerId_ = 0L; delay_ = 0L; period_ = 0L; processInstanceId_ = 0L; activatedTime_ = 0L; lastTriggered_ = 0L; dEPRECATEDSessionId_ = 0; sessionId_ = 0L; repeatLimit_ = 0; name_ = ""; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeInt64(1, id_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt64(2, timerId_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { output.writeInt64(3, delay_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { output.writeInt64(4, period_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { output.writeInt64(5, processInstanceId_); } if (((bitField0_ & 0x00000020) == 0x00000020)) { output.writeInt64(6, activatedTime_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { output.writeInt64(7, lastTriggered_); } if (((bitField0_ & 0x00000080) == 0x00000080)) { output.writeInt32(8, dEPRECATEDSessionId_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { output.writeInt64(9, sessionId_); } if (((bitField0_ & 0x00000200) == 0x00000200)) { output.writeInt32(10, repeatLimit_); } if (((bitField0_ & 0x00000400) == 0x00000400)) { output.writeBytes(11, getNameBytes()); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(1, id_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(2, timerId_); } if (((bitField0_ & 0x00000004) == 0x00000004)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(3, delay_); } if (((bitField0_ & 0x00000008) == 0x00000008)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(4, period_); } if (((bitField0_ & 0x00000010) == 0x00000010)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(5, processInstanceId_); } if (((bitField0_ & 0x00000020) == 0x00000020)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(6, activatedTime_); } if (((bitField0_ & 0x00000040) == 0x00000040)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(7, lastTriggered_); } if (((bitField0_ & 0x00000080) == 0x00000080)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(8, dEPRECATEDSessionId_); } if (((bitField0_ & 0x00000100) == 0x00000100)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(9, sessionId_); } if (((bitField0_ & 0x00000200) == 0x00000200)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(10, repeatLimit_); } if (((bitField0_ & 0x00000400) == 0x00000400)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(11, getNameBytes()); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code org.jbpm.marshalling.ProcessTimer.TimerInstance} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessTimer.TimerInstance) org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder.class); } // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); id_ = 0L; bitField0_ = (bitField0_ & ~0x00000001); timerId_ = 0L; bitField0_ = (bitField0_ & ~0x00000002); delay_ = 0L; bitField0_ = (bitField0_ & ~0x00000004); period_ = 0L; bitField0_ = (bitField0_ & ~0x00000008); processInstanceId_ = 0L; bitField0_ = (bitField0_ & ~0x00000010); activatedTime_ = 0L; bitField0_ = (bitField0_ & ~0x00000020); lastTriggered_ = 0L; bitField0_ = (bitField0_ & ~0x00000040); dEPRECATEDSessionId_ = 0; bitField0_ = (bitField0_ & ~0x00000080); sessionId_ = 0L; bitField0_ = (bitField0_ & ~0x00000100); repeatLimit_ = 0; bitField0_ = (bitField0_ & ~0x00000200); name_ = ""; bitField0_ = (bitField0_ & ~0x00000400); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_descriptor; } public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance getDefaultInstanceForType() { return org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance(); } public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance build() { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance buildPartial() { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.id_ = id_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.timerId_ = timerId_; if (((from_bitField0_ & 0x00000004) == 0x00000004)) { to_bitField0_ |= 0x00000004; } result.delay_ = delay_; if (((from_bitField0_ & 0x00000008) == 0x00000008)) { to_bitField0_ |= 0x00000008; } result.period_ = period_; if (((from_bitField0_ & 0x00000010) == 0x00000010)) { to_bitField0_ |= 0x00000010; } result.processInstanceId_ = processInstanceId_; if (((from_bitField0_ & 0x00000020) == 0x00000020)) { to_bitField0_ |= 0x00000020; } result.activatedTime_ = activatedTime_; if (((from_bitField0_ & 0x00000040) == 0x00000040)) { to_bitField0_ |= 0x00000040; } result.lastTriggered_ = lastTriggered_; if (((from_bitField0_ & 0x00000080) == 0x00000080)) { to_bitField0_ |= 0x00000080; } result.dEPRECATEDSessionId_ = dEPRECATEDSessionId_; if (((from_bitField0_ & 0x00000100) == 0x00000100)) { to_bitField0_ |= 0x00000100; } result.sessionId_ = sessionId_; if (((from_bitField0_ & 0x00000200) == 0x00000200)) { to_bitField0_ |= 0x00000200; } result.repeatLimit_ = repeatLimit_; if (((from_bitField0_ & 0x00000400) == 0x00000400)) { to_bitField0_ |= 0x00000400; } result.name_ = name_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance) { return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance other) { if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance()) return this; if (other.hasId()) { setId(other.getId()); } if (other.hasTimerId()) { setTimerId(other.getTimerId()); } if (other.hasDelay()) { setDelay(other.getDelay()); } if (other.hasPeriod()) { setPeriod(other.getPeriod()); } if (other.hasProcessInstanceId()) { setProcessInstanceId(other.getProcessInstanceId()); } if (other.hasActivatedTime()) { setActivatedTime(other.getActivatedTime()); } if (other.hasLastTriggered()) { setLastTriggered(other.getLastTriggered()); } if (other.hasDEPRECATEDSessionId()) { setDEPRECATEDSessionId(other.getDEPRECATEDSessionId()); } if (other.hasSessionId()) { setSessionId(other.getSessionId()); } if (other.hasRepeatLimit()) { setRepeatLimit(other.getRepeatLimit()); } if (other.hasName()) { bitField0_ |= 0x00000400; name_ = other.name_; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private long id_ ; /** * optional int64 id = 1; */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional int64 id = 1; */ public long getId() { return id_; } /** * optional int64 id = 1; */ public Builder setId(long value) { bitField0_ |= 0x00000001; id_ = value; onChanged(); return this; } /** * optional int64 id = 1; */ public Builder clearId() { bitField0_ = (bitField0_ & ~0x00000001); id_ = 0L; onChanged(); return this; } private long timerId_ ; /** * optional int64 timer_id = 2; */ public boolean hasTimerId() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int64 timer_id = 2; */ public long getTimerId() { return timerId_; } /** * optional int64 timer_id = 2; */ public Builder setTimerId(long value) { bitField0_ |= 0x00000002; timerId_ = value; onChanged(); return this; } /** * optional int64 timer_id = 2; */ public Builder clearTimerId() { bitField0_ = (bitField0_ & ~0x00000002); timerId_ = 0L; onChanged(); return this; } private long delay_ ; /** * optional int64 delay = 3; */ public boolean hasDelay() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional int64 delay = 3; */ public long getDelay() { return delay_; } /** * optional int64 delay = 3; */ public Builder setDelay(long value) { bitField0_ |= 0x00000004; delay_ = value; onChanged(); return this; } /** * optional int64 delay = 3; */ public Builder clearDelay() { bitField0_ = (bitField0_ & ~0x00000004); delay_ = 0L; onChanged(); return this; } private long period_ ; /** * optional int64 period = 4; */ public boolean hasPeriod() { return ((bitField0_ & 0x00000008) == 0x00000008); } /** * optional int64 period = 4; */ public long getPeriod() { return period_; } /** * optional int64 period = 4; */ public Builder setPeriod(long value) { bitField0_ |= 0x00000008; period_ = value; onChanged(); return this; } /** * optional int64 period = 4; */ public Builder clearPeriod() { bitField0_ = (bitField0_ & ~0x00000008); period_ = 0L; onChanged(); return this; } private long processInstanceId_ ; /** * optional int64 process_instance_id = 5; */ public boolean hasProcessInstanceId() { return ((bitField0_ & 0x00000010) == 0x00000010); } /** * optional int64 process_instance_id = 5; */ public long getProcessInstanceId() { return processInstanceId_; } /** * optional int64 process_instance_id = 5; */ public Builder setProcessInstanceId(long value) { bitField0_ |= 0x00000010; processInstanceId_ = value; onChanged(); return this; } /** * optional int64 process_instance_id = 5; */ public Builder clearProcessInstanceId() { bitField0_ = (bitField0_ & ~0x00000010); processInstanceId_ = 0L; onChanged(); return this; } private long activatedTime_ ; /** * optional int64 activated_time = 6; */ public boolean hasActivatedTime() { return ((bitField0_ & 0x00000020) == 0x00000020); } /** * optional int64 activated_time = 6; */ public long getActivatedTime() { return activatedTime_; } /** * optional int64 activated_time = 6; */ public Builder setActivatedTime(long value) { bitField0_ |= 0x00000020; activatedTime_ = value; onChanged(); return this; } /** * optional int64 activated_time = 6; */ public Builder clearActivatedTime() { bitField0_ = (bitField0_ & ~0x00000020); activatedTime_ = 0L; onChanged(); return this; } private long lastTriggered_ ; /** * optional int64 last_triggered = 7; */ public boolean hasLastTriggered() { return ((bitField0_ & 0x00000040) == 0x00000040); } /** * optional int64 last_triggered = 7; */ public long getLastTriggered() { return lastTriggered_; } /** * optional int64 last_triggered = 7; */ public Builder setLastTriggered(long value) { bitField0_ |= 0x00000040; lastTriggered_ = value; onChanged(); return this; } /** * optional int64 last_triggered = 7; */ public Builder clearLastTriggered() { bitField0_ = (bitField0_ & ~0x00000040); lastTriggered_ = 0L; onChanged(); return this; } private int dEPRECATEDSessionId_ ; /** * optional int32 DEPRECATED_sessionId = 8; */ public boolean hasDEPRECATEDSessionId() { return ((bitField0_ & 0x00000080) == 0x00000080); } /** * optional int32 DEPRECATED_sessionId = 8; */ public int getDEPRECATEDSessionId() { return dEPRECATEDSessionId_; } /** * optional int32 DEPRECATED_sessionId = 8; */ public Builder setDEPRECATEDSessionId(int value) { bitField0_ |= 0x00000080; dEPRECATEDSessionId_ = value; onChanged(); return this; } /** * optional int32 DEPRECATED_sessionId = 8; */ public Builder clearDEPRECATEDSessionId() { bitField0_ = (bitField0_ & ~0x00000080); dEPRECATEDSessionId_ = 0; onChanged(); return this; } private long sessionId_ ; /** * optional int64 sessionId = 9; */ public boolean hasSessionId() { return ((bitField0_ & 0x00000100) == 0x00000100); } /** * optional int64 sessionId = 9; */ public long getSessionId() { return sessionId_; } /** * optional int64 sessionId = 9; */ public Builder setSessionId(long value) { bitField0_ |= 0x00000100; sessionId_ = value; onChanged(); return this; } /** * optional int64 sessionId = 9; */ public Builder clearSessionId() { bitField0_ = (bitField0_ & ~0x00000100); sessionId_ = 0L; onChanged(); return this; } private int repeatLimit_ ; /** * optional int32 repeatLimit = 10; */ public boolean hasRepeatLimit() { return ((bitField0_ & 0x00000200) == 0x00000200); } /** * optional int32 repeatLimit = 10; */ public int getRepeatLimit() { return repeatLimit_; } /** * optional int32 repeatLimit = 10; */ public Builder setRepeatLimit(int value) { bitField0_ |= 0x00000200; repeatLimit_ = value; onChanged(); return this; } /** * optional int32 repeatLimit = 10; */ public Builder clearRepeatLimit() { bitField0_ = (bitField0_ & ~0x00000200); repeatLimit_ = 0; onChanged(); return this; } private java.lang.Object name_ = ""; /** * optional string name = 11; */ public boolean hasName() { return ((bitField0_ & 0x00000400) == 0x00000400); } /** * optional string name = 11; */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { name_ = s; } return s; } else { return (java.lang.String) ref; } } /** * optional string name = 11; */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * optional string name = 11; */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000400; name_ = value; onChanged(); return this; } /** * optional string name = 11; */ public Builder clearName() { bitField0_ = (bitField0_ & ~0x00000400); name_ = getDefaultInstance().getName(); onChanged(); return this; } /** * optional string name = 11; */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000400; name_ = value; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessTimer.TimerInstance) } static { defaultInstance = new TimerInstance(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessTimer.TimerInstance) } private int bitField0_; public static final int TIMER_FIELD_NUMBER = 1; private org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance timer_; /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public boolean hasTimer() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance getTimer() { return timer_; } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder getTimerOrBuilder() { return timer_; } public static final int TRIGGER_FIELD_NUMBER = 2; private org.drools.serialization.protobuf.ProtobufMessages.Trigger trigger_; /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public boolean hasTrigger() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public org.drools.serialization.protobuf.ProtobufMessages.Trigger getTrigger() { return trigger_; } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public org.drools.serialization.protobuf.ProtobufMessages.TriggerOrBuilder getTriggerOrBuilder() { return trigger_; } private void initFields() { timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance(); trigger_ = org.drools.serialization.protobuf.ProtobufMessages.Trigger.getDefaultInstance(); } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeMessage(1, timer_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeMessage(2, trigger_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, timer_); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, trigger_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code org.jbpm.marshalling.ProcessTimer} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.ProcessTimer) org.jbpm.marshalling.impl.JBPMMessages.ProcessTimerOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.Builder.class); } // Construct using org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getTimerFieldBuilder(); getTriggerFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); if (timerBuilder_ == null) { timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance(); } else { timerBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000001); if (triggerBuilder_ == null) { trigger_ = org.drools.serialization.protobuf.ProtobufMessages.Trigger.getDefaultInstance(); } else { triggerBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000002); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_ProcessTimer_descriptor; } public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer getDefaultInstanceForType() { return org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.getDefaultInstance(); } public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer build() { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer buildPartial() { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer result = new org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } if (timerBuilder_ == null) { result.timer_ = timer_; } else { result.timer_ = timerBuilder_.build(); } if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } if (triggerBuilder_ == null) { result.trigger_ = trigger_; } else { result.trigger_ = triggerBuilder_.build(); } result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer) { return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer other) { if (other == org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.getDefaultInstance()) return this; if (other.hasTimer()) { mergeTimer(other.getTimer()); } if (other.hasTrigger()) { mergeTrigger(other.getTrigger()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder> timerBuilder_; /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public boolean hasTimer() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance getTimer() { if (timerBuilder_ == null) { return timer_; } else { return timerBuilder_.getMessage(); } } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public Builder setTimer(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance value) { if (timerBuilder_ == null) { if (value == null) { throw new NullPointerException(); } timer_ = value; onChanged(); } else { timerBuilder_.setMessage(value); } bitField0_ |= 0x00000001; return this; } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public Builder setTimer( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder builderForValue) { if (timerBuilder_ == null) { timer_ = builderForValue.build(); onChanged(); } else { timerBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000001; return this; } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public Builder mergeTimer(org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance value) { if (timerBuilder_ == null) { if (((bitField0_ & 0x00000001) == 0x00000001) && timer_ != org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance()) { timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.newBuilder(timer_).mergeFrom(value).buildPartial(); } else { timer_ = value; } onChanged(); } else { timerBuilder_.mergeFrom(value); } bitField0_ |= 0x00000001; return this; } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public Builder clearTimer() { if (timerBuilder_ == null) { timer_ = org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.getDefaultInstance(); onChanged(); } else { timerBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000001); return this; } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder getTimerBuilder() { bitField0_ |= 0x00000001; onChanged(); return getTimerFieldBuilder().getBuilder(); } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder getTimerOrBuilder() { if (timerBuilder_ != null) { return timerBuilder_.getMessageOrBuilder(); } else { return timer_; } } /** * optional .org.jbpm.marshalling.ProcessTimer.TimerInstance timer = 1; */ private com.google.protobuf.SingleFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder> getTimerFieldBuilder() { if (timerBuilder_ == null) { timerBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstance.Builder, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.TimerInstanceOrBuilder>( getTimer(), getParentForChildren(), isClean()); timer_ = null; } return timerBuilder_; } private org.drools.serialization.protobuf.ProtobufMessages.Trigger trigger_ = org.drools.serialization.protobuf.ProtobufMessages.Trigger.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.drools.serialization.protobuf.ProtobufMessages.Trigger, org.drools.serialization.protobuf.ProtobufMessages.Trigger.Builder, org.drools.serialization.protobuf.ProtobufMessages.TriggerOrBuilder> triggerBuilder_; /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public boolean hasTrigger() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public org.drools.serialization.protobuf.ProtobufMessages.Trigger getTrigger() { if (triggerBuilder_ == null) { return trigger_; } else { return triggerBuilder_.getMessage(); } } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public Builder setTrigger(org.drools.serialization.protobuf.ProtobufMessages.Trigger value) { if (triggerBuilder_ == null) { if (value == null) { throw new NullPointerException(); } trigger_ = value; onChanged(); } else { triggerBuilder_.setMessage(value); } bitField0_ |= 0x00000002; return this; } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public Builder setTrigger( org.drools.serialization.protobuf.ProtobufMessages.Trigger.Builder builderForValue) { if (triggerBuilder_ == null) { trigger_ = builderForValue.build(); onChanged(); } else { triggerBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000002; return this; } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public Builder mergeTrigger(org.drools.serialization.protobuf.ProtobufMessages.Trigger value) { if (triggerBuilder_ == null) { if (((bitField0_ & 0x00000002) == 0x00000002) && trigger_ != org.drools.serialization.protobuf.ProtobufMessages.Trigger.getDefaultInstance()) { trigger_ = org.drools.serialization.protobuf.ProtobufMessages.Trigger.newBuilder(trigger_).mergeFrom(value).buildPartial(); } else { trigger_ = value; } onChanged(); } else { triggerBuilder_.mergeFrom(value); } bitField0_ |= 0x00000002; return this; } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public Builder clearTrigger() { if (triggerBuilder_ == null) { trigger_ = org.drools.serialization.protobuf.ProtobufMessages.Trigger.getDefaultInstance(); onChanged(); } else { triggerBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000002); return this; } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public org.drools.serialization.protobuf.ProtobufMessages.Trigger.Builder getTriggerBuilder() { bitField0_ |= 0x00000002; onChanged(); return getTriggerFieldBuilder().getBuilder(); } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ public org.drools.serialization.protobuf.ProtobufMessages.TriggerOrBuilder getTriggerOrBuilder() { if (triggerBuilder_ != null) { return triggerBuilder_.getMessageOrBuilder(); } else { return trigger_; } } /** * optional .org.drools.serialization.protobuf.Trigger trigger = 2; */ private com.google.protobuf.SingleFieldBuilder< org.drools.serialization.protobuf.ProtobufMessages.Trigger, org.drools.serialization.protobuf.ProtobufMessages.Trigger.Builder, org.drools.serialization.protobuf.ProtobufMessages.TriggerOrBuilder> getTriggerFieldBuilder() { if (triggerBuilder_ == null) { triggerBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.drools.serialization.protobuf.ProtobufMessages.Trigger, org.drools.serialization.protobuf.ProtobufMessages.Trigger.Builder, org.drools.serialization.protobuf.ProtobufMessages.TriggerOrBuilder>( getTrigger(), getParentForChildren(), isClean()); trigger_ = null; } return triggerBuilder_; } // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.ProcessTimer) } static { defaultInstance = new ProcessTimer(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.ProcessTimer) } public interface IterationLevelOrBuilder extends // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.IterationLevel) com.google.protobuf.MessageOrBuilder { /** * optional string id = 1; */ boolean hasId(); /** * optional string id = 1; */ java.lang.String getId(); /** * optional string id = 1; */ com.google.protobuf.ByteString getIdBytes(); /** * optional int32 level = 2; */ boolean hasLevel(); /** * optional int32 level = 2; */ int getLevel(); } /** * Protobuf type {@code org.jbpm.marshalling.IterationLevel} */ public static final class IterationLevel extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.IterationLevel) IterationLevelOrBuilder { // Use IterationLevel.newBuilder() to construct. private IterationLevel(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private IterationLevel(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final IterationLevel defaultInstance; public static IterationLevel getDefaultInstance() { return defaultInstance; } public IterationLevel getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private IterationLevel( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { com.google.protobuf.ByteString bs = input.readBytes(); bitField0_ |= 0x00000001; id_ = bs; break; } case 16: { bitField0_ |= 0x00000002; level_ = input.readInt32(); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_IterationLevel_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_IterationLevel_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.class, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder.class); } public static com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { public IterationLevel parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new IterationLevel(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } private int bitField0_; public static final int ID_FIELD_NUMBER = 1; private java.lang.Object id_; /** * optional string id = 1; */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional string id = 1; */ public java.lang.String getId() { java.lang.Object ref = id_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { id_ = s; } return s; } } /** * optional string id = 1; */ public com.google.protobuf.ByteString getIdBytes() { java.lang.Object ref = id_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); id_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int LEVEL_FIELD_NUMBER = 2; private int level_; /** * optional int32 level = 2; */ public boolean hasLevel() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int32 level = 2; */ public int getLevel() { return level_; } private void initFields() { id_ = ""; level_ = 0; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (((bitField0_ & 0x00000001) == 0x00000001)) { output.writeBytes(1, getIdBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { output.writeInt32(2, level_); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getIdBytes()); } if (((bitField0_ & 0x00000002) == 0x00000002)) { size += com.google.protobuf.CodedOutputStream .computeInt32Size(2, level_); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code org.jbpm.marshalling.IterationLevel} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.IterationLevel) org.jbpm.marshalling.impl.JBPMMessages.IterationLevelOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_IterationLevel_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_IterationLevel_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.class, org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.Builder.class); } // Construct using org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); id_ = ""; bitField0_ = (bitField0_ & ~0x00000001); level_ = 0; bitField0_ = (bitField0_ & ~0x00000002); return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_IterationLevel_descriptor; } public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel getDefaultInstanceForType() { return org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance(); } public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel build() { org.jbpm.marshalling.impl.JBPMMessages.IterationLevel result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.jbpm.marshalling.impl.JBPMMessages.IterationLevel buildPartial() { org.jbpm.marshalling.impl.JBPMMessages.IterationLevel result = new org.jbpm.marshalling.impl.JBPMMessages.IterationLevel(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) == 0x00000001)) { to_bitField0_ |= 0x00000001; } result.id_ = id_; if (((from_bitField0_ & 0x00000002) == 0x00000002)) { to_bitField0_ |= 0x00000002; } result.level_ = level_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.IterationLevel) { return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.IterationLevel)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.IterationLevel other) { if (other == org.jbpm.marshalling.impl.JBPMMessages.IterationLevel.getDefaultInstance()) return this; if (other.hasId()) { bitField0_ |= 0x00000001; id_ = other.id_; onChanged(); } if (other.hasLevel()) { setLevel(other.getLevel()); } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.jbpm.marshalling.impl.JBPMMessages.IterationLevel parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.IterationLevel) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object id_ = ""; /** * optional string id = 1; */ public boolean hasId() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** * optional string id = 1; */ public java.lang.String getId() { java.lang.Object ref = id_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (bs.isValidUtf8()) { id_ = s; } return s; } else { return (java.lang.String) ref; } } /** * optional string id = 1; */ public com.google.protobuf.ByteString getIdBytes() { java.lang.Object ref = id_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); id_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * optional string id = 1; */ public Builder setId( java.lang.String value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; id_ = value; onChanged(); return this; } /** * optional string id = 1; */ public Builder clearId() { bitField0_ = (bitField0_ & ~0x00000001); id_ = getDefaultInstance().getId(); onChanged(); return this; } /** * optional string id = 1; */ public Builder setIdBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000001; id_ = value; onChanged(); return this; } private int level_ ; /** * optional int32 level = 2; */ public boolean hasLevel() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** * optional int32 level = 2; */ public int getLevel() { return level_; } /** * optional int32 level = 2; */ public Builder setLevel(int value) { bitField0_ |= 0x00000002; level_ = value; onChanged(); return this; } /** * optional int32 level = 2; */ public Builder clearLevel() { bitField0_ = (bitField0_ & ~0x00000002); level_ = 0; onChanged(); return this; } // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.IterationLevel) } static { defaultInstance = new IterationLevel(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.IterationLevel) } public interface VariableContainerOrBuilder extends // @@protoc_insertion_point(interface_extends:org.jbpm.marshalling.VariableContainer) com.google.protobuf.MessageOrBuilder { /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ java.util.List getVariableList(); /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index); /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ int getVariableCount(); /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ java.util.List getVariableOrBuilderList(); /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder( int index); } /** * Protobuf type {@code org.jbpm.marshalling.VariableContainer} */ public static final class VariableContainer extends com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:org.jbpm.marshalling.VariableContainer) VariableContainerOrBuilder { // Use VariableContainer.newBuilder() to construct. private VariableContainer(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); this.unknownFields = builder.getUnknownFields(); } private VariableContainer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); } private static final VariableContainer defaultInstance; public static VariableContainer getDefaultInstance() { return defaultInstance; } public VariableContainer getDefaultInstanceForType() { return defaultInstance; } private final com.google.protobuf.UnknownFieldSet unknownFields; @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private VariableContainer( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { initFields(); int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { done = true; } break; } case 10: { if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) { variable_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000001; } variable_.add(input.readMessage(org.jbpm.marshalling.impl.JBPMMessages.Variable.PARSER, extensionRegistry)); break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e.getMessage()).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) { variable_ = java.util.Collections.unmodifiableList(variable_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_VariableContainer_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_VariableContainer_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.class, org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.Builder.class); } public static com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { public VariableContainer parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new VariableContainer(input, extensionRegistry); } }; @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } public static final int VARIABLE_FIELD_NUMBER = 1; private java.util.List variable_; /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public java.util.List getVariableList() { return variable_; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public java.util.List getVariableOrBuilderList() { return variable_; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public int getVariableCount() { return variable_.size(); } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) { return variable_.get(index); } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder( int index) { return variable_.get(index); } private void initFields() { variable_ = java.util.Collections.emptyList(); } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); for (int i = 0; i < variable_.size(); i++) { output.writeMessage(1, variable_.get(i)); } getUnknownFields().writeTo(output); } private int memoizedSerializedSize = -1; public int getSerializedSize() { int size = memoizedSerializedSize; if (size != -1) return size; size = 0; for (int i = 0; i < variable_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, variable_.get(i)); } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; } private static final long serialVersionUID = 0L; @java.lang.Override protected java.lang.Object writeReplace() throws java.io.ObjectStreamException { return super.writeReplace(); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return PARSER.parseDelimitedFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseDelimitedFrom(input, extensionRegistry); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return PARSER.parseFrom(input); } public static org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return PARSER.parseFrom(input, extensionRegistry); } public static Builder newBuilder() { return Builder.create(); } public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(org.jbpm.marshalling.impl.JBPMMessages.VariableContainer prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code org.jbpm.marshalling.VariableContainer} */ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:org.jbpm.marshalling.VariableContainer) org.jbpm.marshalling.impl.JBPMMessages.VariableContainerOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_VariableContainer_descriptor; } protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_VariableContainer_fieldAccessorTable .ensureFieldAccessorsInitialized( org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.class, org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.Builder.class); } // Construct using org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { getVariableFieldBuilder(); } } private static Builder create() { return new Builder(); } public Builder clear() { super.clear(); if (variableBuilder_ == null) { variable_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { variableBuilder_.clear(); } return this; } public Builder clone() { return create().mergeFrom(buildPartial()); } public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.jbpm.marshalling.impl.JBPMMessages.internal_static_org_jbpm_marshalling_VariableContainer_descriptor; } public org.jbpm.marshalling.impl.JBPMMessages.VariableContainer getDefaultInstanceForType() { return org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.getDefaultInstance(); } public org.jbpm.marshalling.impl.JBPMMessages.VariableContainer build() { org.jbpm.marshalling.impl.JBPMMessages.VariableContainer result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } public org.jbpm.marshalling.impl.JBPMMessages.VariableContainer buildPartial() { org.jbpm.marshalling.impl.JBPMMessages.VariableContainer result = new org.jbpm.marshalling.impl.JBPMMessages.VariableContainer(this); int from_bitField0_ = bitField0_; if (variableBuilder_ == null) { if (((bitField0_ & 0x00000001) == 0x00000001)) { variable_ = java.util.Collections.unmodifiableList(variable_); bitField0_ = (bitField0_ & ~0x00000001); } result.variable_ = variable_; } else { result.variable_ = variableBuilder_.build(); } onBuilt(); return result; } public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.jbpm.marshalling.impl.JBPMMessages.VariableContainer) { return mergeFrom((org.jbpm.marshalling.impl.JBPMMessages.VariableContainer)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.jbpm.marshalling.impl.JBPMMessages.VariableContainer other) { if (other == org.jbpm.marshalling.impl.JBPMMessages.VariableContainer.getDefaultInstance()) return this; if (variableBuilder_ == null) { if (!other.variable_.isEmpty()) { if (variable_.isEmpty()) { variable_ = other.variable_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureVariableIsMutable(); variable_.addAll(other.variable_); } onChanged(); } } else { if (!other.variable_.isEmpty()) { if (variableBuilder_.isEmpty()) { variableBuilder_.dispose(); variableBuilder_ = null; variable_ = other.variable_; bitField0_ = (bitField0_ & ~0x00000001); variableBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getVariableFieldBuilder() : null; } else { variableBuilder_.addAllMessages(other.variable_); } } } this.mergeUnknownFields(other.getUnknownFields()); return this; } public final boolean isInitialized() { return true; } public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.jbpm.marshalling.impl.JBPMMessages.VariableContainer parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.jbpm.marshalling.impl.JBPMMessages.VariableContainer) e.getUnfinishedMessage(); throw e; } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.util.List variable_ = java.util.Collections.emptyList(); private void ensureVariableIsMutable() { if (!((bitField0_ & 0x00000001) == 0x00000001)) { variable_ = new java.util.ArrayList(variable_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> variableBuilder_; /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public java.util.List getVariableList() { if (variableBuilder_ == null) { return java.util.Collections.unmodifiableList(variable_); } else { return variableBuilder_.getMessageList(); } } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public int getVariableCount() { if (variableBuilder_ == null) { return variable_.size(); } else { return variableBuilder_.getCount(); } } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable getVariable(int index) { if (variableBuilder_ == null) { return variable_.get(index); } else { return variableBuilder_.getMessage(index); } } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder setVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) { if (variableBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureVariableIsMutable(); variable_.set(index, value); onChanged(); } else { variableBuilder_.setMessage(index, value); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder setVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.set(index, builderForValue.build()); onChanged(); } else { variableBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder addVariable(org.jbpm.marshalling.impl.JBPMMessages.Variable value) { if (variableBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureVariableIsMutable(); variable_.add(value); onChanged(); } else { variableBuilder_.addMessage(value); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder addVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable value) { if (variableBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureVariableIsMutable(); variable_.add(index, value); onChanged(); } else { variableBuilder_.addMessage(index, value); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder addVariable( org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.add(builderForValue.build()); onChanged(); } else { variableBuilder_.addMessage(builderForValue.build()); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder addVariable( int index, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder builderForValue) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.add(index, builderForValue.build()); onChanged(); } else { variableBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder addAllVariable( java.lang.Iterable values) { if (variableBuilder_ == null) { ensureVariableIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, variable_); onChanged(); } else { variableBuilder_.addAllMessages(values); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder clearVariable() { if (variableBuilder_ == null) { variable_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { variableBuilder_.clear(); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public Builder removeVariable(int index) { if (variableBuilder_ == null) { ensureVariableIsMutable(); variable_.remove(index); onChanged(); } else { variableBuilder_.remove(index); } return this; } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder getVariableBuilder( int index) { return getVariableFieldBuilder().getBuilder(index); } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder getVariableOrBuilder( int index) { if (variableBuilder_ == null) { return variable_.get(index); } else { return variableBuilder_.getMessageOrBuilder(index); } } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public java.util.List getVariableOrBuilderList() { if (variableBuilder_ != null) { return variableBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(variable_); } } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder() { return getVariableFieldBuilder().addBuilder( org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance()); } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder addVariableBuilder( int index) { return getVariableFieldBuilder().addBuilder( index, org.jbpm.marshalling.impl.JBPMMessages.Variable.getDefaultInstance()); } /** * repeated .org.jbpm.marshalling.Variable variable = 1; */ public java.util.List getVariableBuilderList() { return getVariableFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder> getVariableFieldBuilder() { if (variableBuilder_ == null) { variableBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.jbpm.marshalling.impl.JBPMMessages.Variable, org.jbpm.marshalling.impl.JBPMMessages.Variable.Builder, org.jbpm.marshalling.impl.JBPMMessages.VariableOrBuilder>( variable_, ((bitField0_ & 0x00000001) == 0x00000001), getParentForChildren(), isClean()); variable_ = null; } return variableBuilder_; } // @@protoc_insertion_point(builder_scope:org.jbpm.marshalling.VariableContainer) } static { defaultInstance = new VariableContainer(true); defaultInstance.initFields(); } // @@protoc_insertion_point(class_scope:org.jbpm.marshalling.VariableContainer) } public static final int PROCESS_INSTANCE_FIELD_NUMBER = 10; /** * extend .org.drools.serialization.protobuf.ProcessData { ... } */ public static final com.google.protobuf.GeneratedMessage.GeneratedExtension< org.drools.serialization.protobuf.ProtobufMessages.ProcessData, java.util.List> processInstance = com.google.protobuf.GeneratedMessage .newFileScopedGeneratedExtension( org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessInstance.getDefaultInstance()); public static final int WORK_ITEM_FIELD_NUMBER = 11; /** * extend .org.drools.serialization.protobuf.ProcessData { ... } */ public static final com.google.protobuf.GeneratedMessage.GeneratedExtension< org.drools.serialization.protobuf.ProtobufMessages.ProcessData, java.util.List> workItem = com.google.protobuf.GeneratedMessage .newFileScopedGeneratedExtension( org.jbpm.marshalling.impl.JBPMMessages.WorkItem.class, org.jbpm.marshalling.impl.JBPMMessages.WorkItem.getDefaultInstance()); public static final int TIMER_ID_FIELD_NUMBER = 13; /** * extend .org.drools.serialization.protobuf.ProcessData { ... } */ public static final com.google.protobuf.GeneratedMessage.GeneratedExtension< org.drools.serialization.protobuf.ProtobufMessages.ProcessData, java.lang.Long> timerId = com.google.protobuf.GeneratedMessage .newFileScopedGeneratedExtension( java.lang.Long.class, null); public static final int PROCESS_TIMER_FIELD_NUMBER = 12; /** * extend .org.drools.serialization.protobuf.ProcessData { ... } */ public static final com.google.protobuf.GeneratedMessage.GeneratedExtension< org.drools.serialization.protobuf.ProtobufMessages.ProcessData, java.util.List> processTimer = com.google.protobuf.GeneratedMessage .newFileScopedGeneratedExtension( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.getDefaultInstance()); public static final int PROC_TIMER_FIELD_NUMBER = 100; /** * extend .org.drools.serialization.protobuf.Timers.Timer { ... } */ public static final com.google.protobuf.GeneratedMessage.GeneratedExtension< org.drools.serialization.protobuf.ProtobufMessages.Timers.Timer, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer> procTimer = com.google.protobuf.GeneratedMessage .newFileScopedGeneratedExtension( org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.class, org.jbpm.marshalling.impl.JBPMMessages.ProcessTimer.getDefaultInstance()); private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_Variable_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_Variable_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_WorkItem_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_WorkItem_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessTimer_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessTimer_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_IterationLevel_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_IterationLevel_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jbpm_marshalling_VariableContainer_descriptor; private static com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_org_jbpm_marshalling_VariableContainer_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; } private static com.google.protobuf.Descriptors.FileDescriptor descriptor; static { java.lang.String[] descriptorData = { "\n\'org/jbpm/marshalling/jbpmmessages.prot" + "o\022\024org.jbpm.marshalling\0326org/drools/seri" + "alization/protobuf/droolsmessages.proto\"" + "\225\037\n\017ProcessInstance\022\024\n\014process_type\030\001 \001(" + "\t\022\n\n\002id\030\002 \001(\003\022\022\n\nprocess_id\030\003 \001(\t\022\r\n\005sta" + "te\030\004 \001(\005\022\035\n\025node_instance_counter\030\005 \001(\003\022" + "\023\n\013process_xml\030\013 \001(\t\022\"\n\032parent_process_i" + "nstance_id\030\014 \001(\003\022\023\n\013description\030\017 \001(\t\022\037\n" + "\021signal_completion\030\020 \001(\010:\004true\022\024\n\014deploy" + "mentId\030\021 \001(\t\022\027\n\017correlation_key\030\022 \001(\t\022\024\n", "\014sla_timer_id\030\023 \001(\003\022\024\n\014sla_due_date\030\024 \001(" + "\003\022\026\n\016sla_compliance\030\025 \001(\005\022W\n\020swimlane_co" + "ntext\030\006 \003(\0132=.org.jbpm.marshalling.Proce" + "ssInstance.SwimlaneContextInstance\022I\n\rno" + "de_instance\030\007 \003(\01322.org.jbpm.marshalling" + ".ProcessInstance.NodeInstance\0220\n\010variabl" + "e\030\010 \003(\0132\036.org.jbpm.marshalling.Variable\022" + "U\n\017exclusive_group\030\n \003(\0132<.org.jbpm.mars" + "halling.ProcessInstance.ExclusiveGroupIn" + "stance\022\030\n\020completedNodeIds\030\r \003(\t\022=\n\017iter", "ationLevels\030\016 \003(\0132$.org.jbpm.marshalling" + ".IterationLevel\032=\n\027SwimlaneContextInstan" + "ce\022\020\n\010swimlane\030\001 \001(\t\022\020\n\010actor_id\030\002 \001(\t\032\312" + "\001\n\014NodeInstance\022\n\n\002id\030\001 \001(\003\022\017\n\007node_id\030\002" + " \001(\003\022J\n\007content\030\004 \001(\01329.org.jbpm.marshal" + "ling.ProcessInstance.NodeInstanceContent" + "\022\r\n\005level\030\005 \001(\005\022\024\n\014sla_timer_id\030\006 \001(\003\022\024\n" + "\014sla_due_date\030\007 \001(\003\022\026\n\016sla_compliance\030\010 " + "\001(\005\0328\n\026ExclusiveGroupInstance\022\036\n\026group_n" + "ode_instance_id\030\001 \003(\003\032\304\024\n\023NodeInstanceCo", "ntent\022D\n\004type\030\001 \001(\01626.org.jbpm.marshalli" + "ng.ProcessInstance.NodeInstanceType\022W\n\010r" + "ule_set\030\002 \001(\0132E.org.jbpm.marshalling.Pro" + "cessInstance.NodeInstanceContent.RuleSet" + "Node\022[\n\nhuman_task\030\003 \001(\0132G.org.jbpm.mars" + "halling.ProcessInstance.NodeInstanceCont" + "ent.HumanTaskNode\022Y\n\twork_item\030\004 \001(\0132F.o" + "rg.jbpm.marshalling.ProcessInstance.Node" + "InstanceContent.WorkItemNode\022]\n\013sub_proc" + "ess\030\005 \001(\0132H.org.jbpm.marshalling.Process", "Instance.NodeInstanceContent.SubProcessN" + "ode\022Z\n\tmilestone\030\006 \001(\0132G.org.jbpm.marsha" + "lling.ProcessInstance.NodeInstanceConten" + "t.MilestoneNode\022R\n\005event\030\007 \001(\0132C.org.jbp" + "m.marshalling.ProcessInstance.NodeInstan" + "ceContent.EventNode\022R\n\005timer\030\010 \001(\0132C.org" + ".jbpm.marshalling.ProcessInstance.NodeIn" + "stanceContent.TimerNode\022P\n\004join\030\t \001(\0132B." + "org.jbpm.marshalling.ProcessInstance.Nod" + "eInstanceContent.JoinNode\022R\n\005state\030\n \001(\013", "2C.org.jbpm.marshalling.ProcessInstance." + "NodeInstanceContent.StateNode\022a\n\tcomposi" + "te\030\013 \001(\0132N.org.jbpm.marshalling.ProcessI" + "nstance.NodeInstanceContent.CompositeCon" + "textNode\022W\n\010for_each\030\014 \001(\0132E.org.jbpm.ma" + "rshalling.ProcessInstance.NodeInstanceCo" + "ntent.ForEachNode\022]\n\013async_event\030\r \001(\0132H" + ".org.jbpm.marshalling.ProcessInstance.No" + "deInstanceContent.AsyncEventNode\032\324\001\n\013Rul" + "eSetNode\022\031\n\021timer_instance_id\030\001 \003(\003\022d\n\010m", "apEntry\030\002 \003(\0132R.org.jbpm.marshalling.Pro" + "cessInstance.NodeInstanceContent.RuleSet" + "Node.TextMapEntry\022\027\n\017rule_flow_group\030\003 \001" + "(\t\032+\n\014TextMapEntry\022\014\n\004name\030\001 \001(\t\022\r\n\005valu" + "e\030\002 \001(\t\032\224\001\n\rHumanTaskNode\022\024\n\014work_item_i" + "d\030\001 \001(\003\022\031\n\021timer_instance_id\030\002 \003(\003\022*\n\"er" + "ror_handling_process_instance_id\030\003 \001(\003\022&" + "\n\036timer_instance_id_suspendUntil\030\004 \001(\003\032k" + "\n\014WorkItemNode\022\024\n\014work_item_id\030\001 \001(\003\022\031\n\021" + "timer_instance_id\030\002 \003(\003\022*\n\"error_handlin", "g_process_instance_id\030\003 \001(\003\032H\n\016SubProces" + "sNode\022\033\n\023process_instance_id\030\001 \001(\003\022\031\n\021ti" + "mer_instance_id\030\002 \003(\003\032*\n\rMilestoneNode\022\031" + "\n\021timer_instance_id\030\001 \003(\003\032\013\n\tEventNode\032\035" + "\n\tTimerNode\022\020\n\010timer_id\030\001 \001(\003\032\234\001\n\010JoinNo" + "de\022_\n\007trigger\030\001 \003(\0132N.org.jbpm.marshalli" + "ng.ProcessInstance.NodeInstanceContent.J" + "oinNode.JoinTrigger\032/\n\013JoinTrigger\022\017\n\007no" + "de_id\030\001 \001(\003\022\017\n\007counter\030\002 \001(\005\032&\n\tStateNod" + "e\022\031\n\021timer_instance_id\030\001 \003(\003\032\304\002\n\024Composi", "teContextNode\022\031\n\021timer_instance_id\030\002 \003(\003" + "\0220\n\010variable\030\003 \003(\0132\036.org.jbpm.marshallin" + "g.Variable\022I\n\rnode_instance\030\004 \003(\01322.org." + "jbpm.marshalling.ProcessInstance.NodeIns" + "tance\022U\n\017exclusive_group\030\005 \003(\0132<.org.jbp" + "m.marshalling.ProcessInstance.ExclusiveG" + "roupInstance\022=\n\017iterationLevels\030\006 \003(\0132$." + "org.jbpm.marshalling.IterationLevel\032\200\002\n\013" + "ForEachNode\022I\n\rnode_instance\030\001 \003(\01322.org" + ".jbpm.marshalling.ProcessInstance.NodeIn", "stance\0220\n\010variable\030\002 \003(\0132\036.org.jbpm.mars" + "halling.Variable\022=\n\017iterationLevels\030\003 \003(" + "\0132$.org.jbpm.marshalling.IterationLevel\022" + "\032\n\022sequential_counter\030\004 \001(\005\022\031\n\021timer_ins" + "tance_id\030\005 \003(\003\032$\n\016AsyncEventNode\022\022\n\neven" + "t_type\030\001 \001(\t\"\250\002\n\020NodeInstanceType\022\021\n\rRUL" + "E_SET_NODE\020\000\022\023\n\017HUMAN_TASK_NODE\020\001\022\022\n\016WOR" + "K_ITEM_NODE\020\002\022\023\n\017SUBPROCESS_NODE\020\003\022\022\n\016MI" + "LESTONE_NODE\020\004\022\016\n\nEVENT_NODE\020\005\022\016\n\nTIMER_" + "NODE\020\006\022\r\n\tJOIN_NODE\020\007\022\016\n\nSTATE_NODE\020\010\022\032\n", "\026COMPOSITE_CONTEXT_NODE\020\t\022\021\n\rFOR_EACH_NO" + "DE\020\n\022\020\n\014DYNAMIC_NODE\020\013\022\031\n\025EVENT_SUBPROCE" + "SS_NODE\020\014\022\024\n\020ASYNC_EVENT_NODE\020\r\"?\n\010Varia" + "ble\022\014\n\004name\030\001 \001(\t\022\026\n\016strategy_index\030\002 \001(" + "\005\022\r\n\005value\030\003 \001(\014\"\305\001\n\010WorkItem\022\n\n\002id\030\001 \001(" + "\003\022\034\n\024process_instances_id\030\002 \001(\003\022\014\n\004name\030" + "\003 \001(\t\022\r\n\005state\030\004 \001(\005\0220\n\010variable\030\005 \003(\0132\036" + ".org.jbpm.marshalling.Variable\022\025\n\rdeploy" + "ment_id\030\006 \001(\t\022\030\n\020node_instance_id\030\007 \001(\003\022" + "\017\n\007node_id\030\010 \001(\003\"\374\002\n\014ProcessTimer\022?\n\005tim", "er\030\001 \001(\01320.org.jbpm.marshalling.ProcessT" + "imer.TimerInstance\022;\n\007trigger\030\002 \001(\0132*.or" + "g.drools.serialization.protobuf.Trigger\032" + "\355\001\n\rTimerInstance\022\n\n\002id\030\001 \001(\003\022\020\n\010timer_i" + "d\030\002 \001(\003\022\r\n\005delay\030\003 \001(\003\022\016\n\006period\030\004 \001(\003\022\033" + "\n\023process_instance_id\030\005 \001(\003\022\026\n\016activated" + "_time\030\006 \001(\003\022\026\n\016last_triggered\030\007 \001(\003\022\034\n\024D" + "EPRECATED_sessionId\030\010 \001(\005\022\021\n\tsessionId\030\t" + " \001(\003\022\023\n\013repeatLimit\030\n \001(\005\022\014\n\004name\030\013 \001(\t\"" + "+\n\016IterationLevel\022\n\n\002id\030\001 \001(\t\022\r\n\005level\030\002", " \001(\005\"E\n\021VariableContainer\0220\n\010variable\030\001 " + "\003(\0132\036.org.jbpm.marshalling.Variable:o\n\020p" + "rocess_instance\022..org.drools.serializati" + "on.protobuf.ProcessData\030\n \003(\0132%.org.jbpm" + ".marshalling.ProcessInstance:a\n\twork_ite" + "m\022..org.drools.serialization.protobuf.Pr" + "ocessData\030\013 \003(\0132\036.org.jbpm.marshalling.W" + "orkItem:@\n\010timer_id\022..org.drools.seriali" + "zation.protobuf.ProcessData\030\r \001(\003:i\n\rpro" + "cess_timer\022..org.drools.serialization.pr", "otobuf.ProcessData\030\014 \003(\0132\".org.jbpm.mars" + "halling.ProcessTimer:g\n\nproc_timer\022/.org" + ".drools.serialization.protobuf.Timers.Ti" + "mer\030d \001(\0132\".org.jbpm.marshalling.Process" + "TimerB)\n\031org.jbpm.marshalling.implB\014JBPM" + "Messages" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { public com.google.protobuf.ExtensionRegistry assignDescriptors( com.google.protobuf.Descriptors.FileDescriptor root) { descriptor = root; return null; } }; com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { org.drools.serialization.protobuf.ProtobufMessages.getDescriptor(), }, assigner); internal_static_org_jbpm_marshalling_ProcessInstance_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_org_jbpm_marshalling_ProcessInstance_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_descriptor, new java.lang.String[] { "ProcessType", "Id", "ProcessId", "State", "NodeInstanceCounter", "ProcessXml", "ParentProcessInstanceId", "Description", "SignalCompletion", "DeploymentId", "CorrelationKey", "SlaTimerId", "SlaDueDate", "SlaCompliance", "SwimlaneContext", "NodeInstance", "Variable", "ExclusiveGroup", "CompletedNodeIds", "IterationLevels", }); internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_descriptor.getNestedTypes().get(0); internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_SwimlaneContextInstance_descriptor, new java.lang.String[] { "Swimlane", "ActorId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_descriptor.getNestedTypes().get(1); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstance_descriptor, new java.lang.String[] { "Id", "NodeId", "Content", "Level", "SlaTimerId", "SlaDueDate", "SlaCompliance", }); internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_descriptor.getNestedTypes().get(2); internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_ExclusiveGroupInstance_descriptor, new java.lang.String[] { "GroupNodeInstanceId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_descriptor.getNestedTypes().get(3); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor, new java.lang.String[] { "Type", "RuleSet", "HumanTask", "WorkItem", "SubProcess", "Milestone", "Event", "Timer", "Join", "State", "Composite", "ForEach", "AsyncEvent", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(0); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor, new java.lang.String[] { "TimerInstanceId", "MapEntry", "RuleFlowGroup", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_descriptor.getNestedTypes().get(0); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_RuleSetNode_TextMapEntry_descriptor, new java.lang.String[] { "Name", "Value", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(1); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_HumanTaskNode_descriptor, new java.lang.String[] { "WorkItemId", "TimerInstanceId", "ErrorHandlingProcessInstanceId", "TimerInstanceIdSuspendUntil", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(2); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_WorkItemNode_descriptor, new java.lang.String[] { "WorkItemId", "TimerInstanceId", "ErrorHandlingProcessInstanceId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(3); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_SubProcessNode_descriptor, new java.lang.String[] { "ProcessInstanceId", "TimerInstanceId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(4); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_MilestoneNode_descriptor, new java.lang.String[] { "TimerInstanceId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(5); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_EventNode_descriptor, new java.lang.String[] { }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(6); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_TimerNode_descriptor, new java.lang.String[] { "TimerId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(7); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor, new java.lang.String[] { "Trigger", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_descriptor.getNestedTypes().get(0); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_JoinNode_JoinTrigger_descriptor, new java.lang.String[] { "NodeId", "Counter", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(8); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_StateNode_descriptor, new java.lang.String[] { "TimerInstanceId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(9); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_CompositeContextNode_descriptor, new java.lang.String[] { "TimerInstanceId", "Variable", "NodeInstance", "ExclusiveGroup", "IterationLevels", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(10); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_ForEachNode_descriptor, new java.lang.String[] { "NodeInstance", "Variable", "IterationLevels", "SequentialCounter", "TimerInstanceId", }); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_descriptor = internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_descriptor.getNestedTypes().get(11); internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessInstance_NodeInstanceContent_AsyncEventNode_descriptor, new java.lang.String[] { "EventType", }); internal_static_org_jbpm_marshalling_Variable_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_org_jbpm_marshalling_Variable_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_Variable_descriptor, new java.lang.String[] { "Name", "StrategyIndex", "Value", }); internal_static_org_jbpm_marshalling_WorkItem_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_org_jbpm_marshalling_WorkItem_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_WorkItem_descriptor, new java.lang.String[] { "Id", "ProcessInstancesId", "Name", "State", "Variable", "DeploymentId", "NodeInstanceId", "NodeId", }); internal_static_org_jbpm_marshalling_ProcessTimer_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_org_jbpm_marshalling_ProcessTimer_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessTimer_descriptor, new java.lang.String[] { "Timer", "Trigger", }); internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_descriptor = internal_static_org_jbpm_marshalling_ProcessTimer_descriptor.getNestedTypes().get(0); internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_ProcessTimer_TimerInstance_descriptor, new java.lang.String[] { "Id", "TimerId", "Delay", "Period", "ProcessInstanceId", "ActivatedTime", "LastTriggered", "DEPRECATEDSessionId", "SessionId", "RepeatLimit", "Name", }); internal_static_org_jbpm_marshalling_IterationLevel_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_org_jbpm_marshalling_IterationLevel_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_IterationLevel_descriptor, new java.lang.String[] { "Id", "Level", }); internal_static_org_jbpm_marshalling_VariableContainer_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_org_jbpm_marshalling_VariableContainer_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_org_jbpm_marshalling_VariableContainer_descriptor, new java.lang.String[] { "Variable", }); processInstance.internalInit(descriptor.getExtensions().get(0)); workItem.internalInit(descriptor.getExtensions().get(1)); timerId.internalInit(descriptor.getExtensions().get(2)); processTimer.internalInit(descriptor.getExtensions().get(3)); procTimer.internalInit(descriptor.getExtensions().get(4)); org.drools.serialization.protobuf.ProtobufMessages.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy