001package gov.nist.secauto.oscal.lib.model; 002 003import gov.nist.secauto.metaschema.core.datatype.markup.MarkupMultiline; 004import gov.nist.secauto.metaschema.core.datatype.markup.MarkupMultilineAdapter; 005import gov.nist.secauto.metaschema.core.model.IBoundObject; 006import gov.nist.secauto.metaschema.core.model.IMetaschemaData; 007import gov.nist.secauto.metaschema.databind.model.annotations.BoundField; 008import gov.nist.secauto.metaschema.databind.model.annotations.MetaschemaAssembly; 009import java.lang.Override; 010import java.lang.String; 011import org.apache.commons.lang3.builder.ReflectionToStringBuilder; 012import org.apache.commons.lang3.builder.ToStringStyle; 013 014/** 015 * A prose statement that provides a recommendation for the use of a parameter. 016 */ 017@MetaschemaAssembly( 018 formalName = "Guideline", 019 description = "A prose statement that provides a recommendation for the use of a parameter.", 020 name = "parameter-guideline", 021 moduleClass = OscalControlCommonModule.class 022) 023public class ParameterGuideline implements IBoundObject { 024 private final IMetaschemaData __metaschemaData; 025 026 @BoundField( 027 formalName = "Guideline Text", 028 description = "Prose permits multiple paragraphs, lists, tables etc.", 029 useName = "prose", 030 minOccurs = 1, 031 inXmlWrapped = false, 032 typeAdapter = MarkupMultilineAdapter.class 033 ) 034 private MarkupMultiline _prose; 035 036 public ParameterGuideline() { 037 this(null); 038 } 039 040 public ParameterGuideline(IMetaschemaData data) { 041 this.__metaschemaData = data; 042 } 043 044 @Override 045 public IMetaschemaData getMetaschemaData() { 046 return __metaschemaData; 047 } 048 049 public MarkupMultiline getProse() { 050 return _prose; 051 } 052 053 public void setProse(MarkupMultiline value) { 054 _prose = value; 055 } 056 057 @Override 058 public String toString() { 059 return new ReflectionToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).toString(); 060 } 061}