Module: Oscal

Defined in:
lib/oscal.rb,
lib/oscal/add.rb,
lib/oscal/url.rb,
lib/oscal/link.rb,
lib/oscal/list.rb,
lib/oscal/part.rb,
lib/oscal/role.rb,
lib/oscal/test.rb,
lib/oscal/alter.rb,
lib/oscal/group.rb,
lib/oscal/merge.rb,
lib/oscal/party.rb,
lib/oscal/rlink.rb,
lib/oscal/value.rb,
lib/oscal/choice.rb,
lib/oscal/custom.rb,
lib/oscal/logger.rb,
lib/oscal/modify.rb,
lib/oscal/remove.rb,
lib/oscal/select.rb,
lib/oscal/address.rb,
lib/oscal/catalog.rb,
lib/oscal/combine.rb,
lib/oscal/control.rb,
lib/oscal/profile.rb,
lib/oscal/version.rb,
lib/oscal/with_id.rb,
lib/oscal/assembly.rb,
lib/oscal/citation.rb,
lib/oscal/location.rb,
lib/oscal/matching.rb,
lib/oscal/property.rb,
lib/oscal/resource.rb,
lib/oscal/revision.rb,
lib/oscal/datatypes.rb,
lib/oscal/guideline.rb,
lib/oscal/parameter.rb,
lib/oscal/base_class.rb,
lib/oscal/constraint.rb,
lib/oscal/party_uuid.rb,
lib/oscal/serializer.rb,
lib/oscal/back_matter.rb,
lib/oscal/document_id.rb,
lib/oscal/external_id.rb,
lib/oscal/hash_object.rb,
lib/oscal/address_line.rb,
lib/oscal/common_utils.rb,
lib/oscal/base64_object.rb,
lib/oscal/email_address.rb,
lib/oscal/import_object.rb,
lib/oscal/location_uuid.rb,
lib/oscal/set_parameter.rb,
lib/oscal/insert_control.rb,
lib/oscal/metadata_block.rb,
lib/oscal/assessment_plan.rb,
lib/oscal/exclude_control.rb,
lib/oscal/include_control.rb,
lib/oscal/telephone_number.rb,
lib/oscal/assessment_result.rb,
lib/oscal/parsing_functions.rb,
lib/oscal/responsible_party.rb,
lib/oscal/attribute_type_hash.rb,
lib/oscal/member_of_organization.rb

Defined Under Namespace

Modules: AssessmentPlan, AssessmentResult, CommonUtils, ParsingFunctions, ParsingLogger, Serializer Classes: Add, Address, AddressLine, Alter, Assembly, BackMatter, Base64Object, BaseClass, Catalog, Choice, Citation, Combine, Constraint, Control, Custom, DateTimeWithTimezoneDataType, DocumentId, EmailAddress, Error, ExcludeControl, ExternalId, Group, Guideline, HashObject, ImportObject, IncludeControl, InsertControl, InvalidTypeError, Link, Location, LocationUuid, MarkupMultilineDataType, Matching, MemberOfOrganization, Merge, MetadataBlock, MetadataBlockWrapper, Modify, OscalArray, OscalDatatype, Parameter, Part, Party, PartyUuid, Profile, Property, Remove, Resource, ResponsibleParty, Revision, Rlink, Role, Select, SetParameter, StringDataType, StringDataTypeArray, TelephoneNumber, Test, TokenDataType, TokenDataTypeArray, UnknownAttributeError, UriReference, Url, Uuid, UuidArray, Value, WithId

Constant Summary collapse

VERSION =
"0.2.3"
ATTRIBUTE_TYPE_HASH =
{
  activities: AssessmentResult::ActivityArray,
  activity_uuid: Uuid,
  assessment_plan: AssessmentPlan::AssessmentPlan,
  assessment_platforms: AssessmentResult::AssessmentPlatformArray,
  assessment_results: AssessmentResult::AssessmentResult,
  assessment_log: AssessmentResult::AssessmentLog,
  associated_activities: AssessmentResult::AssociatedActivityArray,
  attestations: AssessmentResult::AttestationArray,
  collected: DateTimeWithTimezoneDataType,
  components: AssessmentResult::ComponentArray,
  control_id: TokenDataType,
  control_objective_selections: AssessmentResult::ControlObjectiveSelectionArray,
  control_selections: AssessmentResult::ControlSelectionArray,
  description: MarkupMultilineDataType,
  end: DateTimeWithTimezoneDataType,
  entries: AssessmentResult::EntryArray,
  exclude_controls: AssessmentResult::ExcludeControlArray,
  exclude_objectives: AssessmentResult::ExcludeObjectiveArray,
  expires: DateTimeWithTimezoneDataType,
  findings: AssessmentResult::FindingArray,
  href: UriReference,
  implementation_statement_uuid: Uuid,
  import_ap: AssessmentResult::ImportAP,
  import_ssp: AssessmentPlan::ImportSSP,
  include_all: AssessmentResult::IncludeAll,
  include_controls: AssessmentResult::IncludeControlArray,
  inventory_items: AssessmentResult::InventoryItemArray,
  links: AssessmentResult::LinkArray,
  local_definitions: AssessmentResult::LocalDefinitions,
  metadata: MetadataBlockWrapper,
  methods: AssessmentResult::MethodArray,
  objective_id: TokenDataType,
  objectives_and_methods: AssessmentResult::ObjectivesAndMethodsArray,
  observations: AssessmentResult::ObservationArray,
  observation_uuid: Uuid,
  parts: AssessmentResult::PartArray,
  party_uuids: AssessmentResult::PartyUuidArray,
  props: AssessmentResult::PropArray,
  reason: TokenDataType,
  related_controls: AssessmentResult::RelatedControls,
  related_observations: AssessmentResult::RelatedObservationArray,
  related_risks: AssessmentResult::RelatedRiskArray,
  remarks: MarkupMultilineDataType,
  responsible_roles: AssessmentResult::ResponsibleRoleArray,
  results: AssessmentResult::ResultArray,
  reviewed_controls: AssessmentResult::ReviewedControls,
  risks: AssessmentResult::RiskArray,
  risk_uuid: Uuid,
  role_id: TokenDataType,
  start: DateTimeWithTimezoneDataType,
  state: TokenDataType,
  status: AssessmentResult::Status,
  statement: MarkupMultilineDataType,
  statement_ids: AssessmentResult::StatementIdArray,
  steps: AssessmentResult::StepArray,
  subjects: AssessmentResult::SubjectArray,
  subject_uuid: Uuid,
  target: AssessmentResult::Target,
  target_id: TokenDataType,
  tasks: AssessmentResult::AssessmentTaskArray,
  title: MarkupMultilineDataType,
  type: TokenDataType,
  types: AssessmentResult::TypeArray,
  uuid: Uuid,
  users: AssessmentResult::UserArray,
}.freeze

Class Method Summary collapse

Class Method Details

.get_type_of_attribute(attribute_name) ⇒ Object



73
74
75
76
77
78
79
80
# File 'lib/oscal/attribute_type_hash.rb', line 73

def self.get_type_of_attribute(attribute_name)
  klass = Oscal::ATTRIBUTE_TYPE_HASH[attribute_name.to_sym]
  if klass == nil
    raise InvalidTypeError, "No type found for #{attribute_name}"
  else
    klass
  end
end