class ComputationTarget implements Serializable {

  public Security getSecurity() {
    if (getValue() instanceof Security) {
      return (Security) getValue();
    } else {
      throw new IllegalStateException("Requested a Security for a target of type " + getType());
    }
  }

  public  ComputationTarget(final PrimitiveComputationTargetType<?> type, final UniqueId value);
  public  ComputationTarget(final ComputationTargetType type, final UniqueIdentifiable value);
  public  ComputationTarget(final ComputationTargetSpecification specification, final UniqueIdentifiable value);

}