001package gov.nist.secauto.oscal.lib.model; 002 003import gov.nist.secauto.metaschema.core.datatype.adapter.TokenAdapter; 004import gov.nist.secauto.metaschema.core.model.IBoundObject; 005import gov.nist.secauto.metaschema.core.model.IMetaschemaData; 006import gov.nist.secauto.metaschema.databind.model.annotations.BoundFlag; 007import gov.nist.secauto.metaschema.databind.model.annotations.MetaschemaAssembly; 008import java.lang.Override; 009import java.lang.String; 010import org.apache.commons.lang3.builder.ReflectionToStringBuilder; 011import org.apache.commons.lang3.builder.ToStringStyle; 012 013/** 014 * Used to select a control objective for inclusion/exclusion based on the control objective's identifier. 015 */ 016@MetaschemaAssembly( 017 formalName = "Select Objective", 018 description = "Used to select a control objective for inclusion/exclusion based on the control objective's identifier.", 019 name = "select-objective-by-id", 020 moduleClass = OscalAssessmentCommonModule.class 021) 022public class SelectObjectiveById implements IBoundObject { 023 private final IMetaschemaData __metaschemaData; 024 025 /** 026 * "Points to an assessment objective." 027 */ 028 @BoundFlag( 029 formalName = "Objective ID", 030 description = "Points to an assessment objective.", 031 name = "objective-id", 032 required = true, 033 typeAdapter = TokenAdapter.class 034 ) 035 private String _objectiveId; 036 037 public SelectObjectiveById() { 038 this(null); 039 } 040 041 public SelectObjectiveById(IMetaschemaData data) { 042 this.__metaschemaData = data; 043 } 044 045 @Override 046 public IMetaschemaData getMetaschemaData() { 047 return __metaschemaData; 048 } 049 050 public String getObjectiveId() { 051 return _objectiveId; 052 } 053 054 public void setObjectiveId(String value) { 055 _objectiveId = value; 056 } 057 058 @Override 059 public String toString() { 060 return new ReflectionToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).toString(); 061 } 062}