001package gov.nist.secauto.oscal.lib.model;
002
003import gov.nist.secauto.metaschema.binding.model.annotations.BoundFlag;
004import gov.nist.secauto.metaschema.binding.model.annotations.MetaschemaAssembly;
005import gov.nist.secauto.metaschema.model.common.datatype.adapter.TokenAdapter;
006import gov.nist.secauto.metaschema.model.common.datatype.adapter.UuidAdapter;
007import java.lang.Override;
008import java.lang.String;
009import java.util.UUID;
010import org.apache.commons.lang3.builder.MultilineRecursiveToStringStyle;
011import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
012
013/**
014 * Used to indicate who created a log entry in what role.
015 */
016@MetaschemaAssembly(
017    formalName = "Logged By",
018    description = "Used to indicate who created a log entry in what role.",
019    name = "logged-by",
020    metaschema = OscalAssessmentCommonMetaschema.class
021)
022public class LoggedBy {
023  @BoundFlag(
024      formalName = "Party UUID Reference",
025      description = "A [machine-oriented](https://pages.nist.gov/OSCAL/concepts/identifier-use/#machine-oriented) identifier reference to the party who is making the log entry.",
026      useName = "party-uuid",
027      required = true,
028      typeAdapter = UuidAdapter.class
029  )
030  private UUID _partyUuid;
031
032  @BoundFlag(
033      formalName = "Actor Role",
034      description = "A point to the role-id of the role in which the party is making the log entry.",
035      useName = "role-id",
036      typeAdapter = TokenAdapter.class
037  )
038  private String _roleId;
039
040  public LoggedBy() {
041  }
042
043  public UUID getPartyUuid() {
044    return _partyUuid;
045  }
046
047  public void setPartyUuid(UUID value) {
048    _partyUuid = value;
049  }
050
051  public String getRoleId() {
052    return _roleId;
053  }
054
055  public void setRoleId(String value) {
056    _roleId = value;
057  }
058
059  @Override
060  public String toString() {
061    return new ReflectionToStringBuilder(this, MultilineRecursiveToStringStyle.MULTI_LINE_STYLE).toString();
062  }
063}