Implements the base class for all OCCI links, this class can be used directly to create link instances.
@attr source [URI] link source as URI @attr #source_kind [Occi::Core::Kind, NilClass] source kind or `nil` if unknown @attr target [URI] link target, may point outside of this domain @attr #target_kind [Occi::Core::Kind, NilClass] target kind or `nil` if ourside the domain
@author Boris Parak <parak@cesnet.cz>
Separator in URI PATHs
@return [URI] link source
# File lib/occi/core/link.rb, line 19 def source self['occi.core.source'] end
@param source [URI] link source
# File lib/occi/core/link.rb, line 24 def source=(source) self['occi.core.source'] = source.is_a?(String) ? URI.parse(source) : source end
@return [URI] link target
# File lib/occi/core/link.rb, line 29 def target self['occi.core.target'] end
@param target [URI] link target
# File lib/occi/core/link.rb, line 34 def target=(target) self['occi.core.target'] = target.is_a?(String) ? URI.parse(target) : target end
See `#valid!` on `Occi::Core::Entity`.
# File lib/occi/core/link.rb, line 43 def valid! super %[source target].each do |attr| next if valid_uri? send(attr) raise Occi::Core::Errors::InstanceValidationError, "Malformed or incomplete occi.core.#{attr}" end end