@Override
 public int hashCode() {
   final int prime = 31;
   int result = 1;
   result = prime * result + ((destinationHost == null) ? 0 : destinationHost.hashCode());
   result = prime * result + ((destinationRealm == null) ? 0 : destinationRealm.hashCode());
   result = prime * result + ((sessionId == null) ? 0 : sessionId.hashCode());
   result = prime * result + (terminateAfterProcessing ? 1231 : 1237);
   return result;
 }
  @Override
  public boolean equals(Object obj) {
    if (this == obj) {
      return true;
    }
    if (obj == null) {
      return false;
    }
    if (getClass() != obj.getClass()) {
      return false;
    }
    DiameterActivityImpl other = (DiameterActivityImpl) obj;
    if (destinationHost == null) {
      if (other.destinationHost != null) {
        return false;
      }
    } else if (!destinationHost.equals(other.destinationHost)) {
      return false;
    }
    if (destinationRealm == null) {
      if (other.destinationRealm != null) {
        return false;
      }
    } else if (!destinationRealm.equals(other.destinationRealm)) {
      return false;
    }
    if (sessionId == null) {
      if (other.sessionId != null) {
        return false;
      }
    } else if (!sessionId.equals(other.sessionId)) {
      return false;
    }
    if (terminateAfterProcessing != other.terminateAfterProcessing) {
      return false;
    }

    return true;
  }