Class: DataFoodConsortium::Connector::Person

Inherits:
Agent
  • Object
show all
Defined in:
lib/datafoodconsortium/connector/person.rb

Instance Attribute Summary collapse

Attributes inherited from Agent

#contacts, #localizations

Instance Method Summary collapse

Methods inherited from Agent

#addContact, #addLocalization, #removeContact, #removeLocalization

Constructor Details

#initialize(semanticId, firstName: "", lastName: "", affiliatedOrganizations: [], contacts: [], localizations: []) ⇒ Person

Returns a new instance of Person.

Parameters:

  • semanticId (String)
  • firstName (String) (defaults to: "")
  • lastName (String) (defaults to: "")
  • affiliatedOrganizations (Onboardable) (defaults to: [])
  • contacts (Contactable) (defaults to: [])
  • localizations (Localizable) (defaults to: [])


47
48
49
50
51
52
53
54
55
56
# File 'lib/datafoodconsortium/connector/person.rb', line 47

def initialize(semanticId, firstName: "", lastName: "", affiliatedOrganizations: [], contacts: [], localizations: [])
	super(semanticId, contacts: contacts, localizations: localizations)
	@firstName = firstName
	@lastName = lastName
	@affiliatedOrganizations = affiliatedOrganizations
	self.semanticType = "https://github.com/datafoodconsortium/ontology/releases/latest/download/DFC_BusinessOntology.owl#Person"
	registerSemanticProperty("https://github.com/datafoodconsortium/ontology/releases/latest/download/DFC_BusinessOntology.owl#firstName") { self.firstName }
	registerSemanticProperty("https://github.com/datafoodconsortium/ontology/releases/latest/download/DFC_BusinessOntology.owl#familyName") { self.lastName }
	registerSemanticProperty("https://github.com/datafoodconsortium/ontology/releases/latest/download/DFC_BusinessOntology.owl#affiliates") { self.affiliatedOrganizations }
end

Instance Attribute Details

#affiliatedOrganizationsOnboardable

Returns:

  • (Onboardable)


39
40
41
# File 'lib/datafoodconsortium/connector/person.rb', line 39

def affiliatedOrganizations
  @affiliatedOrganizations
end

#firstNameString

Returns:

  • (String)


33
34
35
# File 'lib/datafoodconsortium/connector/person.rb', line 33

def firstName
  @firstName
end

#lastNameString

Returns:

  • (String)


36
37
38
# File 'lib/datafoodconsortium/connector/person.rb', line 36

def lastName
  @lastName
end

Instance Method Details

#affiliateTo(organization) ⇒ Object



60
61
62
# File 'lib/datafoodconsortium/connector/person.rb', line 60

def affiliateTo(organization)
	self.affiliatedOrganizations.push(organization)
end

#leaveAffiliatedOrganization(organization) ⇒ Object



65
66
67
# File 'lib/datafoodconsortium/connector/person.rb', line 65

def leaveAffiliatedOrganization(organization)
	raise "Not yet implemented."
end