diff options
Diffstat (limited to 'vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale')
12 files changed, 7340 insertions, 0 deletions
diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_doc.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_doc.go new file mode 100644 index 000000000..33c2d4a66 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_doc.go @@ -0,0 +1,17 @@ +// Code generated by astool. DO NOT EDIT. + +// Package typealbum contains the implementation for the Album type. All +// applications are strongly encouraged to use the interface instead of this +// concrete definition. The interfaces allow applications to consume only the +// types and properties needed and be independent of the go-fed implementation +// if another alternative implementation is created. This package is +// code-generated and subject to the same license as the go-fed tool used to +// generate it. +// +// This package is independent of other types' and properties' implementations +// by having a Manager injected into it to act as a factory for the concrete +// implementations. The implementations have been generated into their own +// separate subpackages for each vocabulary. +// +// Strongly consider using the interfaces instead of this package. +package typealbum diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_pkg.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_pkg.go new file mode 100644 index 000000000..c77f4bc95 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_pkg.go @@ -0,0 +1,179 @@ +// Code generated by astool. DO NOT EDIT. + +package typealbum + +import vocab "code.superseriousbusiness.org/activity/streams/vocab" + +var mgr privateManager + +var typePropertyConstructor func() vocab.JSONLDTypeProperty + +// privateManager abstracts the code-generated manager that provides access to +// concrete implementations. +type privateManager interface { + // DeserializeAltitudePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAltitudeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAltitudePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAltitudeProperty, error) + // DeserializeAttachmentPropertyActivityStreams returns the + // deserialization method for the "ActivityStreamsAttachmentProperty" + // non-functional property in the vocabulary "ActivityStreams" + DeserializeAttachmentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttachmentProperty, error) + // DeserializeAttributedToPropertyActivityStreams returns the + // deserialization method for the + // "ActivityStreamsAttributedToProperty" non-functional property in + // the vocabulary "ActivityStreams" + DeserializeAttributedToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttributedToProperty, error) + // DeserializeAudiencePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAudienceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAudiencePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAudienceProperty, error) + // DeserializeBccPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBccProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBccPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBccProperty, error) + // DeserializeBtoPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBtoProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBtoPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBtoProperty, error) + // DeserializeCcPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsCcProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeCcPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsCcProperty, error) + // DeserializeContentPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContentProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContentProperty, error) + // DeserializeContextPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContextProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContextPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContextProperty, error) + // DeserializeDurationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsDurationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeDurationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsDurationProperty, error) + // DeserializeEndTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsEndTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeEndTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsEndTimeProperty, error) + // DeserializeGeneratorPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsGeneratorProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeGeneratorPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsGeneratorProperty, error) + // DeserializeIconPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsIconProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeIconPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsIconProperty, error) + // DeserializeIdPropertyJSONLD returns the deserialization method for the + // "JSONLDIdProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeIdPropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDIdProperty, error) + // DeserializeImagePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsImageProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeImagePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsImageProperty, error) + // DeserializeInReplyToPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsInReplyToProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeInReplyToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsInReplyToProperty, error) + // DeserializeLikesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLikesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLikesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLikesProperty, error) + // DeserializeLocationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLocationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLocationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLocationProperty, error) + // DeserializeMediaTypePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsMediaTypeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeMediaTypePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsMediaTypeProperty, error) + // DeserializeNamePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsNameProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeNamePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsNameProperty, error) + // DeserializeObjectPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsObjectProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeObjectPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsObjectProperty, error) + // DeserializePreviewPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPreviewProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePreviewPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPreviewProperty, error) + // DeserializePublishedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPublishedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePublishedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPublishedProperty, error) + // DeserializeRepliesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsRepliesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeRepliesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsRepliesProperty, error) + // DeserializeSensitivePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSensitiveProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSensitivePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSensitiveProperty, error) + // DeserializeSharesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSharesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSharesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSharesProperty, error) + // DeserializeSourcePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSourceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSourcePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSourceProperty, error) + // DeserializeStartTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsStartTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeStartTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsStartTimeProperty, error) + // DeserializeSummaryPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSummaryProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSummaryPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSummaryProperty, error) + // DeserializeTagPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsTagProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeTagPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsTagProperty, error) + // DeserializeToPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsToProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsToProperty, error) + // DeserializeTypePropertyJSONLD returns the deserialization method for + // the "JSONLDTypeProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeTypePropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDTypeProperty, error) + // DeserializeUpdatedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUpdatedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeUpdatedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUpdatedProperty, error) + // DeserializeUrlPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUrlProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeUrlPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUrlProperty, error) +} + +// jsonldContexter is a private interface to determine the JSON-LD contexts and +// aliases needed for functional and non-functional properties. It is a helper +// interface for this implementation. +type jsonldContexter interface { + // JSONLDContext returns the JSONLD URIs required in the context string + // for this property and the specific values that are set. The value + // in the map is the alias used to import the property's value or + // values. + JSONLDContext() map[string]string +} + +// SetManager sets the manager package-global variable. For internal use only, do +// not use as part of Application behavior. Must be called at golang init time. +func SetManager(m privateManager) { + mgr = m +} + +// SetTypePropertyConstructor sets the "type" property's constructor in the +// package-global variable. For internal use only, do not use as part of +// Application behavior. Must be called at golang init time. Permits +// ActivityStreams types to correctly set their "type" property at +// construction time, so users don't have to remember to do so each time. It +// is dependency injected so other go-fed compatible implementations could +// inject their own type. +func SetTypePropertyConstructor(f func() vocab.JSONLDTypeProperty) { + typePropertyConstructor = f +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_type_funkwhale_album.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_type_funkwhale_album.go new file mode 100644 index 000000000..a872432c6 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_album/gen_type_funkwhale_album.go @@ -0,0 +1,1639 @@ +// Code generated by astool. DO NOT EDIT. + +package typealbum + +import ( + vocab "code.superseriousbusiness.org/activity/streams/vocab" + "fmt" + "strings" +) + +type FunkwhaleAlbum struct { + ActivityStreamsAltitude vocab.ActivityStreamsAltitudeProperty + ActivityStreamsAttachment vocab.ActivityStreamsAttachmentProperty + ActivityStreamsAttributedTo vocab.ActivityStreamsAttributedToProperty + ActivityStreamsAudience vocab.ActivityStreamsAudienceProperty + ActivityStreamsBcc vocab.ActivityStreamsBccProperty + ActivityStreamsBto vocab.ActivityStreamsBtoProperty + ActivityStreamsCc vocab.ActivityStreamsCcProperty + ActivityStreamsContent vocab.ActivityStreamsContentProperty + ActivityStreamsContext vocab.ActivityStreamsContextProperty + ActivityStreamsDuration vocab.ActivityStreamsDurationProperty + ActivityStreamsEndTime vocab.ActivityStreamsEndTimeProperty + ActivityStreamsGenerator vocab.ActivityStreamsGeneratorProperty + ActivityStreamsIcon vocab.ActivityStreamsIconProperty + JSONLDId vocab.JSONLDIdProperty + ActivityStreamsImage vocab.ActivityStreamsImageProperty + ActivityStreamsInReplyTo vocab.ActivityStreamsInReplyToProperty + ActivityStreamsLikes vocab.ActivityStreamsLikesProperty + ActivityStreamsLocation vocab.ActivityStreamsLocationProperty + ActivityStreamsMediaType vocab.ActivityStreamsMediaTypeProperty + ActivityStreamsName vocab.ActivityStreamsNameProperty + ActivityStreamsObject vocab.ActivityStreamsObjectProperty + ActivityStreamsPreview vocab.ActivityStreamsPreviewProperty + ActivityStreamsPublished vocab.ActivityStreamsPublishedProperty + ActivityStreamsReplies vocab.ActivityStreamsRepliesProperty + ActivityStreamsSensitive vocab.ActivityStreamsSensitiveProperty + ActivityStreamsShares vocab.ActivityStreamsSharesProperty + ActivityStreamsSource vocab.ActivityStreamsSourceProperty + ActivityStreamsStartTime vocab.ActivityStreamsStartTimeProperty + ActivityStreamsSummary vocab.ActivityStreamsSummaryProperty + ActivityStreamsTag vocab.ActivityStreamsTagProperty + ActivityStreamsTo vocab.ActivityStreamsToProperty + JSONLDType vocab.JSONLDTypeProperty + ActivityStreamsUpdated vocab.ActivityStreamsUpdatedProperty + ActivityStreamsUrl vocab.ActivityStreamsUrlProperty + alias string + unknown map[string]interface{} +} + +// AlbumIsDisjointWith returns true if the other provided type is disjoint with +// the Album type. +func AlbumIsDisjointWith(other vocab.Type) bool { + disjointWith := []string{"Hashtag", "Link", "Mention"} + for _, disjoint := range disjointWith { + if disjoint == other.GetTypeName() { + return true + } + } + return false +} + +// AlbumIsExtendedBy returns true if the other provided type extends from the +// Album type. Note that it returns false if the types are the same; see the +// "IsOrExtendsAlbum" variant instead. +func AlbumIsExtendedBy(other vocab.Type) bool { + // Shortcut implementation: is not extended by anything. + return false +} + +// DeserializeAlbum creates a Album from a map representation that has been +// unmarshalled from a text or binary format. +func DeserializeAlbum(m map[string]interface{}, aliasMap map[string]string) (*FunkwhaleAlbum, error) { + alias := "" + aliasPrefix := "" + if a, ok := aliasMap["https://funkwhale.audio/ns"]; ok { + alias = a + aliasPrefix = a + ":" + } + this := &FunkwhaleAlbum{ + alias: alias, + unknown: make(map[string]interface{}), + } + if typeValue, ok := m["type"]; !ok { + return nil, fmt.Errorf("no \"type\" property in map") + } else if typeString, ok := typeValue.(string); ok { + typeName := strings.TrimPrefix(typeString, aliasPrefix) + if typeName != "Album" { + return nil, fmt.Errorf("\"type\" property is not of %q type: %s", "Album", typeName) + } + // Fall through, success in finding a proper Type + } else if arrType, ok := typeValue.([]interface{}); ok { + found := false + for _, elemVal := range arrType { + if typeString, ok := elemVal.(string); ok && strings.TrimPrefix(typeString, aliasPrefix) == "Album" { + found = true + break + } + } + if !found { + return nil, fmt.Errorf("could not find a \"type\" property of value %q", "Album") + } + // Fall through, success in finding a proper Type + } else { + return nil, fmt.Errorf("\"type\" property is unrecognized type: %T", typeValue) + } + // Begin: Known property deserialization + if p, err := mgr.DeserializeAltitudePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAltitude = p + } + if p, err := mgr.DeserializeAttachmentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttachment = p + } + if p, err := mgr.DeserializeAttributedToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttributedTo = p + } + if p, err := mgr.DeserializeAudiencePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAudience = p + } + if p, err := mgr.DeserializeBccPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBcc = p + } + if p, err := mgr.DeserializeBtoPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBto = p + } + if p, err := mgr.DeserializeCcPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsCc = p + } + if p, err := mgr.DeserializeContentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContent = p + } + if p, err := mgr.DeserializeContextPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContext = p + } + if p, err := mgr.DeserializeDurationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsDuration = p + } + if p, err := mgr.DeserializeEndTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsEndTime = p + } + if p, err := mgr.DeserializeGeneratorPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsGenerator = p + } + if p, err := mgr.DeserializeIconPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsIcon = p + } + if p, err := mgr.DeserializeIdPropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDId = p + } + if p, err := mgr.DeserializeImagePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsImage = p + } + if p, err := mgr.DeserializeInReplyToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsInReplyTo = p + } + if p, err := mgr.DeserializeLikesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLikes = p + } + if p, err := mgr.DeserializeLocationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLocation = p + } + if p, err := mgr.DeserializeMediaTypePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsMediaType = p + } + if p, err := mgr.DeserializeNamePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsName = p + } + if p, err := mgr.DeserializeObjectPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsObject = p + } + if p, err := mgr.DeserializePreviewPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPreview = p + } + if p, err := mgr.DeserializePublishedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPublished = p + } + if p, err := mgr.DeserializeRepliesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsReplies = p + } + if p, err := mgr.DeserializeSensitivePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSensitive = p + } + if p, err := mgr.DeserializeSharesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsShares = p + } + if p, err := mgr.DeserializeSourcePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSource = p + } + if p, err := mgr.DeserializeStartTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsStartTime = p + } + if p, err := mgr.DeserializeSummaryPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSummary = p + } + if p, err := mgr.DeserializeTagPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTag = p + } + if p, err := mgr.DeserializeToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTo = p + } + if p, err := mgr.DeserializeTypePropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDType = p + } + if p, err := mgr.DeserializeUpdatedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUpdated = p + } + if p, err := mgr.DeserializeUrlPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUrl = p + } + // End: Known property deserialization + + // Begin: Unknown deserialization + for k, v := range m { + // Begin: Code that ensures a property name is unknown + if k == "altitude" { + continue + } else if k == "attachment" { + continue + } else if k == "attributedTo" { + continue + } else if k == "audience" { + continue + } else if k == "bcc" { + continue + } else if k == "bto" { + continue + } else if k == "cc" { + continue + } else if k == "content" { + continue + } else if k == "contentMap" { + continue + } else if k == "context" { + continue + } else if k == "duration" { + continue + } else if k == "endTime" { + continue + } else if k == "generator" { + continue + } else if k == "icon" { + continue + } else if k == "id" { + continue + } else if k == "image" { + continue + } else if k == "inReplyTo" { + continue + } else if k == "likes" { + continue + } else if k == "location" { + continue + } else if k == "mediaType" { + continue + } else if k == "name" { + continue + } else if k == "nameMap" { + continue + } else if k == "object" { + continue + } else if k == "preview" { + continue + } else if k == "published" { + continue + } else if k == "replies" { + continue + } else if k == "sensitive" { + continue + } else if k == "shares" { + continue + } else if k == "source" { + continue + } else if k == "startTime" { + continue + } else if k == "summary" { + continue + } else if k == "summaryMap" { + continue + } else if k == "tag" { + continue + } else if k == "to" { + continue + } else if k == "type" { + continue + } else if k == "updated" { + continue + } else if k == "url" { + continue + } // End: Code that ensures a property name is unknown + + this.unknown[k] = v + } + // End: Unknown deserialization + + return this, nil +} + +// FunkwhaleAlbumExtends returns true if the Album type extends from the other +// type. +func FunkwhaleAlbumExtends(other vocab.Type) bool { + extensions := []string{"Object"} + for _, ext := range extensions { + if ext == other.GetTypeName() { + return true + } + } + return false +} + +// IsOrExtendsAlbum returns true if the other provided type is the Album type or +// extends from the Album type. +func IsOrExtendsAlbum(other vocab.Type) bool { + if other.GetTypeName() == "Album" { + return true + } + return AlbumIsExtendedBy(other) +} + +// NewFunkwhaleAlbum creates a new Album type +func NewFunkwhaleAlbum() *FunkwhaleAlbum { + typeProp := typePropertyConstructor() + typeProp.AppendXMLSchemaString("Album") + return &FunkwhaleAlbum{ + JSONLDType: typeProp, + alias: "", + unknown: make(map[string]interface{}), + } +} + +// GetActivityStreamsAltitude returns the "altitude" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsAltitude() vocab.ActivityStreamsAltitudeProperty { + return this.ActivityStreamsAltitude +} + +// GetActivityStreamsAttachment returns the "attachment" property if it exists, +// and nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsAttachment() vocab.ActivityStreamsAttachmentProperty { + return this.ActivityStreamsAttachment +} + +// GetActivityStreamsAttributedTo returns the "attributedTo" property if it +// exists, and nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsAttributedTo() vocab.ActivityStreamsAttributedToProperty { + return this.ActivityStreamsAttributedTo +} + +// GetActivityStreamsAudience returns the "audience" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsAudience() vocab.ActivityStreamsAudienceProperty { + return this.ActivityStreamsAudience +} + +// GetActivityStreamsBcc returns the "bcc" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsBcc() vocab.ActivityStreamsBccProperty { + return this.ActivityStreamsBcc +} + +// GetActivityStreamsBto returns the "bto" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsBto() vocab.ActivityStreamsBtoProperty { + return this.ActivityStreamsBto +} + +// GetActivityStreamsCc returns the "cc" property if it exists, and nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsCc() vocab.ActivityStreamsCcProperty { + return this.ActivityStreamsCc +} + +// GetActivityStreamsContent returns the "content" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsContent() vocab.ActivityStreamsContentProperty { + return this.ActivityStreamsContent +} + +// GetActivityStreamsContext returns the "context" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsContext() vocab.ActivityStreamsContextProperty { + return this.ActivityStreamsContext +} + +// GetActivityStreamsDuration returns the "duration" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsDuration() vocab.ActivityStreamsDurationProperty { + return this.ActivityStreamsDuration +} + +// GetActivityStreamsEndTime returns the "endTime" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsEndTime() vocab.ActivityStreamsEndTimeProperty { + return this.ActivityStreamsEndTime +} + +// GetActivityStreamsGenerator returns the "generator" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsGenerator() vocab.ActivityStreamsGeneratorProperty { + return this.ActivityStreamsGenerator +} + +// GetActivityStreamsIcon returns the "icon" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsIcon() vocab.ActivityStreamsIconProperty { + return this.ActivityStreamsIcon +} + +// GetActivityStreamsImage returns the "image" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsImage() vocab.ActivityStreamsImageProperty { + return this.ActivityStreamsImage +} + +// GetActivityStreamsInReplyTo returns the "inReplyTo" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsInReplyTo() vocab.ActivityStreamsInReplyToProperty { + return this.ActivityStreamsInReplyTo +} + +// GetActivityStreamsLikes returns the "likes" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsLikes() vocab.ActivityStreamsLikesProperty { + return this.ActivityStreamsLikes +} + +// GetActivityStreamsLocation returns the "location" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsLocation() vocab.ActivityStreamsLocationProperty { + return this.ActivityStreamsLocation +} + +// GetActivityStreamsMediaType returns the "mediaType" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsMediaType() vocab.ActivityStreamsMediaTypeProperty { + return this.ActivityStreamsMediaType +} + +// GetActivityStreamsName returns the "name" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsName() vocab.ActivityStreamsNameProperty { + return this.ActivityStreamsName +} + +// GetActivityStreamsObject returns the "object" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsObject() vocab.ActivityStreamsObjectProperty { + return this.ActivityStreamsObject +} + +// GetActivityStreamsPreview returns the "preview" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsPreview() vocab.ActivityStreamsPreviewProperty { + return this.ActivityStreamsPreview +} + +// GetActivityStreamsPublished returns the "published" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsPublished() vocab.ActivityStreamsPublishedProperty { + return this.ActivityStreamsPublished +} + +// GetActivityStreamsReplies returns the "replies" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsReplies() vocab.ActivityStreamsRepliesProperty { + return this.ActivityStreamsReplies +} + +// GetActivityStreamsSensitive returns the "sensitive" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsSensitive() vocab.ActivityStreamsSensitiveProperty { + return this.ActivityStreamsSensitive +} + +// GetActivityStreamsShares returns the "shares" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsShares() vocab.ActivityStreamsSharesProperty { + return this.ActivityStreamsShares +} + +// GetActivityStreamsSource returns the "source" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsSource() vocab.ActivityStreamsSourceProperty { + return this.ActivityStreamsSource +} + +// GetActivityStreamsStartTime returns the "startTime" property if it exists, and +// nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsStartTime() vocab.ActivityStreamsStartTimeProperty { + return this.ActivityStreamsStartTime +} + +// GetActivityStreamsSummary returns the "summary" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsSummary() vocab.ActivityStreamsSummaryProperty { + return this.ActivityStreamsSummary +} + +// GetActivityStreamsTag returns the "tag" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsTag() vocab.ActivityStreamsTagProperty { + return this.ActivityStreamsTag +} + +// GetActivityStreamsTo returns the "to" property if it exists, and nil otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsTo() vocab.ActivityStreamsToProperty { + return this.ActivityStreamsTo +} + +// GetActivityStreamsUpdated returns the "updated" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsUpdated() vocab.ActivityStreamsUpdatedProperty { + return this.ActivityStreamsUpdated +} + +// GetActivityStreamsUrl returns the "url" property if it exists, and nil +// otherwise. +func (this FunkwhaleAlbum) GetActivityStreamsUrl() vocab.ActivityStreamsUrlProperty { + return this.ActivityStreamsUrl +} + +// GetJSONLDId returns the "id" property if it exists, and nil otherwise. +func (this FunkwhaleAlbum) GetJSONLDId() vocab.JSONLDIdProperty { + return this.JSONLDId +} + +// GetJSONLDType returns the "type" property if it exists, and nil otherwise. +func (this FunkwhaleAlbum) GetJSONLDType() vocab.JSONLDTypeProperty { + return this.JSONLDType +} + +// GetTypeName returns the name of this type. +func (this FunkwhaleAlbum) GetTypeName() string { + return "Album" +} + +// GetUnknownProperties returns the unknown properties for the Album type. Note +// that this should not be used by app developers. It is only used to help +// determine which implementation is LessThan the other. Developers who are +// creating a different implementation of this type's interface can use this +// method in their LessThan implementation, but routine ActivityPub +// applications should not use this to bypass the code generation tool. +func (this FunkwhaleAlbum) GetUnknownProperties() map[string]interface{} { + return this.unknown +} + +// IsExtending returns true if the Album type extends from the other type. +func (this FunkwhaleAlbum) IsExtending(other vocab.Type) bool { + return FunkwhaleAlbumExtends(other) +} + +// JSONLDContext returns the JSONLD URIs required in the context string for this +// type and the specific properties that are set. The value in the map is the +// alias used to import the type and its properties. +func (this FunkwhaleAlbum) JSONLDContext() map[string]string { + m := map[string]string{"https://funkwhale.audio/ns": this.alias} + m = this.helperJSONLDContext(this.ActivityStreamsAltitude, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttachment, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttributedTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsAudience, m) + m = this.helperJSONLDContext(this.ActivityStreamsBcc, m) + m = this.helperJSONLDContext(this.ActivityStreamsBto, m) + m = this.helperJSONLDContext(this.ActivityStreamsCc, m) + m = this.helperJSONLDContext(this.ActivityStreamsContent, m) + m = this.helperJSONLDContext(this.ActivityStreamsContext, m) + m = this.helperJSONLDContext(this.ActivityStreamsDuration, m) + m = this.helperJSONLDContext(this.ActivityStreamsEndTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsGenerator, m) + m = this.helperJSONLDContext(this.ActivityStreamsIcon, m) + m = this.helperJSONLDContext(this.JSONLDId, m) + m = this.helperJSONLDContext(this.ActivityStreamsImage, m) + m = this.helperJSONLDContext(this.ActivityStreamsInReplyTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsLikes, m) + m = this.helperJSONLDContext(this.ActivityStreamsLocation, m) + m = this.helperJSONLDContext(this.ActivityStreamsMediaType, m) + m = this.helperJSONLDContext(this.ActivityStreamsName, m) + m = this.helperJSONLDContext(this.ActivityStreamsObject, m) + m = this.helperJSONLDContext(this.ActivityStreamsPreview, m) + m = this.helperJSONLDContext(this.ActivityStreamsPublished, m) + m = this.helperJSONLDContext(this.ActivityStreamsReplies, m) + m = this.helperJSONLDContext(this.ActivityStreamsSensitive, m) + m = this.helperJSONLDContext(this.ActivityStreamsShares, m) + m = this.helperJSONLDContext(this.ActivityStreamsSource, m) + m = this.helperJSONLDContext(this.ActivityStreamsStartTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsSummary, m) + m = this.helperJSONLDContext(this.ActivityStreamsTag, m) + m = this.helperJSONLDContext(this.ActivityStreamsTo, m) + m = this.helperJSONLDContext(this.JSONLDType, m) + m = this.helperJSONLDContext(this.ActivityStreamsUpdated, m) + m = this.helperJSONLDContext(this.ActivityStreamsUrl, m) + + return m +} + +// LessThan computes if this Album is lesser, with an arbitrary but stable +// determination. +func (this FunkwhaleAlbum) LessThan(o vocab.FunkwhaleAlbum) bool { + // Begin: Compare known properties + // Compare property "altitude" + if lhs, rhs := this.ActivityStreamsAltitude, o.GetActivityStreamsAltitude(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attachment" + if lhs, rhs := this.ActivityStreamsAttachment, o.GetActivityStreamsAttachment(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attributedTo" + if lhs, rhs := this.ActivityStreamsAttributedTo, o.GetActivityStreamsAttributedTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "audience" + if lhs, rhs := this.ActivityStreamsAudience, o.GetActivityStreamsAudience(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bcc" + if lhs, rhs := this.ActivityStreamsBcc, o.GetActivityStreamsBcc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bto" + if lhs, rhs := this.ActivityStreamsBto, o.GetActivityStreamsBto(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "cc" + if lhs, rhs := this.ActivityStreamsCc, o.GetActivityStreamsCc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "content" + if lhs, rhs := this.ActivityStreamsContent, o.GetActivityStreamsContent(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "context" + if lhs, rhs := this.ActivityStreamsContext, o.GetActivityStreamsContext(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "duration" + if lhs, rhs := this.ActivityStreamsDuration, o.GetActivityStreamsDuration(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "endTime" + if lhs, rhs := this.ActivityStreamsEndTime, o.GetActivityStreamsEndTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "generator" + if lhs, rhs := this.ActivityStreamsGenerator, o.GetActivityStreamsGenerator(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "icon" + if lhs, rhs := this.ActivityStreamsIcon, o.GetActivityStreamsIcon(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "id" + if lhs, rhs := this.JSONLDId, o.GetJSONLDId(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "image" + if lhs, rhs := this.ActivityStreamsImage, o.GetActivityStreamsImage(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "inReplyTo" + if lhs, rhs := this.ActivityStreamsInReplyTo, o.GetActivityStreamsInReplyTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "likes" + if lhs, rhs := this.ActivityStreamsLikes, o.GetActivityStreamsLikes(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "location" + if lhs, rhs := this.ActivityStreamsLocation, o.GetActivityStreamsLocation(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "mediaType" + if lhs, rhs := this.ActivityStreamsMediaType, o.GetActivityStreamsMediaType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "name" + if lhs, rhs := this.ActivityStreamsName, o.GetActivityStreamsName(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "object" + if lhs, rhs := this.ActivityStreamsObject, o.GetActivityStreamsObject(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "preview" + if lhs, rhs := this.ActivityStreamsPreview, o.GetActivityStreamsPreview(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "published" + if lhs, rhs := this.ActivityStreamsPublished, o.GetActivityStreamsPublished(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "replies" + if lhs, rhs := this.ActivityStreamsReplies, o.GetActivityStreamsReplies(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "sensitive" + if lhs, rhs := this.ActivityStreamsSensitive, o.GetActivityStreamsSensitive(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "shares" + if lhs, rhs := this.ActivityStreamsShares, o.GetActivityStreamsShares(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "source" + if lhs, rhs := this.ActivityStreamsSource, o.GetActivityStreamsSource(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "startTime" + if lhs, rhs := this.ActivityStreamsStartTime, o.GetActivityStreamsStartTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "summary" + if lhs, rhs := this.ActivityStreamsSummary, o.GetActivityStreamsSummary(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "tag" + if lhs, rhs := this.ActivityStreamsTag, o.GetActivityStreamsTag(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "to" + if lhs, rhs := this.ActivityStreamsTo, o.GetActivityStreamsTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "type" + if lhs, rhs := this.JSONLDType, o.GetJSONLDType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "updated" + if lhs, rhs := this.ActivityStreamsUpdated, o.GetActivityStreamsUpdated(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "url" + if lhs, rhs := this.ActivityStreamsUrl, o.GetActivityStreamsUrl(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // End: Compare known properties + + // Begin: Compare unknown properties (only by number of them) + if len(this.unknown) < len(o.GetUnknownProperties()) { + return true + } else if len(o.GetUnknownProperties()) < len(this.unknown) { + return false + } // End: Compare unknown properties (only by number of them) + + // All properties are the same. + return false +} + +// Serialize converts this into an interface representation suitable for +// marshalling into a text or binary format. +func (this FunkwhaleAlbum) Serialize() (map[string]interface{}, error) { + m := make(map[string]interface{}) + typeName := "Album" + if len(this.alias) > 0 { + typeName = this.alias + ":" + "Album" + } + m["type"] = typeName + // Begin: Serialize known properties + // Maybe serialize property "altitude" + if this.ActivityStreamsAltitude != nil { + if i, err := this.ActivityStreamsAltitude.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAltitude.Name()] = i + } + } + // Maybe serialize property "attachment" + if this.ActivityStreamsAttachment != nil { + if i, err := this.ActivityStreamsAttachment.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttachment.Name()] = i + } + } + // Maybe serialize property "attributedTo" + if this.ActivityStreamsAttributedTo != nil { + if i, err := this.ActivityStreamsAttributedTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttributedTo.Name()] = i + } + } + // Maybe serialize property "audience" + if this.ActivityStreamsAudience != nil { + if i, err := this.ActivityStreamsAudience.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAudience.Name()] = i + } + } + // Maybe serialize property "bcc" + if this.ActivityStreamsBcc != nil { + if i, err := this.ActivityStreamsBcc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBcc.Name()] = i + } + } + // Maybe serialize property "bto" + if this.ActivityStreamsBto != nil { + if i, err := this.ActivityStreamsBto.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBto.Name()] = i + } + } + // Maybe serialize property "cc" + if this.ActivityStreamsCc != nil { + if i, err := this.ActivityStreamsCc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsCc.Name()] = i + } + } + // Maybe serialize property "content" + if this.ActivityStreamsContent != nil { + if i, err := this.ActivityStreamsContent.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContent.Name()] = i + } + } + // Maybe serialize property "context" + if this.ActivityStreamsContext != nil { + if i, err := this.ActivityStreamsContext.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContext.Name()] = i + } + } + // Maybe serialize property "duration" + if this.ActivityStreamsDuration != nil { + if i, err := this.ActivityStreamsDuration.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsDuration.Name()] = i + } + } + // Maybe serialize property "endTime" + if this.ActivityStreamsEndTime != nil { + if i, err := this.ActivityStreamsEndTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsEndTime.Name()] = i + } + } + // Maybe serialize property "generator" + if this.ActivityStreamsGenerator != nil { + if i, err := this.ActivityStreamsGenerator.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsGenerator.Name()] = i + } + } + // Maybe serialize property "icon" + if this.ActivityStreamsIcon != nil { + if i, err := this.ActivityStreamsIcon.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsIcon.Name()] = i + } + } + // Maybe serialize property "id" + if this.JSONLDId != nil { + if i, err := this.JSONLDId.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDId.Name()] = i + } + } + // Maybe serialize property "image" + if this.ActivityStreamsImage != nil { + if i, err := this.ActivityStreamsImage.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsImage.Name()] = i + } + } + // Maybe serialize property "inReplyTo" + if this.ActivityStreamsInReplyTo != nil { + if i, err := this.ActivityStreamsInReplyTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsInReplyTo.Name()] = i + } + } + // Maybe serialize property "likes" + if this.ActivityStreamsLikes != nil { + if i, err := this.ActivityStreamsLikes.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLikes.Name()] = i + } + } + // Maybe serialize property "location" + if this.ActivityStreamsLocation != nil { + if i, err := this.ActivityStreamsLocation.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLocation.Name()] = i + } + } + // Maybe serialize property "mediaType" + if this.ActivityStreamsMediaType != nil { + if i, err := this.ActivityStreamsMediaType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsMediaType.Name()] = i + } + } + // Maybe serialize property "name" + if this.ActivityStreamsName != nil { + if i, err := this.ActivityStreamsName.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsName.Name()] = i + } + } + // Maybe serialize property "object" + if this.ActivityStreamsObject != nil { + if i, err := this.ActivityStreamsObject.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsObject.Name()] = i + } + } + // Maybe serialize property "preview" + if this.ActivityStreamsPreview != nil { + if i, err := this.ActivityStreamsPreview.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPreview.Name()] = i + } + } + // Maybe serialize property "published" + if this.ActivityStreamsPublished != nil { + if i, err := this.ActivityStreamsPublished.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPublished.Name()] = i + } + } + // Maybe serialize property "replies" + if this.ActivityStreamsReplies != nil { + if i, err := this.ActivityStreamsReplies.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsReplies.Name()] = i + } + } + // Maybe serialize property "sensitive" + if this.ActivityStreamsSensitive != nil { + if i, err := this.ActivityStreamsSensitive.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSensitive.Name()] = i + } + } + // Maybe serialize property "shares" + if this.ActivityStreamsShares != nil { + if i, err := this.ActivityStreamsShares.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsShares.Name()] = i + } + } + // Maybe serialize property "source" + if this.ActivityStreamsSource != nil { + if i, err := this.ActivityStreamsSource.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSource.Name()] = i + } + } + // Maybe serialize property "startTime" + if this.ActivityStreamsStartTime != nil { + if i, err := this.ActivityStreamsStartTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsStartTime.Name()] = i + } + } + // Maybe serialize property "summary" + if this.ActivityStreamsSummary != nil { + if i, err := this.ActivityStreamsSummary.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSummary.Name()] = i + } + } + // Maybe serialize property "tag" + if this.ActivityStreamsTag != nil { + if i, err := this.ActivityStreamsTag.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTag.Name()] = i + } + } + // Maybe serialize property "to" + if this.ActivityStreamsTo != nil { + if i, err := this.ActivityStreamsTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTo.Name()] = i + } + } + // Maybe serialize property "type" + if this.JSONLDType != nil { + if i, err := this.JSONLDType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDType.Name()] = i + } + } + // Maybe serialize property "updated" + if this.ActivityStreamsUpdated != nil { + if i, err := this.ActivityStreamsUpdated.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUpdated.Name()] = i + } + } + // Maybe serialize property "url" + if this.ActivityStreamsUrl != nil { + if i, err := this.ActivityStreamsUrl.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUrl.Name()] = i + } + } + // End: Serialize known properties + + // Begin: Serialize unknown properties + for k, v := range this.unknown { + // To be safe, ensure we aren't overwriting a known property + if _, has := m[k]; !has { + m[k] = v + } + } + // End: Serialize unknown properties + + return m, nil +} + +// SetActivityStreamsAltitude sets the "altitude" property. +func (this *FunkwhaleAlbum) SetActivityStreamsAltitude(i vocab.ActivityStreamsAltitudeProperty) { + this.ActivityStreamsAltitude = i +} + +// SetActivityStreamsAttachment sets the "attachment" property. +func (this *FunkwhaleAlbum) SetActivityStreamsAttachment(i vocab.ActivityStreamsAttachmentProperty) { + this.ActivityStreamsAttachment = i +} + +// SetActivityStreamsAttributedTo sets the "attributedTo" property. +func (this *FunkwhaleAlbum) SetActivityStreamsAttributedTo(i vocab.ActivityStreamsAttributedToProperty) { + this.ActivityStreamsAttributedTo = i +} + +// SetActivityStreamsAudience sets the "audience" property. +func (this *FunkwhaleAlbum) SetActivityStreamsAudience(i vocab.ActivityStreamsAudienceProperty) { + this.ActivityStreamsAudience = i +} + +// SetActivityStreamsBcc sets the "bcc" property. +func (this *FunkwhaleAlbum) SetActivityStreamsBcc(i vocab.ActivityStreamsBccProperty) { + this.ActivityStreamsBcc = i +} + +// SetActivityStreamsBto sets the "bto" property. +func (this *FunkwhaleAlbum) SetActivityStreamsBto(i vocab.ActivityStreamsBtoProperty) { + this.ActivityStreamsBto = i +} + +// SetActivityStreamsCc sets the "cc" property. +func (this *FunkwhaleAlbum) SetActivityStreamsCc(i vocab.ActivityStreamsCcProperty) { + this.ActivityStreamsCc = i +} + +// SetActivityStreamsContent sets the "content" property. +func (this *FunkwhaleAlbum) SetActivityStreamsContent(i vocab.ActivityStreamsContentProperty) { + this.ActivityStreamsContent = i +} + +// SetActivityStreamsContext sets the "context" property. +func (this *FunkwhaleAlbum) SetActivityStreamsContext(i vocab.ActivityStreamsContextProperty) { + this.ActivityStreamsContext = i +} + +// SetActivityStreamsDuration sets the "duration" property. +func (this *FunkwhaleAlbum) SetActivityStreamsDuration(i vocab.ActivityStreamsDurationProperty) { + this.ActivityStreamsDuration = i +} + +// SetActivityStreamsEndTime sets the "endTime" property. +func (this *FunkwhaleAlbum) SetActivityStreamsEndTime(i vocab.ActivityStreamsEndTimeProperty) { + this.ActivityStreamsEndTime = i +} + +// SetActivityStreamsGenerator sets the "generator" property. +func (this *FunkwhaleAlbum) SetActivityStreamsGenerator(i vocab.ActivityStreamsGeneratorProperty) { + this.ActivityStreamsGenerator = i +} + +// SetActivityStreamsIcon sets the "icon" property. +func (this *FunkwhaleAlbum) SetActivityStreamsIcon(i vocab.ActivityStreamsIconProperty) { + this.ActivityStreamsIcon = i +} + +// SetActivityStreamsImage sets the "image" property. +func (this *FunkwhaleAlbum) SetActivityStreamsImage(i vocab.ActivityStreamsImageProperty) { + this.ActivityStreamsImage = i +} + +// SetActivityStreamsInReplyTo sets the "inReplyTo" property. +func (this *FunkwhaleAlbum) SetActivityStreamsInReplyTo(i vocab.ActivityStreamsInReplyToProperty) { + this.ActivityStreamsInReplyTo = i +} + +// SetActivityStreamsLikes sets the "likes" property. +func (this *FunkwhaleAlbum) SetActivityStreamsLikes(i vocab.ActivityStreamsLikesProperty) { + this.ActivityStreamsLikes = i +} + +// SetActivityStreamsLocation sets the "location" property. +func (this *FunkwhaleAlbum) SetActivityStreamsLocation(i vocab.ActivityStreamsLocationProperty) { + this.ActivityStreamsLocation = i +} + +// SetActivityStreamsMediaType sets the "mediaType" property. +func (this *FunkwhaleAlbum) SetActivityStreamsMediaType(i vocab.ActivityStreamsMediaTypeProperty) { + this.ActivityStreamsMediaType = i +} + +// SetActivityStreamsName sets the "name" property. +func (this *FunkwhaleAlbum) SetActivityStreamsName(i vocab.ActivityStreamsNameProperty) { + this.ActivityStreamsName = i +} + +// SetActivityStreamsObject sets the "object" property. +func (this *FunkwhaleAlbum) SetActivityStreamsObject(i vocab.ActivityStreamsObjectProperty) { + this.ActivityStreamsObject = i +} + +// SetActivityStreamsPreview sets the "preview" property. +func (this *FunkwhaleAlbum) SetActivityStreamsPreview(i vocab.ActivityStreamsPreviewProperty) { + this.ActivityStreamsPreview = i +} + +// SetActivityStreamsPublished sets the "published" property. +func (this *FunkwhaleAlbum) SetActivityStreamsPublished(i vocab.ActivityStreamsPublishedProperty) { + this.ActivityStreamsPublished = i +} + +// SetActivityStreamsReplies sets the "replies" property. +func (this *FunkwhaleAlbum) SetActivityStreamsReplies(i vocab.ActivityStreamsRepliesProperty) { + this.ActivityStreamsReplies = i +} + +// SetActivityStreamsSensitive sets the "sensitive" property. +func (this *FunkwhaleAlbum) SetActivityStreamsSensitive(i vocab.ActivityStreamsSensitiveProperty) { + this.ActivityStreamsSensitive = i +} + +// SetActivityStreamsShares sets the "shares" property. +func (this *FunkwhaleAlbum) SetActivityStreamsShares(i vocab.ActivityStreamsSharesProperty) { + this.ActivityStreamsShares = i +} + +// SetActivityStreamsSource sets the "source" property. +func (this *FunkwhaleAlbum) SetActivityStreamsSource(i vocab.ActivityStreamsSourceProperty) { + this.ActivityStreamsSource = i +} + +// SetActivityStreamsStartTime sets the "startTime" property. +func (this *FunkwhaleAlbum) SetActivityStreamsStartTime(i vocab.ActivityStreamsStartTimeProperty) { + this.ActivityStreamsStartTime = i +} + +// SetActivityStreamsSummary sets the "summary" property. +func (this *FunkwhaleAlbum) SetActivityStreamsSummary(i vocab.ActivityStreamsSummaryProperty) { + this.ActivityStreamsSummary = i +} + +// SetActivityStreamsTag sets the "tag" property. +func (this *FunkwhaleAlbum) SetActivityStreamsTag(i vocab.ActivityStreamsTagProperty) { + this.ActivityStreamsTag = i +} + +// SetActivityStreamsTo sets the "to" property. +func (this *FunkwhaleAlbum) SetActivityStreamsTo(i vocab.ActivityStreamsToProperty) { + this.ActivityStreamsTo = i +} + +// SetActivityStreamsUpdated sets the "updated" property. +func (this *FunkwhaleAlbum) SetActivityStreamsUpdated(i vocab.ActivityStreamsUpdatedProperty) { + this.ActivityStreamsUpdated = i +} + +// SetActivityStreamsUrl sets the "url" property. +func (this *FunkwhaleAlbum) SetActivityStreamsUrl(i vocab.ActivityStreamsUrlProperty) { + this.ActivityStreamsUrl = i +} + +// SetJSONLDId sets the "id" property. +func (this *FunkwhaleAlbum) SetJSONLDId(i vocab.JSONLDIdProperty) { + this.JSONLDId = i +} + +// SetJSONLDType sets the "type" property. +func (this *FunkwhaleAlbum) SetJSONLDType(i vocab.JSONLDTypeProperty) { + this.JSONLDType = i +} + +// VocabularyURI returns the vocabulary's URI as a string. +func (this FunkwhaleAlbum) VocabularyURI() string { + return "https://funkwhale.audio/ns" +} + +// helperJSONLDContext obtains the context uris and their aliases from a property, +// if it is not nil. +func (this FunkwhaleAlbum) helperJSONLDContext(i jsonldContexter, toMerge map[string]string) map[string]string { + if i == nil { + return toMerge + } + for k, v := range i.JSONLDContext() { + /* + Since the literal maps in this function are determined at + code-generation time, this loop should not overwrite an existing key with a + new value. + */ + toMerge[k] = v + } + return toMerge +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_doc.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_doc.go new file mode 100644 index 000000000..80f858e0e --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_doc.go @@ -0,0 +1,17 @@ +// Code generated by astool. DO NOT EDIT. + +// Package typeartist contains the implementation for the Artist type. All +// applications are strongly encouraged to use the interface instead of this +// concrete definition. The interfaces allow applications to consume only the +// types and properties needed and be independent of the go-fed implementation +// if another alternative implementation is created. This package is +// code-generated and subject to the same license as the go-fed tool used to +// generate it. +// +// This package is independent of other types' and properties' implementations +// by having a Manager injected into it to act as a factory for the concrete +// implementations. The implementations have been generated into their own +// separate subpackages for each vocabulary. +// +// Strongly consider using the interfaces instead of this package. +package typeartist diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_pkg.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_pkg.go new file mode 100644 index 000000000..4577939d5 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_pkg.go @@ -0,0 +1,179 @@ +// Code generated by astool. DO NOT EDIT. + +package typeartist + +import vocab "code.superseriousbusiness.org/activity/streams/vocab" + +var mgr privateManager + +var typePropertyConstructor func() vocab.JSONLDTypeProperty + +// privateManager abstracts the code-generated manager that provides access to +// concrete implementations. +type privateManager interface { + // DeserializeAltitudePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAltitudeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAltitudePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAltitudeProperty, error) + // DeserializeAttachmentPropertyActivityStreams returns the + // deserialization method for the "ActivityStreamsAttachmentProperty" + // non-functional property in the vocabulary "ActivityStreams" + DeserializeAttachmentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttachmentProperty, error) + // DeserializeAttributedToPropertyActivityStreams returns the + // deserialization method for the + // "ActivityStreamsAttributedToProperty" non-functional property in + // the vocabulary "ActivityStreams" + DeserializeAttributedToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttributedToProperty, error) + // DeserializeAudiencePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAudienceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAudiencePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAudienceProperty, error) + // DeserializeBccPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBccProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBccPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBccProperty, error) + // DeserializeBtoPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBtoProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBtoPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBtoProperty, error) + // DeserializeCcPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsCcProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeCcPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsCcProperty, error) + // DeserializeContentPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContentProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContentProperty, error) + // DeserializeContextPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContextProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContextPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContextProperty, error) + // DeserializeDurationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsDurationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeDurationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsDurationProperty, error) + // DeserializeEndTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsEndTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeEndTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsEndTimeProperty, error) + // DeserializeGeneratorPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsGeneratorProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeGeneratorPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsGeneratorProperty, error) + // DeserializeIconPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsIconProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeIconPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsIconProperty, error) + // DeserializeIdPropertyJSONLD returns the deserialization method for the + // "JSONLDIdProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeIdPropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDIdProperty, error) + // DeserializeImagePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsImageProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeImagePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsImageProperty, error) + // DeserializeInReplyToPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsInReplyToProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeInReplyToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsInReplyToProperty, error) + // DeserializeLikesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLikesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLikesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLikesProperty, error) + // DeserializeLocationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLocationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLocationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLocationProperty, error) + // DeserializeMediaTypePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsMediaTypeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeMediaTypePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsMediaTypeProperty, error) + // DeserializeNamePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsNameProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeNamePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsNameProperty, error) + // DeserializeObjectPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsObjectProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeObjectPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsObjectProperty, error) + // DeserializePreviewPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPreviewProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePreviewPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPreviewProperty, error) + // DeserializePublishedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPublishedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePublishedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPublishedProperty, error) + // DeserializeRepliesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsRepliesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeRepliesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsRepliesProperty, error) + // DeserializeSensitivePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSensitiveProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSensitivePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSensitiveProperty, error) + // DeserializeSharesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSharesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSharesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSharesProperty, error) + // DeserializeSourcePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSourceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSourcePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSourceProperty, error) + // DeserializeStartTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsStartTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeStartTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsStartTimeProperty, error) + // DeserializeSummaryPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSummaryProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSummaryPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSummaryProperty, error) + // DeserializeTagPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsTagProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeTagPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsTagProperty, error) + // DeserializeToPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsToProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsToProperty, error) + // DeserializeTypePropertyJSONLD returns the deserialization method for + // the "JSONLDTypeProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeTypePropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDTypeProperty, error) + // DeserializeUpdatedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUpdatedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeUpdatedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUpdatedProperty, error) + // DeserializeUrlPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUrlProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeUrlPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUrlProperty, error) +} + +// jsonldContexter is a private interface to determine the JSON-LD contexts and +// aliases needed for functional and non-functional properties. It is a helper +// interface for this implementation. +type jsonldContexter interface { + // JSONLDContext returns the JSONLD URIs required in the context string + // for this property and the specific values that are set. The value + // in the map is the alias used to import the property's value or + // values. + JSONLDContext() map[string]string +} + +// SetManager sets the manager package-global variable. For internal use only, do +// not use as part of Application behavior. Must be called at golang init time. +func SetManager(m privateManager) { + mgr = m +} + +// SetTypePropertyConstructor sets the "type" property's constructor in the +// package-global variable. For internal use only, do not use as part of +// Application behavior. Must be called at golang init time. Permits +// ActivityStreams types to correctly set their "type" property at +// construction time, so users don't have to remember to do so each time. It +// is dependency injected so other go-fed compatible implementations could +// inject their own type. +func SetTypePropertyConstructor(f func() vocab.JSONLDTypeProperty) { + typePropertyConstructor = f +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_type_funkwhale_artist.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_type_funkwhale_artist.go new file mode 100644 index 000000000..ef3295d36 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_artist/gen_type_funkwhale_artist.go @@ -0,0 +1,1639 @@ +// Code generated by astool. DO NOT EDIT. + +package typeartist + +import ( + vocab "code.superseriousbusiness.org/activity/streams/vocab" + "fmt" + "strings" +) + +type FunkwhaleArtist struct { + ActivityStreamsAltitude vocab.ActivityStreamsAltitudeProperty + ActivityStreamsAttachment vocab.ActivityStreamsAttachmentProperty + ActivityStreamsAttributedTo vocab.ActivityStreamsAttributedToProperty + ActivityStreamsAudience vocab.ActivityStreamsAudienceProperty + ActivityStreamsBcc vocab.ActivityStreamsBccProperty + ActivityStreamsBto vocab.ActivityStreamsBtoProperty + ActivityStreamsCc vocab.ActivityStreamsCcProperty + ActivityStreamsContent vocab.ActivityStreamsContentProperty + ActivityStreamsContext vocab.ActivityStreamsContextProperty + ActivityStreamsDuration vocab.ActivityStreamsDurationProperty + ActivityStreamsEndTime vocab.ActivityStreamsEndTimeProperty + ActivityStreamsGenerator vocab.ActivityStreamsGeneratorProperty + ActivityStreamsIcon vocab.ActivityStreamsIconProperty + JSONLDId vocab.JSONLDIdProperty + ActivityStreamsImage vocab.ActivityStreamsImageProperty + ActivityStreamsInReplyTo vocab.ActivityStreamsInReplyToProperty + ActivityStreamsLikes vocab.ActivityStreamsLikesProperty + ActivityStreamsLocation vocab.ActivityStreamsLocationProperty + ActivityStreamsMediaType vocab.ActivityStreamsMediaTypeProperty + ActivityStreamsName vocab.ActivityStreamsNameProperty + ActivityStreamsObject vocab.ActivityStreamsObjectProperty + ActivityStreamsPreview vocab.ActivityStreamsPreviewProperty + ActivityStreamsPublished vocab.ActivityStreamsPublishedProperty + ActivityStreamsReplies vocab.ActivityStreamsRepliesProperty + ActivityStreamsSensitive vocab.ActivityStreamsSensitiveProperty + ActivityStreamsShares vocab.ActivityStreamsSharesProperty + ActivityStreamsSource vocab.ActivityStreamsSourceProperty + ActivityStreamsStartTime vocab.ActivityStreamsStartTimeProperty + ActivityStreamsSummary vocab.ActivityStreamsSummaryProperty + ActivityStreamsTag vocab.ActivityStreamsTagProperty + ActivityStreamsTo vocab.ActivityStreamsToProperty + JSONLDType vocab.JSONLDTypeProperty + ActivityStreamsUpdated vocab.ActivityStreamsUpdatedProperty + ActivityStreamsUrl vocab.ActivityStreamsUrlProperty + alias string + unknown map[string]interface{} +} + +// ArtistIsDisjointWith returns true if the other provided type is disjoint with +// the Artist type. +func ArtistIsDisjointWith(other vocab.Type) bool { + disjointWith := []string{"Hashtag", "Link", "Mention"} + for _, disjoint := range disjointWith { + if disjoint == other.GetTypeName() { + return true + } + } + return false +} + +// ArtistIsExtendedBy returns true if the other provided type extends from the +// Artist type. Note that it returns false if the types are the same; see the +// "IsOrExtendsArtist" variant instead. +func ArtistIsExtendedBy(other vocab.Type) bool { + // Shortcut implementation: is not extended by anything. + return false +} + +// DeserializeArtist creates a Artist from a map representation that has been +// unmarshalled from a text or binary format. +func DeserializeArtist(m map[string]interface{}, aliasMap map[string]string) (*FunkwhaleArtist, error) { + alias := "" + aliasPrefix := "" + if a, ok := aliasMap["https://funkwhale.audio/ns"]; ok { + alias = a + aliasPrefix = a + ":" + } + this := &FunkwhaleArtist{ + alias: alias, + unknown: make(map[string]interface{}), + } + if typeValue, ok := m["type"]; !ok { + return nil, fmt.Errorf("no \"type\" property in map") + } else if typeString, ok := typeValue.(string); ok { + typeName := strings.TrimPrefix(typeString, aliasPrefix) + if typeName != "Artist" { + return nil, fmt.Errorf("\"type\" property is not of %q type: %s", "Artist", typeName) + } + // Fall through, success in finding a proper Type + } else if arrType, ok := typeValue.([]interface{}); ok { + found := false + for _, elemVal := range arrType { + if typeString, ok := elemVal.(string); ok && strings.TrimPrefix(typeString, aliasPrefix) == "Artist" { + found = true + break + } + } + if !found { + return nil, fmt.Errorf("could not find a \"type\" property of value %q", "Artist") + } + // Fall through, success in finding a proper Type + } else { + return nil, fmt.Errorf("\"type\" property is unrecognized type: %T", typeValue) + } + // Begin: Known property deserialization + if p, err := mgr.DeserializeAltitudePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAltitude = p + } + if p, err := mgr.DeserializeAttachmentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttachment = p + } + if p, err := mgr.DeserializeAttributedToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttributedTo = p + } + if p, err := mgr.DeserializeAudiencePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAudience = p + } + if p, err := mgr.DeserializeBccPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBcc = p + } + if p, err := mgr.DeserializeBtoPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBto = p + } + if p, err := mgr.DeserializeCcPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsCc = p + } + if p, err := mgr.DeserializeContentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContent = p + } + if p, err := mgr.DeserializeContextPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContext = p + } + if p, err := mgr.DeserializeDurationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsDuration = p + } + if p, err := mgr.DeserializeEndTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsEndTime = p + } + if p, err := mgr.DeserializeGeneratorPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsGenerator = p + } + if p, err := mgr.DeserializeIconPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsIcon = p + } + if p, err := mgr.DeserializeIdPropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDId = p + } + if p, err := mgr.DeserializeImagePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsImage = p + } + if p, err := mgr.DeserializeInReplyToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsInReplyTo = p + } + if p, err := mgr.DeserializeLikesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLikes = p + } + if p, err := mgr.DeserializeLocationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLocation = p + } + if p, err := mgr.DeserializeMediaTypePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsMediaType = p + } + if p, err := mgr.DeserializeNamePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsName = p + } + if p, err := mgr.DeserializeObjectPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsObject = p + } + if p, err := mgr.DeserializePreviewPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPreview = p + } + if p, err := mgr.DeserializePublishedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPublished = p + } + if p, err := mgr.DeserializeRepliesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsReplies = p + } + if p, err := mgr.DeserializeSensitivePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSensitive = p + } + if p, err := mgr.DeserializeSharesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsShares = p + } + if p, err := mgr.DeserializeSourcePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSource = p + } + if p, err := mgr.DeserializeStartTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsStartTime = p + } + if p, err := mgr.DeserializeSummaryPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSummary = p + } + if p, err := mgr.DeserializeTagPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTag = p + } + if p, err := mgr.DeserializeToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTo = p + } + if p, err := mgr.DeserializeTypePropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDType = p + } + if p, err := mgr.DeserializeUpdatedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUpdated = p + } + if p, err := mgr.DeserializeUrlPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUrl = p + } + // End: Known property deserialization + + // Begin: Unknown deserialization + for k, v := range m { + // Begin: Code that ensures a property name is unknown + if k == "altitude" { + continue + } else if k == "attachment" { + continue + } else if k == "attributedTo" { + continue + } else if k == "audience" { + continue + } else if k == "bcc" { + continue + } else if k == "bto" { + continue + } else if k == "cc" { + continue + } else if k == "content" { + continue + } else if k == "contentMap" { + continue + } else if k == "context" { + continue + } else if k == "duration" { + continue + } else if k == "endTime" { + continue + } else if k == "generator" { + continue + } else if k == "icon" { + continue + } else if k == "id" { + continue + } else if k == "image" { + continue + } else if k == "inReplyTo" { + continue + } else if k == "likes" { + continue + } else if k == "location" { + continue + } else if k == "mediaType" { + continue + } else if k == "name" { + continue + } else if k == "nameMap" { + continue + } else if k == "object" { + continue + } else if k == "preview" { + continue + } else if k == "published" { + continue + } else if k == "replies" { + continue + } else if k == "sensitive" { + continue + } else if k == "shares" { + continue + } else if k == "source" { + continue + } else if k == "startTime" { + continue + } else if k == "summary" { + continue + } else if k == "summaryMap" { + continue + } else if k == "tag" { + continue + } else if k == "to" { + continue + } else if k == "type" { + continue + } else if k == "updated" { + continue + } else if k == "url" { + continue + } // End: Code that ensures a property name is unknown + + this.unknown[k] = v + } + // End: Unknown deserialization + + return this, nil +} + +// FunkwhaleArtistExtends returns true if the Artist type extends from the other +// type. +func FunkwhaleArtistExtends(other vocab.Type) bool { + extensions := []string{"Object"} + for _, ext := range extensions { + if ext == other.GetTypeName() { + return true + } + } + return false +} + +// IsOrExtendsArtist returns true if the other provided type is the Artist type or +// extends from the Artist type. +func IsOrExtendsArtist(other vocab.Type) bool { + if other.GetTypeName() == "Artist" { + return true + } + return ArtistIsExtendedBy(other) +} + +// NewFunkwhaleArtist creates a new Artist type +func NewFunkwhaleArtist() *FunkwhaleArtist { + typeProp := typePropertyConstructor() + typeProp.AppendXMLSchemaString("Artist") + return &FunkwhaleArtist{ + JSONLDType: typeProp, + alias: "", + unknown: make(map[string]interface{}), + } +} + +// GetActivityStreamsAltitude returns the "altitude" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsAltitude() vocab.ActivityStreamsAltitudeProperty { + return this.ActivityStreamsAltitude +} + +// GetActivityStreamsAttachment returns the "attachment" property if it exists, +// and nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsAttachment() vocab.ActivityStreamsAttachmentProperty { + return this.ActivityStreamsAttachment +} + +// GetActivityStreamsAttributedTo returns the "attributedTo" property if it +// exists, and nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsAttributedTo() vocab.ActivityStreamsAttributedToProperty { + return this.ActivityStreamsAttributedTo +} + +// GetActivityStreamsAudience returns the "audience" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsAudience() vocab.ActivityStreamsAudienceProperty { + return this.ActivityStreamsAudience +} + +// GetActivityStreamsBcc returns the "bcc" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsBcc() vocab.ActivityStreamsBccProperty { + return this.ActivityStreamsBcc +} + +// GetActivityStreamsBto returns the "bto" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsBto() vocab.ActivityStreamsBtoProperty { + return this.ActivityStreamsBto +} + +// GetActivityStreamsCc returns the "cc" property if it exists, and nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsCc() vocab.ActivityStreamsCcProperty { + return this.ActivityStreamsCc +} + +// GetActivityStreamsContent returns the "content" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsContent() vocab.ActivityStreamsContentProperty { + return this.ActivityStreamsContent +} + +// GetActivityStreamsContext returns the "context" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsContext() vocab.ActivityStreamsContextProperty { + return this.ActivityStreamsContext +} + +// GetActivityStreamsDuration returns the "duration" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsDuration() vocab.ActivityStreamsDurationProperty { + return this.ActivityStreamsDuration +} + +// GetActivityStreamsEndTime returns the "endTime" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsEndTime() vocab.ActivityStreamsEndTimeProperty { + return this.ActivityStreamsEndTime +} + +// GetActivityStreamsGenerator returns the "generator" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsGenerator() vocab.ActivityStreamsGeneratorProperty { + return this.ActivityStreamsGenerator +} + +// GetActivityStreamsIcon returns the "icon" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsIcon() vocab.ActivityStreamsIconProperty { + return this.ActivityStreamsIcon +} + +// GetActivityStreamsImage returns the "image" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsImage() vocab.ActivityStreamsImageProperty { + return this.ActivityStreamsImage +} + +// GetActivityStreamsInReplyTo returns the "inReplyTo" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsInReplyTo() vocab.ActivityStreamsInReplyToProperty { + return this.ActivityStreamsInReplyTo +} + +// GetActivityStreamsLikes returns the "likes" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsLikes() vocab.ActivityStreamsLikesProperty { + return this.ActivityStreamsLikes +} + +// GetActivityStreamsLocation returns the "location" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsLocation() vocab.ActivityStreamsLocationProperty { + return this.ActivityStreamsLocation +} + +// GetActivityStreamsMediaType returns the "mediaType" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsMediaType() vocab.ActivityStreamsMediaTypeProperty { + return this.ActivityStreamsMediaType +} + +// GetActivityStreamsName returns the "name" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsName() vocab.ActivityStreamsNameProperty { + return this.ActivityStreamsName +} + +// GetActivityStreamsObject returns the "object" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsObject() vocab.ActivityStreamsObjectProperty { + return this.ActivityStreamsObject +} + +// GetActivityStreamsPreview returns the "preview" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsPreview() vocab.ActivityStreamsPreviewProperty { + return this.ActivityStreamsPreview +} + +// GetActivityStreamsPublished returns the "published" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsPublished() vocab.ActivityStreamsPublishedProperty { + return this.ActivityStreamsPublished +} + +// GetActivityStreamsReplies returns the "replies" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsReplies() vocab.ActivityStreamsRepliesProperty { + return this.ActivityStreamsReplies +} + +// GetActivityStreamsSensitive returns the "sensitive" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsSensitive() vocab.ActivityStreamsSensitiveProperty { + return this.ActivityStreamsSensitive +} + +// GetActivityStreamsShares returns the "shares" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsShares() vocab.ActivityStreamsSharesProperty { + return this.ActivityStreamsShares +} + +// GetActivityStreamsSource returns the "source" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsSource() vocab.ActivityStreamsSourceProperty { + return this.ActivityStreamsSource +} + +// GetActivityStreamsStartTime returns the "startTime" property if it exists, and +// nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsStartTime() vocab.ActivityStreamsStartTimeProperty { + return this.ActivityStreamsStartTime +} + +// GetActivityStreamsSummary returns the "summary" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsSummary() vocab.ActivityStreamsSummaryProperty { + return this.ActivityStreamsSummary +} + +// GetActivityStreamsTag returns the "tag" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsTag() vocab.ActivityStreamsTagProperty { + return this.ActivityStreamsTag +} + +// GetActivityStreamsTo returns the "to" property if it exists, and nil otherwise. +func (this FunkwhaleArtist) GetActivityStreamsTo() vocab.ActivityStreamsToProperty { + return this.ActivityStreamsTo +} + +// GetActivityStreamsUpdated returns the "updated" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsUpdated() vocab.ActivityStreamsUpdatedProperty { + return this.ActivityStreamsUpdated +} + +// GetActivityStreamsUrl returns the "url" property if it exists, and nil +// otherwise. +func (this FunkwhaleArtist) GetActivityStreamsUrl() vocab.ActivityStreamsUrlProperty { + return this.ActivityStreamsUrl +} + +// GetJSONLDId returns the "id" property if it exists, and nil otherwise. +func (this FunkwhaleArtist) GetJSONLDId() vocab.JSONLDIdProperty { + return this.JSONLDId +} + +// GetJSONLDType returns the "type" property if it exists, and nil otherwise. +func (this FunkwhaleArtist) GetJSONLDType() vocab.JSONLDTypeProperty { + return this.JSONLDType +} + +// GetTypeName returns the name of this type. +func (this FunkwhaleArtist) GetTypeName() string { + return "Artist" +} + +// GetUnknownProperties returns the unknown properties for the Artist type. Note +// that this should not be used by app developers. It is only used to help +// determine which implementation is LessThan the other. Developers who are +// creating a different implementation of this type's interface can use this +// method in their LessThan implementation, but routine ActivityPub +// applications should not use this to bypass the code generation tool. +func (this FunkwhaleArtist) GetUnknownProperties() map[string]interface{} { + return this.unknown +} + +// IsExtending returns true if the Artist type extends from the other type. +func (this FunkwhaleArtist) IsExtending(other vocab.Type) bool { + return FunkwhaleArtistExtends(other) +} + +// JSONLDContext returns the JSONLD URIs required in the context string for this +// type and the specific properties that are set. The value in the map is the +// alias used to import the type and its properties. +func (this FunkwhaleArtist) JSONLDContext() map[string]string { + m := map[string]string{"https://funkwhale.audio/ns": this.alias} + m = this.helperJSONLDContext(this.ActivityStreamsAltitude, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttachment, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttributedTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsAudience, m) + m = this.helperJSONLDContext(this.ActivityStreamsBcc, m) + m = this.helperJSONLDContext(this.ActivityStreamsBto, m) + m = this.helperJSONLDContext(this.ActivityStreamsCc, m) + m = this.helperJSONLDContext(this.ActivityStreamsContent, m) + m = this.helperJSONLDContext(this.ActivityStreamsContext, m) + m = this.helperJSONLDContext(this.ActivityStreamsDuration, m) + m = this.helperJSONLDContext(this.ActivityStreamsEndTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsGenerator, m) + m = this.helperJSONLDContext(this.ActivityStreamsIcon, m) + m = this.helperJSONLDContext(this.JSONLDId, m) + m = this.helperJSONLDContext(this.ActivityStreamsImage, m) + m = this.helperJSONLDContext(this.ActivityStreamsInReplyTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsLikes, m) + m = this.helperJSONLDContext(this.ActivityStreamsLocation, m) + m = this.helperJSONLDContext(this.ActivityStreamsMediaType, m) + m = this.helperJSONLDContext(this.ActivityStreamsName, m) + m = this.helperJSONLDContext(this.ActivityStreamsObject, m) + m = this.helperJSONLDContext(this.ActivityStreamsPreview, m) + m = this.helperJSONLDContext(this.ActivityStreamsPublished, m) + m = this.helperJSONLDContext(this.ActivityStreamsReplies, m) + m = this.helperJSONLDContext(this.ActivityStreamsSensitive, m) + m = this.helperJSONLDContext(this.ActivityStreamsShares, m) + m = this.helperJSONLDContext(this.ActivityStreamsSource, m) + m = this.helperJSONLDContext(this.ActivityStreamsStartTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsSummary, m) + m = this.helperJSONLDContext(this.ActivityStreamsTag, m) + m = this.helperJSONLDContext(this.ActivityStreamsTo, m) + m = this.helperJSONLDContext(this.JSONLDType, m) + m = this.helperJSONLDContext(this.ActivityStreamsUpdated, m) + m = this.helperJSONLDContext(this.ActivityStreamsUrl, m) + + return m +} + +// LessThan computes if this Artist is lesser, with an arbitrary but stable +// determination. +func (this FunkwhaleArtist) LessThan(o vocab.FunkwhaleArtist) bool { + // Begin: Compare known properties + // Compare property "altitude" + if lhs, rhs := this.ActivityStreamsAltitude, o.GetActivityStreamsAltitude(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attachment" + if lhs, rhs := this.ActivityStreamsAttachment, o.GetActivityStreamsAttachment(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attributedTo" + if lhs, rhs := this.ActivityStreamsAttributedTo, o.GetActivityStreamsAttributedTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "audience" + if lhs, rhs := this.ActivityStreamsAudience, o.GetActivityStreamsAudience(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bcc" + if lhs, rhs := this.ActivityStreamsBcc, o.GetActivityStreamsBcc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bto" + if lhs, rhs := this.ActivityStreamsBto, o.GetActivityStreamsBto(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "cc" + if lhs, rhs := this.ActivityStreamsCc, o.GetActivityStreamsCc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "content" + if lhs, rhs := this.ActivityStreamsContent, o.GetActivityStreamsContent(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "context" + if lhs, rhs := this.ActivityStreamsContext, o.GetActivityStreamsContext(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "duration" + if lhs, rhs := this.ActivityStreamsDuration, o.GetActivityStreamsDuration(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "endTime" + if lhs, rhs := this.ActivityStreamsEndTime, o.GetActivityStreamsEndTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "generator" + if lhs, rhs := this.ActivityStreamsGenerator, o.GetActivityStreamsGenerator(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "icon" + if lhs, rhs := this.ActivityStreamsIcon, o.GetActivityStreamsIcon(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "id" + if lhs, rhs := this.JSONLDId, o.GetJSONLDId(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "image" + if lhs, rhs := this.ActivityStreamsImage, o.GetActivityStreamsImage(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "inReplyTo" + if lhs, rhs := this.ActivityStreamsInReplyTo, o.GetActivityStreamsInReplyTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "likes" + if lhs, rhs := this.ActivityStreamsLikes, o.GetActivityStreamsLikes(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "location" + if lhs, rhs := this.ActivityStreamsLocation, o.GetActivityStreamsLocation(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "mediaType" + if lhs, rhs := this.ActivityStreamsMediaType, o.GetActivityStreamsMediaType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "name" + if lhs, rhs := this.ActivityStreamsName, o.GetActivityStreamsName(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "object" + if lhs, rhs := this.ActivityStreamsObject, o.GetActivityStreamsObject(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "preview" + if lhs, rhs := this.ActivityStreamsPreview, o.GetActivityStreamsPreview(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "published" + if lhs, rhs := this.ActivityStreamsPublished, o.GetActivityStreamsPublished(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "replies" + if lhs, rhs := this.ActivityStreamsReplies, o.GetActivityStreamsReplies(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "sensitive" + if lhs, rhs := this.ActivityStreamsSensitive, o.GetActivityStreamsSensitive(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "shares" + if lhs, rhs := this.ActivityStreamsShares, o.GetActivityStreamsShares(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "source" + if lhs, rhs := this.ActivityStreamsSource, o.GetActivityStreamsSource(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "startTime" + if lhs, rhs := this.ActivityStreamsStartTime, o.GetActivityStreamsStartTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "summary" + if lhs, rhs := this.ActivityStreamsSummary, o.GetActivityStreamsSummary(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "tag" + if lhs, rhs := this.ActivityStreamsTag, o.GetActivityStreamsTag(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "to" + if lhs, rhs := this.ActivityStreamsTo, o.GetActivityStreamsTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "type" + if lhs, rhs := this.JSONLDType, o.GetJSONLDType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "updated" + if lhs, rhs := this.ActivityStreamsUpdated, o.GetActivityStreamsUpdated(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "url" + if lhs, rhs := this.ActivityStreamsUrl, o.GetActivityStreamsUrl(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // End: Compare known properties + + // Begin: Compare unknown properties (only by number of them) + if len(this.unknown) < len(o.GetUnknownProperties()) { + return true + } else if len(o.GetUnknownProperties()) < len(this.unknown) { + return false + } // End: Compare unknown properties (only by number of them) + + // All properties are the same. + return false +} + +// Serialize converts this into an interface representation suitable for +// marshalling into a text or binary format. +func (this FunkwhaleArtist) Serialize() (map[string]interface{}, error) { + m := make(map[string]interface{}) + typeName := "Artist" + if len(this.alias) > 0 { + typeName = this.alias + ":" + "Artist" + } + m["type"] = typeName + // Begin: Serialize known properties + // Maybe serialize property "altitude" + if this.ActivityStreamsAltitude != nil { + if i, err := this.ActivityStreamsAltitude.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAltitude.Name()] = i + } + } + // Maybe serialize property "attachment" + if this.ActivityStreamsAttachment != nil { + if i, err := this.ActivityStreamsAttachment.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttachment.Name()] = i + } + } + // Maybe serialize property "attributedTo" + if this.ActivityStreamsAttributedTo != nil { + if i, err := this.ActivityStreamsAttributedTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttributedTo.Name()] = i + } + } + // Maybe serialize property "audience" + if this.ActivityStreamsAudience != nil { + if i, err := this.ActivityStreamsAudience.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAudience.Name()] = i + } + } + // Maybe serialize property "bcc" + if this.ActivityStreamsBcc != nil { + if i, err := this.ActivityStreamsBcc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBcc.Name()] = i + } + } + // Maybe serialize property "bto" + if this.ActivityStreamsBto != nil { + if i, err := this.ActivityStreamsBto.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBto.Name()] = i + } + } + // Maybe serialize property "cc" + if this.ActivityStreamsCc != nil { + if i, err := this.ActivityStreamsCc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsCc.Name()] = i + } + } + // Maybe serialize property "content" + if this.ActivityStreamsContent != nil { + if i, err := this.ActivityStreamsContent.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContent.Name()] = i + } + } + // Maybe serialize property "context" + if this.ActivityStreamsContext != nil { + if i, err := this.ActivityStreamsContext.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContext.Name()] = i + } + } + // Maybe serialize property "duration" + if this.ActivityStreamsDuration != nil { + if i, err := this.ActivityStreamsDuration.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsDuration.Name()] = i + } + } + // Maybe serialize property "endTime" + if this.ActivityStreamsEndTime != nil { + if i, err := this.ActivityStreamsEndTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsEndTime.Name()] = i + } + } + // Maybe serialize property "generator" + if this.ActivityStreamsGenerator != nil { + if i, err := this.ActivityStreamsGenerator.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsGenerator.Name()] = i + } + } + // Maybe serialize property "icon" + if this.ActivityStreamsIcon != nil { + if i, err := this.ActivityStreamsIcon.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsIcon.Name()] = i + } + } + // Maybe serialize property "id" + if this.JSONLDId != nil { + if i, err := this.JSONLDId.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDId.Name()] = i + } + } + // Maybe serialize property "image" + if this.ActivityStreamsImage != nil { + if i, err := this.ActivityStreamsImage.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsImage.Name()] = i + } + } + // Maybe serialize property "inReplyTo" + if this.ActivityStreamsInReplyTo != nil { + if i, err := this.ActivityStreamsInReplyTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsInReplyTo.Name()] = i + } + } + // Maybe serialize property "likes" + if this.ActivityStreamsLikes != nil { + if i, err := this.ActivityStreamsLikes.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLikes.Name()] = i + } + } + // Maybe serialize property "location" + if this.ActivityStreamsLocation != nil { + if i, err := this.ActivityStreamsLocation.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLocation.Name()] = i + } + } + // Maybe serialize property "mediaType" + if this.ActivityStreamsMediaType != nil { + if i, err := this.ActivityStreamsMediaType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsMediaType.Name()] = i + } + } + // Maybe serialize property "name" + if this.ActivityStreamsName != nil { + if i, err := this.ActivityStreamsName.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsName.Name()] = i + } + } + // Maybe serialize property "object" + if this.ActivityStreamsObject != nil { + if i, err := this.ActivityStreamsObject.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsObject.Name()] = i + } + } + // Maybe serialize property "preview" + if this.ActivityStreamsPreview != nil { + if i, err := this.ActivityStreamsPreview.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPreview.Name()] = i + } + } + // Maybe serialize property "published" + if this.ActivityStreamsPublished != nil { + if i, err := this.ActivityStreamsPublished.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPublished.Name()] = i + } + } + // Maybe serialize property "replies" + if this.ActivityStreamsReplies != nil { + if i, err := this.ActivityStreamsReplies.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsReplies.Name()] = i + } + } + // Maybe serialize property "sensitive" + if this.ActivityStreamsSensitive != nil { + if i, err := this.ActivityStreamsSensitive.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSensitive.Name()] = i + } + } + // Maybe serialize property "shares" + if this.ActivityStreamsShares != nil { + if i, err := this.ActivityStreamsShares.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsShares.Name()] = i + } + } + // Maybe serialize property "source" + if this.ActivityStreamsSource != nil { + if i, err := this.ActivityStreamsSource.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSource.Name()] = i + } + } + // Maybe serialize property "startTime" + if this.ActivityStreamsStartTime != nil { + if i, err := this.ActivityStreamsStartTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsStartTime.Name()] = i + } + } + // Maybe serialize property "summary" + if this.ActivityStreamsSummary != nil { + if i, err := this.ActivityStreamsSummary.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSummary.Name()] = i + } + } + // Maybe serialize property "tag" + if this.ActivityStreamsTag != nil { + if i, err := this.ActivityStreamsTag.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTag.Name()] = i + } + } + // Maybe serialize property "to" + if this.ActivityStreamsTo != nil { + if i, err := this.ActivityStreamsTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTo.Name()] = i + } + } + // Maybe serialize property "type" + if this.JSONLDType != nil { + if i, err := this.JSONLDType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDType.Name()] = i + } + } + // Maybe serialize property "updated" + if this.ActivityStreamsUpdated != nil { + if i, err := this.ActivityStreamsUpdated.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUpdated.Name()] = i + } + } + // Maybe serialize property "url" + if this.ActivityStreamsUrl != nil { + if i, err := this.ActivityStreamsUrl.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUrl.Name()] = i + } + } + // End: Serialize known properties + + // Begin: Serialize unknown properties + for k, v := range this.unknown { + // To be safe, ensure we aren't overwriting a known property + if _, has := m[k]; !has { + m[k] = v + } + } + // End: Serialize unknown properties + + return m, nil +} + +// SetActivityStreamsAltitude sets the "altitude" property. +func (this *FunkwhaleArtist) SetActivityStreamsAltitude(i vocab.ActivityStreamsAltitudeProperty) { + this.ActivityStreamsAltitude = i +} + +// SetActivityStreamsAttachment sets the "attachment" property. +func (this *FunkwhaleArtist) SetActivityStreamsAttachment(i vocab.ActivityStreamsAttachmentProperty) { + this.ActivityStreamsAttachment = i +} + +// SetActivityStreamsAttributedTo sets the "attributedTo" property. +func (this *FunkwhaleArtist) SetActivityStreamsAttributedTo(i vocab.ActivityStreamsAttributedToProperty) { + this.ActivityStreamsAttributedTo = i +} + +// SetActivityStreamsAudience sets the "audience" property. +func (this *FunkwhaleArtist) SetActivityStreamsAudience(i vocab.ActivityStreamsAudienceProperty) { + this.ActivityStreamsAudience = i +} + +// SetActivityStreamsBcc sets the "bcc" property. +func (this *FunkwhaleArtist) SetActivityStreamsBcc(i vocab.ActivityStreamsBccProperty) { + this.ActivityStreamsBcc = i +} + +// SetActivityStreamsBto sets the "bto" property. +func (this *FunkwhaleArtist) SetActivityStreamsBto(i vocab.ActivityStreamsBtoProperty) { + this.ActivityStreamsBto = i +} + +// SetActivityStreamsCc sets the "cc" property. +func (this *FunkwhaleArtist) SetActivityStreamsCc(i vocab.ActivityStreamsCcProperty) { + this.ActivityStreamsCc = i +} + +// SetActivityStreamsContent sets the "content" property. +func (this *FunkwhaleArtist) SetActivityStreamsContent(i vocab.ActivityStreamsContentProperty) { + this.ActivityStreamsContent = i +} + +// SetActivityStreamsContext sets the "context" property. +func (this *FunkwhaleArtist) SetActivityStreamsContext(i vocab.ActivityStreamsContextProperty) { + this.ActivityStreamsContext = i +} + +// SetActivityStreamsDuration sets the "duration" property. +func (this *FunkwhaleArtist) SetActivityStreamsDuration(i vocab.ActivityStreamsDurationProperty) { + this.ActivityStreamsDuration = i +} + +// SetActivityStreamsEndTime sets the "endTime" property. +func (this *FunkwhaleArtist) SetActivityStreamsEndTime(i vocab.ActivityStreamsEndTimeProperty) { + this.ActivityStreamsEndTime = i +} + +// SetActivityStreamsGenerator sets the "generator" property. +func (this *FunkwhaleArtist) SetActivityStreamsGenerator(i vocab.ActivityStreamsGeneratorProperty) { + this.ActivityStreamsGenerator = i +} + +// SetActivityStreamsIcon sets the "icon" property. +func (this *FunkwhaleArtist) SetActivityStreamsIcon(i vocab.ActivityStreamsIconProperty) { + this.ActivityStreamsIcon = i +} + +// SetActivityStreamsImage sets the "image" property. +func (this *FunkwhaleArtist) SetActivityStreamsImage(i vocab.ActivityStreamsImageProperty) { + this.ActivityStreamsImage = i +} + +// SetActivityStreamsInReplyTo sets the "inReplyTo" property. +func (this *FunkwhaleArtist) SetActivityStreamsInReplyTo(i vocab.ActivityStreamsInReplyToProperty) { + this.ActivityStreamsInReplyTo = i +} + +// SetActivityStreamsLikes sets the "likes" property. +func (this *FunkwhaleArtist) SetActivityStreamsLikes(i vocab.ActivityStreamsLikesProperty) { + this.ActivityStreamsLikes = i +} + +// SetActivityStreamsLocation sets the "location" property. +func (this *FunkwhaleArtist) SetActivityStreamsLocation(i vocab.ActivityStreamsLocationProperty) { + this.ActivityStreamsLocation = i +} + +// SetActivityStreamsMediaType sets the "mediaType" property. +func (this *FunkwhaleArtist) SetActivityStreamsMediaType(i vocab.ActivityStreamsMediaTypeProperty) { + this.ActivityStreamsMediaType = i +} + +// SetActivityStreamsName sets the "name" property. +func (this *FunkwhaleArtist) SetActivityStreamsName(i vocab.ActivityStreamsNameProperty) { + this.ActivityStreamsName = i +} + +// SetActivityStreamsObject sets the "object" property. +func (this *FunkwhaleArtist) SetActivityStreamsObject(i vocab.ActivityStreamsObjectProperty) { + this.ActivityStreamsObject = i +} + +// SetActivityStreamsPreview sets the "preview" property. +func (this *FunkwhaleArtist) SetActivityStreamsPreview(i vocab.ActivityStreamsPreviewProperty) { + this.ActivityStreamsPreview = i +} + +// SetActivityStreamsPublished sets the "published" property. +func (this *FunkwhaleArtist) SetActivityStreamsPublished(i vocab.ActivityStreamsPublishedProperty) { + this.ActivityStreamsPublished = i +} + +// SetActivityStreamsReplies sets the "replies" property. +func (this *FunkwhaleArtist) SetActivityStreamsReplies(i vocab.ActivityStreamsRepliesProperty) { + this.ActivityStreamsReplies = i +} + +// SetActivityStreamsSensitive sets the "sensitive" property. +func (this *FunkwhaleArtist) SetActivityStreamsSensitive(i vocab.ActivityStreamsSensitiveProperty) { + this.ActivityStreamsSensitive = i +} + +// SetActivityStreamsShares sets the "shares" property. +func (this *FunkwhaleArtist) SetActivityStreamsShares(i vocab.ActivityStreamsSharesProperty) { + this.ActivityStreamsShares = i +} + +// SetActivityStreamsSource sets the "source" property. +func (this *FunkwhaleArtist) SetActivityStreamsSource(i vocab.ActivityStreamsSourceProperty) { + this.ActivityStreamsSource = i +} + +// SetActivityStreamsStartTime sets the "startTime" property. +func (this *FunkwhaleArtist) SetActivityStreamsStartTime(i vocab.ActivityStreamsStartTimeProperty) { + this.ActivityStreamsStartTime = i +} + +// SetActivityStreamsSummary sets the "summary" property. +func (this *FunkwhaleArtist) SetActivityStreamsSummary(i vocab.ActivityStreamsSummaryProperty) { + this.ActivityStreamsSummary = i +} + +// SetActivityStreamsTag sets the "tag" property. +func (this *FunkwhaleArtist) SetActivityStreamsTag(i vocab.ActivityStreamsTagProperty) { + this.ActivityStreamsTag = i +} + +// SetActivityStreamsTo sets the "to" property. +func (this *FunkwhaleArtist) SetActivityStreamsTo(i vocab.ActivityStreamsToProperty) { + this.ActivityStreamsTo = i +} + +// SetActivityStreamsUpdated sets the "updated" property. +func (this *FunkwhaleArtist) SetActivityStreamsUpdated(i vocab.ActivityStreamsUpdatedProperty) { + this.ActivityStreamsUpdated = i +} + +// SetActivityStreamsUrl sets the "url" property. +func (this *FunkwhaleArtist) SetActivityStreamsUrl(i vocab.ActivityStreamsUrlProperty) { + this.ActivityStreamsUrl = i +} + +// SetJSONLDId sets the "id" property. +func (this *FunkwhaleArtist) SetJSONLDId(i vocab.JSONLDIdProperty) { + this.JSONLDId = i +} + +// SetJSONLDType sets the "type" property. +func (this *FunkwhaleArtist) SetJSONLDType(i vocab.JSONLDTypeProperty) { + this.JSONLDType = i +} + +// VocabularyURI returns the vocabulary's URI as a string. +func (this FunkwhaleArtist) VocabularyURI() string { + return "https://funkwhale.audio/ns" +} + +// helperJSONLDContext obtains the context uris and their aliases from a property, +// if it is not nil. +func (this FunkwhaleArtist) helperJSONLDContext(i jsonldContexter, toMerge map[string]string) map[string]string { + if i == nil { + return toMerge + } + for k, v := range i.JSONLDContext() { + /* + Since the literal maps in this function are determined at + code-generation time, this loop should not overwrite an existing key with a + new value. + */ + toMerge[k] = v + } + return toMerge +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_doc.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_doc.go new file mode 100644 index 000000000..6e6412376 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_doc.go @@ -0,0 +1,17 @@ +// Code generated by astool. DO NOT EDIT. + +// Package typelibrary contains the implementation for the Library type. All +// applications are strongly encouraged to use the interface instead of this +// concrete definition. The interfaces allow applications to consume only the +// types and properties needed and be independent of the go-fed implementation +// if another alternative implementation is created. This package is +// code-generated and subject to the same license as the go-fed tool used to +// generate it. +// +// This package is independent of other types' and properties' implementations +// by having a Manager injected into it to act as a factory for the concrete +// implementations. The implementations have been generated into their own +// separate subpackages for each vocabulary. +// +// Strongly consider using the interfaces instead of this package. +package typelibrary diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_pkg.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_pkg.go new file mode 100644 index 000000000..d7c7a3e9a --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_pkg.go @@ -0,0 +1,179 @@ +// Code generated by astool. DO NOT EDIT. + +package typelibrary + +import vocab "code.superseriousbusiness.org/activity/streams/vocab" + +var mgr privateManager + +var typePropertyConstructor func() vocab.JSONLDTypeProperty + +// privateManager abstracts the code-generated manager that provides access to +// concrete implementations. +type privateManager interface { + // DeserializeAltitudePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAltitudeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAltitudePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAltitudeProperty, error) + // DeserializeAttachmentPropertyActivityStreams returns the + // deserialization method for the "ActivityStreamsAttachmentProperty" + // non-functional property in the vocabulary "ActivityStreams" + DeserializeAttachmentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttachmentProperty, error) + // DeserializeAttributedToPropertyActivityStreams returns the + // deserialization method for the + // "ActivityStreamsAttributedToProperty" non-functional property in + // the vocabulary "ActivityStreams" + DeserializeAttributedToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttributedToProperty, error) + // DeserializeAudiencePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAudienceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAudiencePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAudienceProperty, error) + // DeserializeBccPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBccProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBccPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBccProperty, error) + // DeserializeBtoPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBtoProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBtoPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBtoProperty, error) + // DeserializeCcPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsCcProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeCcPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsCcProperty, error) + // DeserializeContentPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContentProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContentProperty, error) + // DeserializeContextPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContextProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContextPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContextProperty, error) + // DeserializeDurationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsDurationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeDurationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsDurationProperty, error) + // DeserializeEndTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsEndTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeEndTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsEndTimeProperty, error) + // DeserializeGeneratorPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsGeneratorProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeGeneratorPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsGeneratorProperty, error) + // DeserializeIconPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsIconProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeIconPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsIconProperty, error) + // DeserializeIdPropertyJSONLD returns the deserialization method for the + // "JSONLDIdProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeIdPropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDIdProperty, error) + // DeserializeImagePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsImageProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeImagePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsImageProperty, error) + // DeserializeInReplyToPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsInReplyToProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeInReplyToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsInReplyToProperty, error) + // DeserializeLikesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLikesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLikesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLikesProperty, error) + // DeserializeLocationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLocationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLocationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLocationProperty, error) + // DeserializeMediaTypePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsMediaTypeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeMediaTypePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsMediaTypeProperty, error) + // DeserializeNamePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsNameProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeNamePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsNameProperty, error) + // DeserializeObjectPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsObjectProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeObjectPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsObjectProperty, error) + // DeserializePreviewPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPreviewProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePreviewPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPreviewProperty, error) + // DeserializePublishedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPublishedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePublishedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPublishedProperty, error) + // DeserializeRepliesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsRepliesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeRepliesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsRepliesProperty, error) + // DeserializeSensitivePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSensitiveProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSensitivePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSensitiveProperty, error) + // DeserializeSharesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSharesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSharesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSharesProperty, error) + // DeserializeSourcePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSourceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSourcePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSourceProperty, error) + // DeserializeStartTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsStartTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeStartTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsStartTimeProperty, error) + // DeserializeSummaryPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSummaryProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSummaryPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSummaryProperty, error) + // DeserializeTagPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsTagProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeTagPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsTagProperty, error) + // DeserializeToPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsToProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsToProperty, error) + // DeserializeTypePropertyJSONLD returns the deserialization method for + // the "JSONLDTypeProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeTypePropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDTypeProperty, error) + // DeserializeUpdatedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUpdatedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeUpdatedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUpdatedProperty, error) + // DeserializeUrlPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUrlProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeUrlPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUrlProperty, error) +} + +// jsonldContexter is a private interface to determine the JSON-LD contexts and +// aliases needed for functional and non-functional properties. It is a helper +// interface for this implementation. +type jsonldContexter interface { + // JSONLDContext returns the JSONLD URIs required in the context string + // for this property and the specific values that are set. The value + // in the map is the alias used to import the property's value or + // values. + JSONLDContext() map[string]string +} + +// SetManager sets the manager package-global variable. For internal use only, do +// not use as part of Application behavior. Must be called at golang init time. +func SetManager(m privateManager) { + mgr = m +} + +// SetTypePropertyConstructor sets the "type" property's constructor in the +// package-global variable. For internal use only, do not use as part of +// Application behavior. Must be called at golang init time. Permits +// ActivityStreams types to correctly set their "type" property at +// construction time, so users don't have to remember to do so each time. It +// is dependency injected so other go-fed compatible implementations could +// inject their own type. +func SetTypePropertyConstructor(f func() vocab.JSONLDTypeProperty) { + typePropertyConstructor = f +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_type_funkwhale_library.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_type_funkwhale_library.go new file mode 100644 index 000000000..883265801 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_library/gen_type_funkwhale_library.go @@ -0,0 +1,1639 @@ +// Code generated by astool. DO NOT EDIT. + +package typelibrary + +import ( + vocab "code.superseriousbusiness.org/activity/streams/vocab" + "fmt" + "strings" +) + +type FunkwhaleLibrary struct { + ActivityStreamsAltitude vocab.ActivityStreamsAltitudeProperty + ActivityStreamsAttachment vocab.ActivityStreamsAttachmentProperty + ActivityStreamsAttributedTo vocab.ActivityStreamsAttributedToProperty + ActivityStreamsAudience vocab.ActivityStreamsAudienceProperty + ActivityStreamsBcc vocab.ActivityStreamsBccProperty + ActivityStreamsBto vocab.ActivityStreamsBtoProperty + ActivityStreamsCc vocab.ActivityStreamsCcProperty + ActivityStreamsContent vocab.ActivityStreamsContentProperty + ActivityStreamsContext vocab.ActivityStreamsContextProperty + ActivityStreamsDuration vocab.ActivityStreamsDurationProperty + ActivityStreamsEndTime vocab.ActivityStreamsEndTimeProperty + ActivityStreamsGenerator vocab.ActivityStreamsGeneratorProperty + ActivityStreamsIcon vocab.ActivityStreamsIconProperty + JSONLDId vocab.JSONLDIdProperty + ActivityStreamsImage vocab.ActivityStreamsImageProperty + ActivityStreamsInReplyTo vocab.ActivityStreamsInReplyToProperty + ActivityStreamsLikes vocab.ActivityStreamsLikesProperty + ActivityStreamsLocation vocab.ActivityStreamsLocationProperty + ActivityStreamsMediaType vocab.ActivityStreamsMediaTypeProperty + ActivityStreamsName vocab.ActivityStreamsNameProperty + ActivityStreamsObject vocab.ActivityStreamsObjectProperty + ActivityStreamsPreview vocab.ActivityStreamsPreviewProperty + ActivityStreamsPublished vocab.ActivityStreamsPublishedProperty + ActivityStreamsReplies vocab.ActivityStreamsRepliesProperty + ActivityStreamsSensitive vocab.ActivityStreamsSensitiveProperty + ActivityStreamsShares vocab.ActivityStreamsSharesProperty + ActivityStreamsSource vocab.ActivityStreamsSourceProperty + ActivityStreamsStartTime vocab.ActivityStreamsStartTimeProperty + ActivityStreamsSummary vocab.ActivityStreamsSummaryProperty + ActivityStreamsTag vocab.ActivityStreamsTagProperty + ActivityStreamsTo vocab.ActivityStreamsToProperty + JSONLDType vocab.JSONLDTypeProperty + ActivityStreamsUpdated vocab.ActivityStreamsUpdatedProperty + ActivityStreamsUrl vocab.ActivityStreamsUrlProperty + alias string + unknown map[string]interface{} +} + +// DeserializeLibrary creates a Library from a map representation that has been +// unmarshalled from a text or binary format. +func DeserializeLibrary(m map[string]interface{}, aliasMap map[string]string) (*FunkwhaleLibrary, error) { + alias := "" + aliasPrefix := "" + if a, ok := aliasMap["https://funkwhale.audio/ns"]; ok { + alias = a + aliasPrefix = a + ":" + } + this := &FunkwhaleLibrary{ + alias: alias, + unknown: make(map[string]interface{}), + } + if typeValue, ok := m["type"]; !ok { + return nil, fmt.Errorf("no \"type\" property in map") + } else if typeString, ok := typeValue.(string); ok { + typeName := strings.TrimPrefix(typeString, aliasPrefix) + if typeName != "Library" { + return nil, fmt.Errorf("\"type\" property is not of %q type: %s", "Library", typeName) + } + // Fall through, success in finding a proper Type + } else if arrType, ok := typeValue.([]interface{}); ok { + found := false + for _, elemVal := range arrType { + if typeString, ok := elemVal.(string); ok && strings.TrimPrefix(typeString, aliasPrefix) == "Library" { + found = true + break + } + } + if !found { + return nil, fmt.Errorf("could not find a \"type\" property of value %q", "Library") + } + // Fall through, success in finding a proper Type + } else { + return nil, fmt.Errorf("\"type\" property is unrecognized type: %T", typeValue) + } + // Begin: Known property deserialization + if p, err := mgr.DeserializeAltitudePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAltitude = p + } + if p, err := mgr.DeserializeAttachmentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttachment = p + } + if p, err := mgr.DeserializeAttributedToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttributedTo = p + } + if p, err := mgr.DeserializeAudiencePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAudience = p + } + if p, err := mgr.DeserializeBccPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBcc = p + } + if p, err := mgr.DeserializeBtoPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBto = p + } + if p, err := mgr.DeserializeCcPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsCc = p + } + if p, err := mgr.DeserializeContentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContent = p + } + if p, err := mgr.DeserializeContextPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContext = p + } + if p, err := mgr.DeserializeDurationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsDuration = p + } + if p, err := mgr.DeserializeEndTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsEndTime = p + } + if p, err := mgr.DeserializeGeneratorPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsGenerator = p + } + if p, err := mgr.DeserializeIconPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsIcon = p + } + if p, err := mgr.DeserializeIdPropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDId = p + } + if p, err := mgr.DeserializeImagePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsImage = p + } + if p, err := mgr.DeserializeInReplyToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsInReplyTo = p + } + if p, err := mgr.DeserializeLikesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLikes = p + } + if p, err := mgr.DeserializeLocationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLocation = p + } + if p, err := mgr.DeserializeMediaTypePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsMediaType = p + } + if p, err := mgr.DeserializeNamePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsName = p + } + if p, err := mgr.DeserializeObjectPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsObject = p + } + if p, err := mgr.DeserializePreviewPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPreview = p + } + if p, err := mgr.DeserializePublishedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPublished = p + } + if p, err := mgr.DeserializeRepliesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsReplies = p + } + if p, err := mgr.DeserializeSensitivePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSensitive = p + } + if p, err := mgr.DeserializeSharesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsShares = p + } + if p, err := mgr.DeserializeSourcePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSource = p + } + if p, err := mgr.DeserializeStartTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsStartTime = p + } + if p, err := mgr.DeserializeSummaryPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSummary = p + } + if p, err := mgr.DeserializeTagPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTag = p + } + if p, err := mgr.DeserializeToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTo = p + } + if p, err := mgr.DeserializeTypePropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDType = p + } + if p, err := mgr.DeserializeUpdatedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUpdated = p + } + if p, err := mgr.DeserializeUrlPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUrl = p + } + // End: Known property deserialization + + // Begin: Unknown deserialization + for k, v := range m { + // Begin: Code that ensures a property name is unknown + if k == "altitude" { + continue + } else if k == "attachment" { + continue + } else if k == "attributedTo" { + continue + } else if k == "audience" { + continue + } else if k == "bcc" { + continue + } else if k == "bto" { + continue + } else if k == "cc" { + continue + } else if k == "content" { + continue + } else if k == "contentMap" { + continue + } else if k == "context" { + continue + } else if k == "duration" { + continue + } else if k == "endTime" { + continue + } else if k == "generator" { + continue + } else if k == "icon" { + continue + } else if k == "id" { + continue + } else if k == "image" { + continue + } else if k == "inReplyTo" { + continue + } else if k == "likes" { + continue + } else if k == "location" { + continue + } else if k == "mediaType" { + continue + } else if k == "name" { + continue + } else if k == "nameMap" { + continue + } else if k == "object" { + continue + } else if k == "preview" { + continue + } else if k == "published" { + continue + } else if k == "replies" { + continue + } else if k == "sensitive" { + continue + } else if k == "shares" { + continue + } else if k == "source" { + continue + } else if k == "startTime" { + continue + } else if k == "summary" { + continue + } else if k == "summaryMap" { + continue + } else if k == "tag" { + continue + } else if k == "to" { + continue + } else if k == "type" { + continue + } else if k == "updated" { + continue + } else if k == "url" { + continue + } // End: Code that ensures a property name is unknown + + this.unknown[k] = v + } + // End: Unknown deserialization + + return this, nil +} + +// FunkwhaleLibraryExtends returns true if the Library type extends from the other +// type. +func FunkwhaleLibraryExtends(other vocab.Type) bool { + extensions := []string{"Object"} + for _, ext := range extensions { + if ext == other.GetTypeName() { + return true + } + } + return false +} + +// IsOrExtendsLibrary returns true if the other provided type is the Library type +// or extends from the Library type. +func IsOrExtendsLibrary(other vocab.Type) bool { + if other.GetTypeName() == "Library" { + return true + } + return LibraryIsExtendedBy(other) +} + +// LibraryIsDisjointWith returns true if the other provided type is disjoint with +// the Library type. +func LibraryIsDisjointWith(other vocab.Type) bool { + disjointWith := []string{"Hashtag", "Link", "Mention"} + for _, disjoint := range disjointWith { + if disjoint == other.GetTypeName() { + return true + } + } + return false +} + +// LibraryIsExtendedBy returns true if the other provided type extends from the +// Library type. Note that it returns false if the types are the same; see the +// "IsOrExtendsLibrary" variant instead. +func LibraryIsExtendedBy(other vocab.Type) bool { + // Shortcut implementation: is not extended by anything. + return false +} + +// NewFunkwhaleLibrary creates a new Library type +func NewFunkwhaleLibrary() *FunkwhaleLibrary { + typeProp := typePropertyConstructor() + typeProp.AppendXMLSchemaString("Library") + return &FunkwhaleLibrary{ + JSONLDType: typeProp, + alias: "", + unknown: make(map[string]interface{}), + } +} + +// GetActivityStreamsAltitude returns the "altitude" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsAltitude() vocab.ActivityStreamsAltitudeProperty { + return this.ActivityStreamsAltitude +} + +// GetActivityStreamsAttachment returns the "attachment" property if it exists, +// and nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsAttachment() vocab.ActivityStreamsAttachmentProperty { + return this.ActivityStreamsAttachment +} + +// GetActivityStreamsAttributedTo returns the "attributedTo" property if it +// exists, and nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsAttributedTo() vocab.ActivityStreamsAttributedToProperty { + return this.ActivityStreamsAttributedTo +} + +// GetActivityStreamsAudience returns the "audience" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsAudience() vocab.ActivityStreamsAudienceProperty { + return this.ActivityStreamsAudience +} + +// GetActivityStreamsBcc returns the "bcc" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsBcc() vocab.ActivityStreamsBccProperty { + return this.ActivityStreamsBcc +} + +// GetActivityStreamsBto returns the "bto" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsBto() vocab.ActivityStreamsBtoProperty { + return this.ActivityStreamsBto +} + +// GetActivityStreamsCc returns the "cc" property if it exists, and nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsCc() vocab.ActivityStreamsCcProperty { + return this.ActivityStreamsCc +} + +// GetActivityStreamsContent returns the "content" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsContent() vocab.ActivityStreamsContentProperty { + return this.ActivityStreamsContent +} + +// GetActivityStreamsContext returns the "context" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsContext() vocab.ActivityStreamsContextProperty { + return this.ActivityStreamsContext +} + +// GetActivityStreamsDuration returns the "duration" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsDuration() vocab.ActivityStreamsDurationProperty { + return this.ActivityStreamsDuration +} + +// GetActivityStreamsEndTime returns the "endTime" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsEndTime() vocab.ActivityStreamsEndTimeProperty { + return this.ActivityStreamsEndTime +} + +// GetActivityStreamsGenerator returns the "generator" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsGenerator() vocab.ActivityStreamsGeneratorProperty { + return this.ActivityStreamsGenerator +} + +// GetActivityStreamsIcon returns the "icon" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsIcon() vocab.ActivityStreamsIconProperty { + return this.ActivityStreamsIcon +} + +// GetActivityStreamsImage returns the "image" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsImage() vocab.ActivityStreamsImageProperty { + return this.ActivityStreamsImage +} + +// GetActivityStreamsInReplyTo returns the "inReplyTo" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsInReplyTo() vocab.ActivityStreamsInReplyToProperty { + return this.ActivityStreamsInReplyTo +} + +// GetActivityStreamsLikes returns the "likes" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsLikes() vocab.ActivityStreamsLikesProperty { + return this.ActivityStreamsLikes +} + +// GetActivityStreamsLocation returns the "location" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsLocation() vocab.ActivityStreamsLocationProperty { + return this.ActivityStreamsLocation +} + +// GetActivityStreamsMediaType returns the "mediaType" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsMediaType() vocab.ActivityStreamsMediaTypeProperty { + return this.ActivityStreamsMediaType +} + +// GetActivityStreamsName returns the "name" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsName() vocab.ActivityStreamsNameProperty { + return this.ActivityStreamsName +} + +// GetActivityStreamsObject returns the "object" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsObject() vocab.ActivityStreamsObjectProperty { + return this.ActivityStreamsObject +} + +// GetActivityStreamsPreview returns the "preview" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsPreview() vocab.ActivityStreamsPreviewProperty { + return this.ActivityStreamsPreview +} + +// GetActivityStreamsPublished returns the "published" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsPublished() vocab.ActivityStreamsPublishedProperty { + return this.ActivityStreamsPublished +} + +// GetActivityStreamsReplies returns the "replies" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsReplies() vocab.ActivityStreamsRepliesProperty { + return this.ActivityStreamsReplies +} + +// GetActivityStreamsSensitive returns the "sensitive" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsSensitive() vocab.ActivityStreamsSensitiveProperty { + return this.ActivityStreamsSensitive +} + +// GetActivityStreamsShares returns the "shares" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsShares() vocab.ActivityStreamsSharesProperty { + return this.ActivityStreamsShares +} + +// GetActivityStreamsSource returns the "source" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsSource() vocab.ActivityStreamsSourceProperty { + return this.ActivityStreamsSource +} + +// GetActivityStreamsStartTime returns the "startTime" property if it exists, and +// nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsStartTime() vocab.ActivityStreamsStartTimeProperty { + return this.ActivityStreamsStartTime +} + +// GetActivityStreamsSummary returns the "summary" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsSummary() vocab.ActivityStreamsSummaryProperty { + return this.ActivityStreamsSummary +} + +// GetActivityStreamsTag returns the "tag" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsTag() vocab.ActivityStreamsTagProperty { + return this.ActivityStreamsTag +} + +// GetActivityStreamsTo returns the "to" property if it exists, and nil otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsTo() vocab.ActivityStreamsToProperty { + return this.ActivityStreamsTo +} + +// GetActivityStreamsUpdated returns the "updated" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsUpdated() vocab.ActivityStreamsUpdatedProperty { + return this.ActivityStreamsUpdated +} + +// GetActivityStreamsUrl returns the "url" property if it exists, and nil +// otherwise. +func (this FunkwhaleLibrary) GetActivityStreamsUrl() vocab.ActivityStreamsUrlProperty { + return this.ActivityStreamsUrl +} + +// GetJSONLDId returns the "id" property if it exists, and nil otherwise. +func (this FunkwhaleLibrary) GetJSONLDId() vocab.JSONLDIdProperty { + return this.JSONLDId +} + +// GetJSONLDType returns the "type" property if it exists, and nil otherwise. +func (this FunkwhaleLibrary) GetJSONLDType() vocab.JSONLDTypeProperty { + return this.JSONLDType +} + +// GetTypeName returns the name of this type. +func (this FunkwhaleLibrary) GetTypeName() string { + return "Library" +} + +// GetUnknownProperties returns the unknown properties for the Library type. Note +// that this should not be used by app developers. It is only used to help +// determine which implementation is LessThan the other. Developers who are +// creating a different implementation of this type's interface can use this +// method in their LessThan implementation, but routine ActivityPub +// applications should not use this to bypass the code generation tool. +func (this FunkwhaleLibrary) GetUnknownProperties() map[string]interface{} { + return this.unknown +} + +// IsExtending returns true if the Library type extends from the other type. +func (this FunkwhaleLibrary) IsExtending(other vocab.Type) bool { + return FunkwhaleLibraryExtends(other) +} + +// JSONLDContext returns the JSONLD URIs required in the context string for this +// type and the specific properties that are set. The value in the map is the +// alias used to import the type and its properties. +func (this FunkwhaleLibrary) JSONLDContext() map[string]string { + m := map[string]string{"https://funkwhale.audio/ns": this.alias} + m = this.helperJSONLDContext(this.ActivityStreamsAltitude, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttachment, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttributedTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsAudience, m) + m = this.helperJSONLDContext(this.ActivityStreamsBcc, m) + m = this.helperJSONLDContext(this.ActivityStreamsBto, m) + m = this.helperJSONLDContext(this.ActivityStreamsCc, m) + m = this.helperJSONLDContext(this.ActivityStreamsContent, m) + m = this.helperJSONLDContext(this.ActivityStreamsContext, m) + m = this.helperJSONLDContext(this.ActivityStreamsDuration, m) + m = this.helperJSONLDContext(this.ActivityStreamsEndTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsGenerator, m) + m = this.helperJSONLDContext(this.ActivityStreamsIcon, m) + m = this.helperJSONLDContext(this.JSONLDId, m) + m = this.helperJSONLDContext(this.ActivityStreamsImage, m) + m = this.helperJSONLDContext(this.ActivityStreamsInReplyTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsLikes, m) + m = this.helperJSONLDContext(this.ActivityStreamsLocation, m) + m = this.helperJSONLDContext(this.ActivityStreamsMediaType, m) + m = this.helperJSONLDContext(this.ActivityStreamsName, m) + m = this.helperJSONLDContext(this.ActivityStreamsObject, m) + m = this.helperJSONLDContext(this.ActivityStreamsPreview, m) + m = this.helperJSONLDContext(this.ActivityStreamsPublished, m) + m = this.helperJSONLDContext(this.ActivityStreamsReplies, m) + m = this.helperJSONLDContext(this.ActivityStreamsSensitive, m) + m = this.helperJSONLDContext(this.ActivityStreamsShares, m) + m = this.helperJSONLDContext(this.ActivityStreamsSource, m) + m = this.helperJSONLDContext(this.ActivityStreamsStartTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsSummary, m) + m = this.helperJSONLDContext(this.ActivityStreamsTag, m) + m = this.helperJSONLDContext(this.ActivityStreamsTo, m) + m = this.helperJSONLDContext(this.JSONLDType, m) + m = this.helperJSONLDContext(this.ActivityStreamsUpdated, m) + m = this.helperJSONLDContext(this.ActivityStreamsUrl, m) + + return m +} + +// LessThan computes if this Library is lesser, with an arbitrary but stable +// determination. +func (this FunkwhaleLibrary) LessThan(o vocab.FunkwhaleLibrary) bool { + // Begin: Compare known properties + // Compare property "altitude" + if lhs, rhs := this.ActivityStreamsAltitude, o.GetActivityStreamsAltitude(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attachment" + if lhs, rhs := this.ActivityStreamsAttachment, o.GetActivityStreamsAttachment(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attributedTo" + if lhs, rhs := this.ActivityStreamsAttributedTo, o.GetActivityStreamsAttributedTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "audience" + if lhs, rhs := this.ActivityStreamsAudience, o.GetActivityStreamsAudience(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bcc" + if lhs, rhs := this.ActivityStreamsBcc, o.GetActivityStreamsBcc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bto" + if lhs, rhs := this.ActivityStreamsBto, o.GetActivityStreamsBto(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "cc" + if lhs, rhs := this.ActivityStreamsCc, o.GetActivityStreamsCc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "content" + if lhs, rhs := this.ActivityStreamsContent, o.GetActivityStreamsContent(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "context" + if lhs, rhs := this.ActivityStreamsContext, o.GetActivityStreamsContext(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "duration" + if lhs, rhs := this.ActivityStreamsDuration, o.GetActivityStreamsDuration(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "endTime" + if lhs, rhs := this.ActivityStreamsEndTime, o.GetActivityStreamsEndTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "generator" + if lhs, rhs := this.ActivityStreamsGenerator, o.GetActivityStreamsGenerator(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "icon" + if lhs, rhs := this.ActivityStreamsIcon, o.GetActivityStreamsIcon(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "id" + if lhs, rhs := this.JSONLDId, o.GetJSONLDId(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "image" + if lhs, rhs := this.ActivityStreamsImage, o.GetActivityStreamsImage(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "inReplyTo" + if lhs, rhs := this.ActivityStreamsInReplyTo, o.GetActivityStreamsInReplyTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "likes" + if lhs, rhs := this.ActivityStreamsLikes, o.GetActivityStreamsLikes(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "location" + if lhs, rhs := this.ActivityStreamsLocation, o.GetActivityStreamsLocation(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "mediaType" + if lhs, rhs := this.ActivityStreamsMediaType, o.GetActivityStreamsMediaType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "name" + if lhs, rhs := this.ActivityStreamsName, o.GetActivityStreamsName(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "object" + if lhs, rhs := this.ActivityStreamsObject, o.GetActivityStreamsObject(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "preview" + if lhs, rhs := this.ActivityStreamsPreview, o.GetActivityStreamsPreview(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "published" + if lhs, rhs := this.ActivityStreamsPublished, o.GetActivityStreamsPublished(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "replies" + if lhs, rhs := this.ActivityStreamsReplies, o.GetActivityStreamsReplies(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "sensitive" + if lhs, rhs := this.ActivityStreamsSensitive, o.GetActivityStreamsSensitive(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "shares" + if lhs, rhs := this.ActivityStreamsShares, o.GetActivityStreamsShares(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "source" + if lhs, rhs := this.ActivityStreamsSource, o.GetActivityStreamsSource(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "startTime" + if lhs, rhs := this.ActivityStreamsStartTime, o.GetActivityStreamsStartTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "summary" + if lhs, rhs := this.ActivityStreamsSummary, o.GetActivityStreamsSummary(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "tag" + if lhs, rhs := this.ActivityStreamsTag, o.GetActivityStreamsTag(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "to" + if lhs, rhs := this.ActivityStreamsTo, o.GetActivityStreamsTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "type" + if lhs, rhs := this.JSONLDType, o.GetJSONLDType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "updated" + if lhs, rhs := this.ActivityStreamsUpdated, o.GetActivityStreamsUpdated(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "url" + if lhs, rhs := this.ActivityStreamsUrl, o.GetActivityStreamsUrl(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // End: Compare known properties + + // Begin: Compare unknown properties (only by number of them) + if len(this.unknown) < len(o.GetUnknownProperties()) { + return true + } else if len(o.GetUnknownProperties()) < len(this.unknown) { + return false + } // End: Compare unknown properties (only by number of them) + + // All properties are the same. + return false +} + +// Serialize converts this into an interface representation suitable for +// marshalling into a text or binary format. +func (this FunkwhaleLibrary) Serialize() (map[string]interface{}, error) { + m := make(map[string]interface{}) + typeName := "Library" + if len(this.alias) > 0 { + typeName = this.alias + ":" + "Library" + } + m["type"] = typeName + // Begin: Serialize known properties + // Maybe serialize property "altitude" + if this.ActivityStreamsAltitude != nil { + if i, err := this.ActivityStreamsAltitude.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAltitude.Name()] = i + } + } + // Maybe serialize property "attachment" + if this.ActivityStreamsAttachment != nil { + if i, err := this.ActivityStreamsAttachment.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttachment.Name()] = i + } + } + // Maybe serialize property "attributedTo" + if this.ActivityStreamsAttributedTo != nil { + if i, err := this.ActivityStreamsAttributedTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttributedTo.Name()] = i + } + } + // Maybe serialize property "audience" + if this.ActivityStreamsAudience != nil { + if i, err := this.ActivityStreamsAudience.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAudience.Name()] = i + } + } + // Maybe serialize property "bcc" + if this.ActivityStreamsBcc != nil { + if i, err := this.ActivityStreamsBcc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBcc.Name()] = i + } + } + // Maybe serialize property "bto" + if this.ActivityStreamsBto != nil { + if i, err := this.ActivityStreamsBto.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBto.Name()] = i + } + } + // Maybe serialize property "cc" + if this.ActivityStreamsCc != nil { + if i, err := this.ActivityStreamsCc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsCc.Name()] = i + } + } + // Maybe serialize property "content" + if this.ActivityStreamsContent != nil { + if i, err := this.ActivityStreamsContent.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContent.Name()] = i + } + } + // Maybe serialize property "context" + if this.ActivityStreamsContext != nil { + if i, err := this.ActivityStreamsContext.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContext.Name()] = i + } + } + // Maybe serialize property "duration" + if this.ActivityStreamsDuration != nil { + if i, err := this.ActivityStreamsDuration.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsDuration.Name()] = i + } + } + // Maybe serialize property "endTime" + if this.ActivityStreamsEndTime != nil { + if i, err := this.ActivityStreamsEndTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsEndTime.Name()] = i + } + } + // Maybe serialize property "generator" + if this.ActivityStreamsGenerator != nil { + if i, err := this.ActivityStreamsGenerator.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsGenerator.Name()] = i + } + } + // Maybe serialize property "icon" + if this.ActivityStreamsIcon != nil { + if i, err := this.ActivityStreamsIcon.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsIcon.Name()] = i + } + } + // Maybe serialize property "id" + if this.JSONLDId != nil { + if i, err := this.JSONLDId.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDId.Name()] = i + } + } + // Maybe serialize property "image" + if this.ActivityStreamsImage != nil { + if i, err := this.ActivityStreamsImage.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsImage.Name()] = i + } + } + // Maybe serialize property "inReplyTo" + if this.ActivityStreamsInReplyTo != nil { + if i, err := this.ActivityStreamsInReplyTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsInReplyTo.Name()] = i + } + } + // Maybe serialize property "likes" + if this.ActivityStreamsLikes != nil { + if i, err := this.ActivityStreamsLikes.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLikes.Name()] = i + } + } + // Maybe serialize property "location" + if this.ActivityStreamsLocation != nil { + if i, err := this.ActivityStreamsLocation.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLocation.Name()] = i + } + } + // Maybe serialize property "mediaType" + if this.ActivityStreamsMediaType != nil { + if i, err := this.ActivityStreamsMediaType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsMediaType.Name()] = i + } + } + // Maybe serialize property "name" + if this.ActivityStreamsName != nil { + if i, err := this.ActivityStreamsName.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsName.Name()] = i + } + } + // Maybe serialize property "object" + if this.ActivityStreamsObject != nil { + if i, err := this.ActivityStreamsObject.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsObject.Name()] = i + } + } + // Maybe serialize property "preview" + if this.ActivityStreamsPreview != nil { + if i, err := this.ActivityStreamsPreview.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPreview.Name()] = i + } + } + // Maybe serialize property "published" + if this.ActivityStreamsPublished != nil { + if i, err := this.ActivityStreamsPublished.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPublished.Name()] = i + } + } + // Maybe serialize property "replies" + if this.ActivityStreamsReplies != nil { + if i, err := this.ActivityStreamsReplies.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsReplies.Name()] = i + } + } + // Maybe serialize property "sensitive" + if this.ActivityStreamsSensitive != nil { + if i, err := this.ActivityStreamsSensitive.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSensitive.Name()] = i + } + } + // Maybe serialize property "shares" + if this.ActivityStreamsShares != nil { + if i, err := this.ActivityStreamsShares.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsShares.Name()] = i + } + } + // Maybe serialize property "source" + if this.ActivityStreamsSource != nil { + if i, err := this.ActivityStreamsSource.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSource.Name()] = i + } + } + // Maybe serialize property "startTime" + if this.ActivityStreamsStartTime != nil { + if i, err := this.ActivityStreamsStartTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsStartTime.Name()] = i + } + } + // Maybe serialize property "summary" + if this.ActivityStreamsSummary != nil { + if i, err := this.ActivityStreamsSummary.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSummary.Name()] = i + } + } + // Maybe serialize property "tag" + if this.ActivityStreamsTag != nil { + if i, err := this.ActivityStreamsTag.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTag.Name()] = i + } + } + // Maybe serialize property "to" + if this.ActivityStreamsTo != nil { + if i, err := this.ActivityStreamsTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTo.Name()] = i + } + } + // Maybe serialize property "type" + if this.JSONLDType != nil { + if i, err := this.JSONLDType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDType.Name()] = i + } + } + // Maybe serialize property "updated" + if this.ActivityStreamsUpdated != nil { + if i, err := this.ActivityStreamsUpdated.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUpdated.Name()] = i + } + } + // Maybe serialize property "url" + if this.ActivityStreamsUrl != nil { + if i, err := this.ActivityStreamsUrl.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUrl.Name()] = i + } + } + // End: Serialize known properties + + // Begin: Serialize unknown properties + for k, v := range this.unknown { + // To be safe, ensure we aren't overwriting a known property + if _, has := m[k]; !has { + m[k] = v + } + } + // End: Serialize unknown properties + + return m, nil +} + +// SetActivityStreamsAltitude sets the "altitude" property. +func (this *FunkwhaleLibrary) SetActivityStreamsAltitude(i vocab.ActivityStreamsAltitudeProperty) { + this.ActivityStreamsAltitude = i +} + +// SetActivityStreamsAttachment sets the "attachment" property. +func (this *FunkwhaleLibrary) SetActivityStreamsAttachment(i vocab.ActivityStreamsAttachmentProperty) { + this.ActivityStreamsAttachment = i +} + +// SetActivityStreamsAttributedTo sets the "attributedTo" property. +func (this *FunkwhaleLibrary) SetActivityStreamsAttributedTo(i vocab.ActivityStreamsAttributedToProperty) { + this.ActivityStreamsAttributedTo = i +} + +// SetActivityStreamsAudience sets the "audience" property. +func (this *FunkwhaleLibrary) SetActivityStreamsAudience(i vocab.ActivityStreamsAudienceProperty) { + this.ActivityStreamsAudience = i +} + +// SetActivityStreamsBcc sets the "bcc" property. +func (this *FunkwhaleLibrary) SetActivityStreamsBcc(i vocab.ActivityStreamsBccProperty) { + this.ActivityStreamsBcc = i +} + +// SetActivityStreamsBto sets the "bto" property. +func (this *FunkwhaleLibrary) SetActivityStreamsBto(i vocab.ActivityStreamsBtoProperty) { + this.ActivityStreamsBto = i +} + +// SetActivityStreamsCc sets the "cc" property. +func (this *FunkwhaleLibrary) SetActivityStreamsCc(i vocab.ActivityStreamsCcProperty) { + this.ActivityStreamsCc = i +} + +// SetActivityStreamsContent sets the "content" property. +func (this *FunkwhaleLibrary) SetActivityStreamsContent(i vocab.ActivityStreamsContentProperty) { + this.ActivityStreamsContent = i +} + +// SetActivityStreamsContext sets the "context" property. +func (this *FunkwhaleLibrary) SetActivityStreamsContext(i vocab.ActivityStreamsContextProperty) { + this.ActivityStreamsContext = i +} + +// SetActivityStreamsDuration sets the "duration" property. +func (this *FunkwhaleLibrary) SetActivityStreamsDuration(i vocab.ActivityStreamsDurationProperty) { + this.ActivityStreamsDuration = i +} + +// SetActivityStreamsEndTime sets the "endTime" property. +func (this *FunkwhaleLibrary) SetActivityStreamsEndTime(i vocab.ActivityStreamsEndTimeProperty) { + this.ActivityStreamsEndTime = i +} + +// SetActivityStreamsGenerator sets the "generator" property. +func (this *FunkwhaleLibrary) SetActivityStreamsGenerator(i vocab.ActivityStreamsGeneratorProperty) { + this.ActivityStreamsGenerator = i +} + +// SetActivityStreamsIcon sets the "icon" property. +func (this *FunkwhaleLibrary) SetActivityStreamsIcon(i vocab.ActivityStreamsIconProperty) { + this.ActivityStreamsIcon = i +} + +// SetActivityStreamsImage sets the "image" property. +func (this *FunkwhaleLibrary) SetActivityStreamsImage(i vocab.ActivityStreamsImageProperty) { + this.ActivityStreamsImage = i +} + +// SetActivityStreamsInReplyTo sets the "inReplyTo" property. +func (this *FunkwhaleLibrary) SetActivityStreamsInReplyTo(i vocab.ActivityStreamsInReplyToProperty) { + this.ActivityStreamsInReplyTo = i +} + +// SetActivityStreamsLikes sets the "likes" property. +func (this *FunkwhaleLibrary) SetActivityStreamsLikes(i vocab.ActivityStreamsLikesProperty) { + this.ActivityStreamsLikes = i +} + +// SetActivityStreamsLocation sets the "location" property. +func (this *FunkwhaleLibrary) SetActivityStreamsLocation(i vocab.ActivityStreamsLocationProperty) { + this.ActivityStreamsLocation = i +} + +// SetActivityStreamsMediaType sets the "mediaType" property. +func (this *FunkwhaleLibrary) SetActivityStreamsMediaType(i vocab.ActivityStreamsMediaTypeProperty) { + this.ActivityStreamsMediaType = i +} + +// SetActivityStreamsName sets the "name" property. +func (this *FunkwhaleLibrary) SetActivityStreamsName(i vocab.ActivityStreamsNameProperty) { + this.ActivityStreamsName = i +} + +// SetActivityStreamsObject sets the "object" property. +func (this *FunkwhaleLibrary) SetActivityStreamsObject(i vocab.ActivityStreamsObjectProperty) { + this.ActivityStreamsObject = i +} + +// SetActivityStreamsPreview sets the "preview" property. +func (this *FunkwhaleLibrary) SetActivityStreamsPreview(i vocab.ActivityStreamsPreviewProperty) { + this.ActivityStreamsPreview = i +} + +// SetActivityStreamsPublished sets the "published" property. +func (this *FunkwhaleLibrary) SetActivityStreamsPublished(i vocab.ActivityStreamsPublishedProperty) { + this.ActivityStreamsPublished = i +} + +// SetActivityStreamsReplies sets the "replies" property. +func (this *FunkwhaleLibrary) SetActivityStreamsReplies(i vocab.ActivityStreamsRepliesProperty) { + this.ActivityStreamsReplies = i +} + +// SetActivityStreamsSensitive sets the "sensitive" property. +func (this *FunkwhaleLibrary) SetActivityStreamsSensitive(i vocab.ActivityStreamsSensitiveProperty) { + this.ActivityStreamsSensitive = i +} + +// SetActivityStreamsShares sets the "shares" property. +func (this *FunkwhaleLibrary) SetActivityStreamsShares(i vocab.ActivityStreamsSharesProperty) { + this.ActivityStreamsShares = i +} + +// SetActivityStreamsSource sets the "source" property. +func (this *FunkwhaleLibrary) SetActivityStreamsSource(i vocab.ActivityStreamsSourceProperty) { + this.ActivityStreamsSource = i +} + +// SetActivityStreamsStartTime sets the "startTime" property. +func (this *FunkwhaleLibrary) SetActivityStreamsStartTime(i vocab.ActivityStreamsStartTimeProperty) { + this.ActivityStreamsStartTime = i +} + +// SetActivityStreamsSummary sets the "summary" property. +func (this *FunkwhaleLibrary) SetActivityStreamsSummary(i vocab.ActivityStreamsSummaryProperty) { + this.ActivityStreamsSummary = i +} + +// SetActivityStreamsTag sets the "tag" property. +func (this *FunkwhaleLibrary) SetActivityStreamsTag(i vocab.ActivityStreamsTagProperty) { + this.ActivityStreamsTag = i +} + +// SetActivityStreamsTo sets the "to" property. +func (this *FunkwhaleLibrary) SetActivityStreamsTo(i vocab.ActivityStreamsToProperty) { + this.ActivityStreamsTo = i +} + +// SetActivityStreamsUpdated sets the "updated" property. +func (this *FunkwhaleLibrary) SetActivityStreamsUpdated(i vocab.ActivityStreamsUpdatedProperty) { + this.ActivityStreamsUpdated = i +} + +// SetActivityStreamsUrl sets the "url" property. +func (this *FunkwhaleLibrary) SetActivityStreamsUrl(i vocab.ActivityStreamsUrlProperty) { + this.ActivityStreamsUrl = i +} + +// SetJSONLDId sets the "id" property. +func (this *FunkwhaleLibrary) SetJSONLDId(i vocab.JSONLDIdProperty) { + this.JSONLDId = i +} + +// SetJSONLDType sets the "type" property. +func (this *FunkwhaleLibrary) SetJSONLDType(i vocab.JSONLDTypeProperty) { + this.JSONLDType = i +} + +// VocabularyURI returns the vocabulary's URI as a string. +func (this FunkwhaleLibrary) VocabularyURI() string { + return "https://funkwhale.audio/ns" +} + +// helperJSONLDContext obtains the context uris and their aliases from a property, +// if it is not nil. +func (this FunkwhaleLibrary) helperJSONLDContext(i jsonldContexter, toMerge map[string]string) map[string]string { + if i == nil { + return toMerge + } + for k, v := range i.JSONLDContext() { + /* + Since the literal maps in this function are determined at + code-generation time, this loop should not overwrite an existing key with a + new value. + */ + toMerge[k] = v + } + return toMerge +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_doc.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_doc.go new file mode 100644 index 000000000..fe42a8c8c --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_doc.go @@ -0,0 +1,17 @@ +// Code generated by astool. DO NOT EDIT. + +// Package typetrack contains the implementation for the Track type. All +// applications are strongly encouraged to use the interface instead of this +// concrete definition. The interfaces allow applications to consume only the +// types and properties needed and be independent of the go-fed implementation +// if another alternative implementation is created. This package is +// code-generated and subject to the same license as the go-fed tool used to +// generate it. +// +// This package is independent of other types' and properties' implementations +// by having a Manager injected into it to act as a factory for the concrete +// implementations. The implementations have been generated into their own +// separate subpackages for each vocabulary. +// +// Strongly consider using the interfaces instead of this package. +package typetrack diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_pkg.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_pkg.go new file mode 100644 index 000000000..e049ae958 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_pkg.go @@ -0,0 +1,179 @@ +// Code generated by astool. DO NOT EDIT. + +package typetrack + +import vocab "code.superseriousbusiness.org/activity/streams/vocab" + +var mgr privateManager + +var typePropertyConstructor func() vocab.JSONLDTypeProperty + +// privateManager abstracts the code-generated manager that provides access to +// concrete implementations. +type privateManager interface { + // DeserializeAltitudePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAltitudeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAltitudePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAltitudeProperty, error) + // DeserializeAttachmentPropertyActivityStreams returns the + // deserialization method for the "ActivityStreamsAttachmentProperty" + // non-functional property in the vocabulary "ActivityStreams" + DeserializeAttachmentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttachmentProperty, error) + // DeserializeAttributedToPropertyActivityStreams returns the + // deserialization method for the + // "ActivityStreamsAttributedToProperty" non-functional property in + // the vocabulary "ActivityStreams" + DeserializeAttributedToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAttributedToProperty, error) + // DeserializeAudiencePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsAudienceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeAudiencePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsAudienceProperty, error) + // DeserializeBccPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBccProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBccPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBccProperty, error) + // DeserializeBtoPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsBtoProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeBtoPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsBtoProperty, error) + // DeserializeCcPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsCcProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeCcPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsCcProperty, error) + // DeserializeContentPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContentProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContentProperty, error) + // DeserializeContextPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsContextProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeContextPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsContextProperty, error) + // DeserializeDurationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsDurationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeDurationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsDurationProperty, error) + // DeserializeEndTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsEndTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeEndTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsEndTimeProperty, error) + // DeserializeGeneratorPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsGeneratorProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeGeneratorPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsGeneratorProperty, error) + // DeserializeIconPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsIconProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeIconPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsIconProperty, error) + // DeserializeIdPropertyJSONLD returns the deserialization method for the + // "JSONLDIdProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeIdPropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDIdProperty, error) + // DeserializeImagePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsImageProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeImagePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsImageProperty, error) + // DeserializeInReplyToPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsInReplyToProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeInReplyToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsInReplyToProperty, error) + // DeserializeLikesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLikesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLikesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLikesProperty, error) + // DeserializeLocationPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsLocationProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeLocationPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsLocationProperty, error) + // DeserializeMediaTypePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsMediaTypeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeMediaTypePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsMediaTypeProperty, error) + // DeserializeNamePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsNameProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeNamePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsNameProperty, error) + // DeserializeObjectPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsObjectProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeObjectPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsObjectProperty, error) + // DeserializePreviewPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPreviewProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePreviewPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPreviewProperty, error) + // DeserializePublishedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsPublishedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializePublishedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsPublishedProperty, error) + // DeserializeRepliesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsRepliesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeRepliesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsRepliesProperty, error) + // DeserializeSensitivePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSensitiveProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSensitivePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSensitiveProperty, error) + // DeserializeSharesPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSharesProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSharesPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSharesProperty, error) + // DeserializeSourcePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSourceProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSourcePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSourceProperty, error) + // DeserializeStartTimePropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsStartTimeProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeStartTimePropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsStartTimeProperty, error) + // DeserializeSummaryPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsSummaryProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeSummaryPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsSummaryProperty, error) + // DeserializeTagPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsTagProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeTagPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsTagProperty, error) + // DeserializeToPropertyActivityStreams returns the deserialization method + // for the "ActivityStreamsToProperty" non-functional property in the + // vocabulary "ActivityStreams" + DeserializeToPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsToProperty, error) + // DeserializeTypePropertyJSONLD returns the deserialization method for + // the "JSONLDTypeProperty" non-functional property in the vocabulary + // "JSONLD" + DeserializeTypePropertyJSONLD() func(map[string]interface{}, map[string]string) (vocab.JSONLDTypeProperty, error) + // DeserializeUpdatedPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUpdatedProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeUpdatedPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUpdatedProperty, error) + // DeserializeUrlPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsUrlProperty" non-functional property + // in the vocabulary "ActivityStreams" + DeserializeUrlPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsUrlProperty, error) +} + +// jsonldContexter is a private interface to determine the JSON-LD contexts and +// aliases needed for functional and non-functional properties. It is a helper +// interface for this implementation. +type jsonldContexter interface { + // JSONLDContext returns the JSONLD URIs required in the context string + // for this property and the specific values that are set. The value + // in the map is the alias used to import the property's value or + // values. + JSONLDContext() map[string]string +} + +// SetManager sets the manager package-global variable. For internal use only, do +// not use as part of Application behavior. Must be called at golang init time. +func SetManager(m privateManager) { + mgr = m +} + +// SetTypePropertyConstructor sets the "type" property's constructor in the +// package-global variable. For internal use only, do not use as part of +// Application behavior. Must be called at golang init time. Permits +// ActivityStreams types to correctly set their "type" property at +// construction time, so users don't have to remember to do so each time. It +// is dependency injected so other go-fed compatible implementations could +// inject their own type. +func SetTypePropertyConstructor(f func() vocab.JSONLDTypeProperty) { + typePropertyConstructor = f +} diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_type_funkwhale_track.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_type_funkwhale_track.go new file mode 100644 index 000000000..1ac1f1bb1 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/funkwhale/type_track/gen_type_funkwhale_track.go @@ -0,0 +1,1639 @@ +// Code generated by astool. DO NOT EDIT. + +package typetrack + +import ( + vocab "code.superseriousbusiness.org/activity/streams/vocab" + "fmt" + "strings" +) + +type FunkwhaleTrack struct { + ActivityStreamsAltitude vocab.ActivityStreamsAltitudeProperty + ActivityStreamsAttachment vocab.ActivityStreamsAttachmentProperty + ActivityStreamsAttributedTo vocab.ActivityStreamsAttributedToProperty + ActivityStreamsAudience vocab.ActivityStreamsAudienceProperty + ActivityStreamsBcc vocab.ActivityStreamsBccProperty + ActivityStreamsBto vocab.ActivityStreamsBtoProperty + ActivityStreamsCc vocab.ActivityStreamsCcProperty + ActivityStreamsContent vocab.ActivityStreamsContentProperty + ActivityStreamsContext vocab.ActivityStreamsContextProperty + ActivityStreamsDuration vocab.ActivityStreamsDurationProperty + ActivityStreamsEndTime vocab.ActivityStreamsEndTimeProperty + ActivityStreamsGenerator vocab.ActivityStreamsGeneratorProperty + ActivityStreamsIcon vocab.ActivityStreamsIconProperty + JSONLDId vocab.JSONLDIdProperty + ActivityStreamsImage vocab.ActivityStreamsImageProperty + ActivityStreamsInReplyTo vocab.ActivityStreamsInReplyToProperty + ActivityStreamsLikes vocab.ActivityStreamsLikesProperty + ActivityStreamsLocation vocab.ActivityStreamsLocationProperty + ActivityStreamsMediaType vocab.ActivityStreamsMediaTypeProperty + ActivityStreamsName vocab.ActivityStreamsNameProperty + ActivityStreamsObject vocab.ActivityStreamsObjectProperty + ActivityStreamsPreview vocab.ActivityStreamsPreviewProperty + ActivityStreamsPublished vocab.ActivityStreamsPublishedProperty + ActivityStreamsReplies vocab.ActivityStreamsRepliesProperty + ActivityStreamsSensitive vocab.ActivityStreamsSensitiveProperty + ActivityStreamsShares vocab.ActivityStreamsSharesProperty + ActivityStreamsSource vocab.ActivityStreamsSourceProperty + ActivityStreamsStartTime vocab.ActivityStreamsStartTimeProperty + ActivityStreamsSummary vocab.ActivityStreamsSummaryProperty + ActivityStreamsTag vocab.ActivityStreamsTagProperty + ActivityStreamsTo vocab.ActivityStreamsToProperty + JSONLDType vocab.JSONLDTypeProperty + ActivityStreamsUpdated vocab.ActivityStreamsUpdatedProperty + ActivityStreamsUrl vocab.ActivityStreamsUrlProperty + alias string + unknown map[string]interface{} +} + +// DeserializeTrack creates a Track from a map representation that has been +// unmarshalled from a text or binary format. +func DeserializeTrack(m map[string]interface{}, aliasMap map[string]string) (*FunkwhaleTrack, error) { + alias := "" + aliasPrefix := "" + if a, ok := aliasMap["https://funkwhale.audio/ns"]; ok { + alias = a + aliasPrefix = a + ":" + } + this := &FunkwhaleTrack{ + alias: alias, + unknown: make(map[string]interface{}), + } + if typeValue, ok := m["type"]; !ok { + return nil, fmt.Errorf("no \"type\" property in map") + } else if typeString, ok := typeValue.(string); ok { + typeName := strings.TrimPrefix(typeString, aliasPrefix) + if typeName != "Track" { + return nil, fmt.Errorf("\"type\" property is not of %q type: %s", "Track", typeName) + } + // Fall through, success in finding a proper Type + } else if arrType, ok := typeValue.([]interface{}); ok { + found := false + for _, elemVal := range arrType { + if typeString, ok := elemVal.(string); ok && strings.TrimPrefix(typeString, aliasPrefix) == "Track" { + found = true + break + } + } + if !found { + return nil, fmt.Errorf("could not find a \"type\" property of value %q", "Track") + } + // Fall through, success in finding a proper Type + } else { + return nil, fmt.Errorf("\"type\" property is unrecognized type: %T", typeValue) + } + // Begin: Known property deserialization + if p, err := mgr.DeserializeAltitudePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAltitude = p + } + if p, err := mgr.DeserializeAttachmentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttachment = p + } + if p, err := mgr.DeserializeAttributedToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAttributedTo = p + } + if p, err := mgr.DeserializeAudiencePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsAudience = p + } + if p, err := mgr.DeserializeBccPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBcc = p + } + if p, err := mgr.DeserializeBtoPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsBto = p + } + if p, err := mgr.DeserializeCcPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsCc = p + } + if p, err := mgr.DeserializeContentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContent = p + } + if p, err := mgr.DeserializeContextPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsContext = p + } + if p, err := mgr.DeserializeDurationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsDuration = p + } + if p, err := mgr.DeserializeEndTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsEndTime = p + } + if p, err := mgr.DeserializeGeneratorPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsGenerator = p + } + if p, err := mgr.DeserializeIconPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsIcon = p + } + if p, err := mgr.DeserializeIdPropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDId = p + } + if p, err := mgr.DeserializeImagePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsImage = p + } + if p, err := mgr.DeserializeInReplyToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsInReplyTo = p + } + if p, err := mgr.DeserializeLikesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLikes = p + } + if p, err := mgr.DeserializeLocationPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsLocation = p + } + if p, err := mgr.DeserializeMediaTypePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsMediaType = p + } + if p, err := mgr.DeserializeNamePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsName = p + } + if p, err := mgr.DeserializeObjectPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsObject = p + } + if p, err := mgr.DeserializePreviewPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPreview = p + } + if p, err := mgr.DeserializePublishedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsPublished = p + } + if p, err := mgr.DeserializeRepliesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsReplies = p + } + if p, err := mgr.DeserializeSensitivePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSensitive = p + } + if p, err := mgr.DeserializeSharesPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsShares = p + } + if p, err := mgr.DeserializeSourcePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSource = p + } + if p, err := mgr.DeserializeStartTimePropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsStartTime = p + } + if p, err := mgr.DeserializeSummaryPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsSummary = p + } + if p, err := mgr.DeserializeTagPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTag = p + } + if p, err := mgr.DeserializeToPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTo = p + } + if p, err := mgr.DeserializeTypePropertyJSONLD()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.JSONLDType = p + } + if p, err := mgr.DeserializeUpdatedPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUpdated = p + } + if p, err := mgr.DeserializeUrlPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsUrl = p + } + // End: Known property deserialization + + // Begin: Unknown deserialization + for k, v := range m { + // Begin: Code that ensures a property name is unknown + if k == "altitude" { + continue + } else if k == "attachment" { + continue + } else if k == "attributedTo" { + continue + } else if k == "audience" { + continue + } else if k == "bcc" { + continue + } else if k == "bto" { + continue + } else if k == "cc" { + continue + } else if k == "content" { + continue + } else if k == "contentMap" { + continue + } else if k == "context" { + continue + } else if k == "duration" { + continue + } else if k == "endTime" { + continue + } else if k == "generator" { + continue + } else if k == "icon" { + continue + } else if k == "id" { + continue + } else if k == "image" { + continue + } else if k == "inReplyTo" { + continue + } else if k == "likes" { + continue + } else if k == "location" { + continue + } else if k == "mediaType" { + continue + } else if k == "name" { + continue + } else if k == "nameMap" { + continue + } else if k == "object" { + continue + } else if k == "preview" { + continue + } else if k == "published" { + continue + } else if k == "replies" { + continue + } else if k == "sensitive" { + continue + } else if k == "shares" { + continue + } else if k == "source" { + continue + } else if k == "startTime" { + continue + } else if k == "summary" { + continue + } else if k == "summaryMap" { + continue + } else if k == "tag" { + continue + } else if k == "to" { + continue + } else if k == "type" { + continue + } else if k == "updated" { + continue + } else if k == "url" { + continue + } // End: Code that ensures a property name is unknown + + this.unknown[k] = v + } + // End: Unknown deserialization + + return this, nil +} + +// FunkwhaleTrackExtends returns true if the Track type extends from the other +// type. +func FunkwhaleTrackExtends(other vocab.Type) bool { + extensions := []string{"Object"} + for _, ext := range extensions { + if ext == other.GetTypeName() { + return true + } + } + return false +} + +// IsOrExtendsTrack returns true if the other provided type is the Track type or +// extends from the Track type. +func IsOrExtendsTrack(other vocab.Type) bool { + if other.GetTypeName() == "Track" { + return true + } + return TrackIsExtendedBy(other) +} + +// NewFunkwhaleTrack creates a new Track type +func NewFunkwhaleTrack() *FunkwhaleTrack { + typeProp := typePropertyConstructor() + typeProp.AppendXMLSchemaString("Track") + return &FunkwhaleTrack{ + JSONLDType: typeProp, + alias: "", + unknown: make(map[string]interface{}), + } +} + +// TrackIsDisjointWith returns true if the other provided type is disjoint with +// the Track type. +func TrackIsDisjointWith(other vocab.Type) bool { + disjointWith := []string{"Hashtag", "Link", "Mention"} + for _, disjoint := range disjointWith { + if disjoint == other.GetTypeName() { + return true + } + } + return false +} + +// TrackIsExtendedBy returns true if the other provided type extends from the +// Track type. Note that it returns false if the types are the same; see the +// "IsOrExtendsTrack" variant instead. +func TrackIsExtendedBy(other vocab.Type) bool { + // Shortcut implementation: is not extended by anything. + return false +} + +// GetActivityStreamsAltitude returns the "altitude" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsAltitude() vocab.ActivityStreamsAltitudeProperty { + return this.ActivityStreamsAltitude +} + +// GetActivityStreamsAttachment returns the "attachment" property if it exists, +// and nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsAttachment() vocab.ActivityStreamsAttachmentProperty { + return this.ActivityStreamsAttachment +} + +// GetActivityStreamsAttributedTo returns the "attributedTo" property if it +// exists, and nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsAttributedTo() vocab.ActivityStreamsAttributedToProperty { + return this.ActivityStreamsAttributedTo +} + +// GetActivityStreamsAudience returns the "audience" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsAudience() vocab.ActivityStreamsAudienceProperty { + return this.ActivityStreamsAudience +} + +// GetActivityStreamsBcc returns the "bcc" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsBcc() vocab.ActivityStreamsBccProperty { + return this.ActivityStreamsBcc +} + +// GetActivityStreamsBto returns the "bto" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsBto() vocab.ActivityStreamsBtoProperty { + return this.ActivityStreamsBto +} + +// GetActivityStreamsCc returns the "cc" property if it exists, and nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsCc() vocab.ActivityStreamsCcProperty { + return this.ActivityStreamsCc +} + +// GetActivityStreamsContent returns the "content" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsContent() vocab.ActivityStreamsContentProperty { + return this.ActivityStreamsContent +} + +// GetActivityStreamsContext returns the "context" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsContext() vocab.ActivityStreamsContextProperty { + return this.ActivityStreamsContext +} + +// GetActivityStreamsDuration returns the "duration" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsDuration() vocab.ActivityStreamsDurationProperty { + return this.ActivityStreamsDuration +} + +// GetActivityStreamsEndTime returns the "endTime" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsEndTime() vocab.ActivityStreamsEndTimeProperty { + return this.ActivityStreamsEndTime +} + +// GetActivityStreamsGenerator returns the "generator" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsGenerator() vocab.ActivityStreamsGeneratorProperty { + return this.ActivityStreamsGenerator +} + +// GetActivityStreamsIcon returns the "icon" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsIcon() vocab.ActivityStreamsIconProperty { + return this.ActivityStreamsIcon +} + +// GetActivityStreamsImage returns the "image" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsImage() vocab.ActivityStreamsImageProperty { + return this.ActivityStreamsImage +} + +// GetActivityStreamsInReplyTo returns the "inReplyTo" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsInReplyTo() vocab.ActivityStreamsInReplyToProperty { + return this.ActivityStreamsInReplyTo +} + +// GetActivityStreamsLikes returns the "likes" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsLikes() vocab.ActivityStreamsLikesProperty { + return this.ActivityStreamsLikes +} + +// GetActivityStreamsLocation returns the "location" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsLocation() vocab.ActivityStreamsLocationProperty { + return this.ActivityStreamsLocation +} + +// GetActivityStreamsMediaType returns the "mediaType" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsMediaType() vocab.ActivityStreamsMediaTypeProperty { + return this.ActivityStreamsMediaType +} + +// GetActivityStreamsName returns the "name" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsName() vocab.ActivityStreamsNameProperty { + return this.ActivityStreamsName +} + +// GetActivityStreamsObject returns the "object" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsObject() vocab.ActivityStreamsObjectProperty { + return this.ActivityStreamsObject +} + +// GetActivityStreamsPreview returns the "preview" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsPreview() vocab.ActivityStreamsPreviewProperty { + return this.ActivityStreamsPreview +} + +// GetActivityStreamsPublished returns the "published" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsPublished() vocab.ActivityStreamsPublishedProperty { + return this.ActivityStreamsPublished +} + +// GetActivityStreamsReplies returns the "replies" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsReplies() vocab.ActivityStreamsRepliesProperty { + return this.ActivityStreamsReplies +} + +// GetActivityStreamsSensitive returns the "sensitive" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsSensitive() vocab.ActivityStreamsSensitiveProperty { + return this.ActivityStreamsSensitive +} + +// GetActivityStreamsShares returns the "shares" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsShares() vocab.ActivityStreamsSharesProperty { + return this.ActivityStreamsShares +} + +// GetActivityStreamsSource returns the "source" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsSource() vocab.ActivityStreamsSourceProperty { + return this.ActivityStreamsSource +} + +// GetActivityStreamsStartTime returns the "startTime" property if it exists, and +// nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsStartTime() vocab.ActivityStreamsStartTimeProperty { + return this.ActivityStreamsStartTime +} + +// GetActivityStreamsSummary returns the "summary" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsSummary() vocab.ActivityStreamsSummaryProperty { + return this.ActivityStreamsSummary +} + +// GetActivityStreamsTag returns the "tag" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsTag() vocab.ActivityStreamsTagProperty { + return this.ActivityStreamsTag +} + +// GetActivityStreamsTo returns the "to" property if it exists, and nil otherwise. +func (this FunkwhaleTrack) GetActivityStreamsTo() vocab.ActivityStreamsToProperty { + return this.ActivityStreamsTo +} + +// GetActivityStreamsUpdated returns the "updated" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsUpdated() vocab.ActivityStreamsUpdatedProperty { + return this.ActivityStreamsUpdated +} + +// GetActivityStreamsUrl returns the "url" property if it exists, and nil +// otherwise. +func (this FunkwhaleTrack) GetActivityStreamsUrl() vocab.ActivityStreamsUrlProperty { + return this.ActivityStreamsUrl +} + +// GetJSONLDId returns the "id" property if it exists, and nil otherwise. +func (this FunkwhaleTrack) GetJSONLDId() vocab.JSONLDIdProperty { + return this.JSONLDId +} + +// GetJSONLDType returns the "type" property if it exists, and nil otherwise. +func (this FunkwhaleTrack) GetJSONLDType() vocab.JSONLDTypeProperty { + return this.JSONLDType +} + +// GetTypeName returns the name of this type. +func (this FunkwhaleTrack) GetTypeName() string { + return "Track" +} + +// GetUnknownProperties returns the unknown properties for the Track type. Note +// that this should not be used by app developers. It is only used to help +// determine which implementation is LessThan the other. Developers who are +// creating a different implementation of this type's interface can use this +// method in their LessThan implementation, but routine ActivityPub +// applications should not use this to bypass the code generation tool. +func (this FunkwhaleTrack) GetUnknownProperties() map[string]interface{} { + return this.unknown +} + +// IsExtending returns true if the Track type extends from the other type. +func (this FunkwhaleTrack) IsExtending(other vocab.Type) bool { + return FunkwhaleTrackExtends(other) +} + +// JSONLDContext returns the JSONLD URIs required in the context string for this +// type and the specific properties that are set. The value in the map is the +// alias used to import the type and its properties. +func (this FunkwhaleTrack) JSONLDContext() map[string]string { + m := map[string]string{"https://funkwhale.audio/ns": this.alias} + m = this.helperJSONLDContext(this.ActivityStreamsAltitude, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttachment, m) + m = this.helperJSONLDContext(this.ActivityStreamsAttributedTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsAudience, m) + m = this.helperJSONLDContext(this.ActivityStreamsBcc, m) + m = this.helperJSONLDContext(this.ActivityStreamsBto, m) + m = this.helperJSONLDContext(this.ActivityStreamsCc, m) + m = this.helperJSONLDContext(this.ActivityStreamsContent, m) + m = this.helperJSONLDContext(this.ActivityStreamsContext, m) + m = this.helperJSONLDContext(this.ActivityStreamsDuration, m) + m = this.helperJSONLDContext(this.ActivityStreamsEndTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsGenerator, m) + m = this.helperJSONLDContext(this.ActivityStreamsIcon, m) + m = this.helperJSONLDContext(this.JSONLDId, m) + m = this.helperJSONLDContext(this.ActivityStreamsImage, m) + m = this.helperJSONLDContext(this.ActivityStreamsInReplyTo, m) + m = this.helperJSONLDContext(this.ActivityStreamsLikes, m) + m = this.helperJSONLDContext(this.ActivityStreamsLocation, m) + m = this.helperJSONLDContext(this.ActivityStreamsMediaType, m) + m = this.helperJSONLDContext(this.ActivityStreamsName, m) + m = this.helperJSONLDContext(this.ActivityStreamsObject, m) + m = this.helperJSONLDContext(this.ActivityStreamsPreview, m) + m = this.helperJSONLDContext(this.ActivityStreamsPublished, m) + m = this.helperJSONLDContext(this.ActivityStreamsReplies, m) + m = this.helperJSONLDContext(this.ActivityStreamsSensitive, m) + m = this.helperJSONLDContext(this.ActivityStreamsShares, m) + m = this.helperJSONLDContext(this.ActivityStreamsSource, m) + m = this.helperJSONLDContext(this.ActivityStreamsStartTime, m) + m = this.helperJSONLDContext(this.ActivityStreamsSummary, m) + m = this.helperJSONLDContext(this.ActivityStreamsTag, m) + m = this.helperJSONLDContext(this.ActivityStreamsTo, m) + m = this.helperJSONLDContext(this.JSONLDType, m) + m = this.helperJSONLDContext(this.ActivityStreamsUpdated, m) + m = this.helperJSONLDContext(this.ActivityStreamsUrl, m) + + return m +} + +// LessThan computes if this Track is lesser, with an arbitrary but stable +// determination. +func (this FunkwhaleTrack) LessThan(o vocab.FunkwhaleTrack) bool { + // Begin: Compare known properties + // Compare property "altitude" + if lhs, rhs := this.ActivityStreamsAltitude, o.GetActivityStreamsAltitude(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attachment" + if lhs, rhs := this.ActivityStreamsAttachment, o.GetActivityStreamsAttachment(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "attributedTo" + if lhs, rhs := this.ActivityStreamsAttributedTo, o.GetActivityStreamsAttributedTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "audience" + if lhs, rhs := this.ActivityStreamsAudience, o.GetActivityStreamsAudience(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bcc" + if lhs, rhs := this.ActivityStreamsBcc, o.GetActivityStreamsBcc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "bto" + if lhs, rhs := this.ActivityStreamsBto, o.GetActivityStreamsBto(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "cc" + if lhs, rhs := this.ActivityStreamsCc, o.GetActivityStreamsCc(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "content" + if lhs, rhs := this.ActivityStreamsContent, o.GetActivityStreamsContent(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "context" + if lhs, rhs := this.ActivityStreamsContext, o.GetActivityStreamsContext(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "duration" + if lhs, rhs := this.ActivityStreamsDuration, o.GetActivityStreamsDuration(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "endTime" + if lhs, rhs := this.ActivityStreamsEndTime, o.GetActivityStreamsEndTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "generator" + if lhs, rhs := this.ActivityStreamsGenerator, o.GetActivityStreamsGenerator(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "icon" + if lhs, rhs := this.ActivityStreamsIcon, o.GetActivityStreamsIcon(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "id" + if lhs, rhs := this.JSONLDId, o.GetJSONLDId(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "image" + if lhs, rhs := this.ActivityStreamsImage, o.GetActivityStreamsImage(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "inReplyTo" + if lhs, rhs := this.ActivityStreamsInReplyTo, o.GetActivityStreamsInReplyTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "likes" + if lhs, rhs := this.ActivityStreamsLikes, o.GetActivityStreamsLikes(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "location" + if lhs, rhs := this.ActivityStreamsLocation, o.GetActivityStreamsLocation(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "mediaType" + if lhs, rhs := this.ActivityStreamsMediaType, o.GetActivityStreamsMediaType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "name" + if lhs, rhs := this.ActivityStreamsName, o.GetActivityStreamsName(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "object" + if lhs, rhs := this.ActivityStreamsObject, o.GetActivityStreamsObject(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "preview" + if lhs, rhs := this.ActivityStreamsPreview, o.GetActivityStreamsPreview(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "published" + if lhs, rhs := this.ActivityStreamsPublished, o.GetActivityStreamsPublished(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "replies" + if lhs, rhs := this.ActivityStreamsReplies, o.GetActivityStreamsReplies(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "sensitive" + if lhs, rhs := this.ActivityStreamsSensitive, o.GetActivityStreamsSensitive(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "shares" + if lhs, rhs := this.ActivityStreamsShares, o.GetActivityStreamsShares(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "source" + if lhs, rhs := this.ActivityStreamsSource, o.GetActivityStreamsSource(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "startTime" + if lhs, rhs := this.ActivityStreamsStartTime, o.GetActivityStreamsStartTime(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "summary" + if lhs, rhs := this.ActivityStreamsSummary, o.GetActivityStreamsSummary(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "tag" + if lhs, rhs := this.ActivityStreamsTag, o.GetActivityStreamsTag(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "to" + if lhs, rhs := this.ActivityStreamsTo, o.GetActivityStreamsTo(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "type" + if lhs, rhs := this.JSONLDType, o.GetJSONLDType(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "updated" + if lhs, rhs := this.ActivityStreamsUpdated, o.GetActivityStreamsUpdated(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // Compare property "url" + if lhs, rhs := this.ActivityStreamsUrl, o.GetActivityStreamsUrl(); lhs != nil && rhs != nil { + if lhs.LessThan(rhs) { + return true + } else if rhs.LessThan(lhs) { + return false + } + } else if lhs == nil && rhs != nil { + // Nil is less than anything else + return true + } else if rhs != nil && rhs == nil { + // Anything else is greater than nil + return false + } // Else: Both are nil + // End: Compare known properties + + // Begin: Compare unknown properties (only by number of them) + if len(this.unknown) < len(o.GetUnknownProperties()) { + return true + } else if len(o.GetUnknownProperties()) < len(this.unknown) { + return false + } // End: Compare unknown properties (only by number of them) + + // All properties are the same. + return false +} + +// Serialize converts this into an interface representation suitable for +// marshalling into a text or binary format. +func (this FunkwhaleTrack) Serialize() (map[string]interface{}, error) { + m := make(map[string]interface{}) + typeName := "Track" + if len(this.alias) > 0 { + typeName = this.alias + ":" + "Track" + } + m["type"] = typeName + // Begin: Serialize known properties + // Maybe serialize property "altitude" + if this.ActivityStreamsAltitude != nil { + if i, err := this.ActivityStreamsAltitude.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAltitude.Name()] = i + } + } + // Maybe serialize property "attachment" + if this.ActivityStreamsAttachment != nil { + if i, err := this.ActivityStreamsAttachment.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttachment.Name()] = i + } + } + // Maybe serialize property "attributedTo" + if this.ActivityStreamsAttributedTo != nil { + if i, err := this.ActivityStreamsAttributedTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAttributedTo.Name()] = i + } + } + // Maybe serialize property "audience" + if this.ActivityStreamsAudience != nil { + if i, err := this.ActivityStreamsAudience.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsAudience.Name()] = i + } + } + // Maybe serialize property "bcc" + if this.ActivityStreamsBcc != nil { + if i, err := this.ActivityStreamsBcc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBcc.Name()] = i + } + } + // Maybe serialize property "bto" + if this.ActivityStreamsBto != nil { + if i, err := this.ActivityStreamsBto.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsBto.Name()] = i + } + } + // Maybe serialize property "cc" + if this.ActivityStreamsCc != nil { + if i, err := this.ActivityStreamsCc.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsCc.Name()] = i + } + } + // Maybe serialize property "content" + if this.ActivityStreamsContent != nil { + if i, err := this.ActivityStreamsContent.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContent.Name()] = i + } + } + // Maybe serialize property "context" + if this.ActivityStreamsContext != nil { + if i, err := this.ActivityStreamsContext.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsContext.Name()] = i + } + } + // Maybe serialize property "duration" + if this.ActivityStreamsDuration != nil { + if i, err := this.ActivityStreamsDuration.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsDuration.Name()] = i + } + } + // Maybe serialize property "endTime" + if this.ActivityStreamsEndTime != nil { + if i, err := this.ActivityStreamsEndTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsEndTime.Name()] = i + } + } + // Maybe serialize property "generator" + if this.ActivityStreamsGenerator != nil { + if i, err := this.ActivityStreamsGenerator.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsGenerator.Name()] = i + } + } + // Maybe serialize property "icon" + if this.ActivityStreamsIcon != nil { + if i, err := this.ActivityStreamsIcon.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsIcon.Name()] = i + } + } + // Maybe serialize property "id" + if this.JSONLDId != nil { + if i, err := this.JSONLDId.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDId.Name()] = i + } + } + // Maybe serialize property "image" + if this.ActivityStreamsImage != nil { + if i, err := this.ActivityStreamsImage.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsImage.Name()] = i + } + } + // Maybe serialize property "inReplyTo" + if this.ActivityStreamsInReplyTo != nil { + if i, err := this.ActivityStreamsInReplyTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsInReplyTo.Name()] = i + } + } + // Maybe serialize property "likes" + if this.ActivityStreamsLikes != nil { + if i, err := this.ActivityStreamsLikes.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLikes.Name()] = i + } + } + // Maybe serialize property "location" + if this.ActivityStreamsLocation != nil { + if i, err := this.ActivityStreamsLocation.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsLocation.Name()] = i + } + } + // Maybe serialize property "mediaType" + if this.ActivityStreamsMediaType != nil { + if i, err := this.ActivityStreamsMediaType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsMediaType.Name()] = i + } + } + // Maybe serialize property "name" + if this.ActivityStreamsName != nil { + if i, err := this.ActivityStreamsName.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsName.Name()] = i + } + } + // Maybe serialize property "object" + if this.ActivityStreamsObject != nil { + if i, err := this.ActivityStreamsObject.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsObject.Name()] = i + } + } + // Maybe serialize property "preview" + if this.ActivityStreamsPreview != nil { + if i, err := this.ActivityStreamsPreview.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPreview.Name()] = i + } + } + // Maybe serialize property "published" + if this.ActivityStreamsPublished != nil { + if i, err := this.ActivityStreamsPublished.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsPublished.Name()] = i + } + } + // Maybe serialize property "replies" + if this.ActivityStreamsReplies != nil { + if i, err := this.ActivityStreamsReplies.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsReplies.Name()] = i + } + } + // Maybe serialize property "sensitive" + if this.ActivityStreamsSensitive != nil { + if i, err := this.ActivityStreamsSensitive.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSensitive.Name()] = i + } + } + // Maybe serialize property "shares" + if this.ActivityStreamsShares != nil { + if i, err := this.ActivityStreamsShares.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsShares.Name()] = i + } + } + // Maybe serialize property "source" + if this.ActivityStreamsSource != nil { + if i, err := this.ActivityStreamsSource.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSource.Name()] = i + } + } + // Maybe serialize property "startTime" + if this.ActivityStreamsStartTime != nil { + if i, err := this.ActivityStreamsStartTime.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsStartTime.Name()] = i + } + } + // Maybe serialize property "summary" + if this.ActivityStreamsSummary != nil { + if i, err := this.ActivityStreamsSummary.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsSummary.Name()] = i + } + } + // Maybe serialize property "tag" + if this.ActivityStreamsTag != nil { + if i, err := this.ActivityStreamsTag.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTag.Name()] = i + } + } + // Maybe serialize property "to" + if this.ActivityStreamsTo != nil { + if i, err := this.ActivityStreamsTo.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTo.Name()] = i + } + } + // Maybe serialize property "type" + if this.JSONLDType != nil { + if i, err := this.JSONLDType.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.JSONLDType.Name()] = i + } + } + // Maybe serialize property "updated" + if this.ActivityStreamsUpdated != nil { + if i, err := this.ActivityStreamsUpdated.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUpdated.Name()] = i + } + } + // Maybe serialize property "url" + if this.ActivityStreamsUrl != nil { + if i, err := this.ActivityStreamsUrl.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsUrl.Name()] = i + } + } + // End: Serialize known properties + + // Begin: Serialize unknown properties + for k, v := range this.unknown { + // To be safe, ensure we aren't overwriting a known property + if _, has := m[k]; !has { + m[k] = v + } + } + // End: Serialize unknown properties + + return m, nil +} + +// SetActivityStreamsAltitude sets the "altitude" property. +func (this *FunkwhaleTrack) SetActivityStreamsAltitude(i vocab.ActivityStreamsAltitudeProperty) { + this.ActivityStreamsAltitude = i +} + +// SetActivityStreamsAttachment sets the "attachment" property. +func (this *FunkwhaleTrack) SetActivityStreamsAttachment(i vocab.ActivityStreamsAttachmentProperty) { + this.ActivityStreamsAttachment = i +} + +// SetActivityStreamsAttributedTo sets the "attributedTo" property. +func (this *FunkwhaleTrack) SetActivityStreamsAttributedTo(i vocab.ActivityStreamsAttributedToProperty) { + this.ActivityStreamsAttributedTo = i +} + +// SetActivityStreamsAudience sets the "audience" property. +func (this *FunkwhaleTrack) SetActivityStreamsAudience(i vocab.ActivityStreamsAudienceProperty) { + this.ActivityStreamsAudience = i +} + +// SetActivityStreamsBcc sets the "bcc" property. +func (this *FunkwhaleTrack) SetActivityStreamsBcc(i vocab.ActivityStreamsBccProperty) { + this.ActivityStreamsBcc = i +} + +// SetActivityStreamsBto sets the "bto" property. +func (this *FunkwhaleTrack) SetActivityStreamsBto(i vocab.ActivityStreamsBtoProperty) { + this.ActivityStreamsBto = i +} + +// SetActivityStreamsCc sets the "cc" property. +func (this *FunkwhaleTrack) SetActivityStreamsCc(i vocab.ActivityStreamsCcProperty) { + this.ActivityStreamsCc = i +} + +// SetActivityStreamsContent sets the "content" property. +func (this *FunkwhaleTrack) SetActivityStreamsContent(i vocab.ActivityStreamsContentProperty) { + this.ActivityStreamsContent = i +} + +// SetActivityStreamsContext sets the "context" property. +func (this *FunkwhaleTrack) SetActivityStreamsContext(i vocab.ActivityStreamsContextProperty) { + this.ActivityStreamsContext = i +} + +// SetActivityStreamsDuration sets the "duration" property. +func (this *FunkwhaleTrack) SetActivityStreamsDuration(i vocab.ActivityStreamsDurationProperty) { + this.ActivityStreamsDuration = i +} + +// SetActivityStreamsEndTime sets the "endTime" property. +func (this *FunkwhaleTrack) SetActivityStreamsEndTime(i vocab.ActivityStreamsEndTimeProperty) { + this.ActivityStreamsEndTime = i +} + +// SetActivityStreamsGenerator sets the "generator" property. +func (this *FunkwhaleTrack) SetActivityStreamsGenerator(i vocab.ActivityStreamsGeneratorProperty) { + this.ActivityStreamsGenerator = i +} + +// SetActivityStreamsIcon sets the "icon" property. +func (this *FunkwhaleTrack) SetActivityStreamsIcon(i vocab.ActivityStreamsIconProperty) { + this.ActivityStreamsIcon = i +} + +// SetActivityStreamsImage sets the "image" property. +func (this *FunkwhaleTrack) SetActivityStreamsImage(i vocab.ActivityStreamsImageProperty) { + this.ActivityStreamsImage = i +} + +// SetActivityStreamsInReplyTo sets the "inReplyTo" property. +func (this *FunkwhaleTrack) SetActivityStreamsInReplyTo(i vocab.ActivityStreamsInReplyToProperty) { + this.ActivityStreamsInReplyTo = i +} + +// SetActivityStreamsLikes sets the "likes" property. +func (this *FunkwhaleTrack) SetActivityStreamsLikes(i vocab.ActivityStreamsLikesProperty) { + this.ActivityStreamsLikes = i +} + +// SetActivityStreamsLocation sets the "location" property. +func (this *FunkwhaleTrack) SetActivityStreamsLocation(i vocab.ActivityStreamsLocationProperty) { + this.ActivityStreamsLocation = i +} + +// SetActivityStreamsMediaType sets the "mediaType" property. +func (this *FunkwhaleTrack) SetActivityStreamsMediaType(i vocab.ActivityStreamsMediaTypeProperty) { + this.ActivityStreamsMediaType = i +} + +// SetActivityStreamsName sets the "name" property. +func (this *FunkwhaleTrack) SetActivityStreamsName(i vocab.ActivityStreamsNameProperty) { + this.ActivityStreamsName = i +} + +// SetActivityStreamsObject sets the "object" property. +func (this *FunkwhaleTrack) SetActivityStreamsObject(i vocab.ActivityStreamsObjectProperty) { + this.ActivityStreamsObject = i +} + +// SetActivityStreamsPreview sets the "preview" property. +func (this *FunkwhaleTrack) SetActivityStreamsPreview(i vocab.ActivityStreamsPreviewProperty) { + this.ActivityStreamsPreview = i +} + +// SetActivityStreamsPublished sets the "published" property. +func (this *FunkwhaleTrack) SetActivityStreamsPublished(i vocab.ActivityStreamsPublishedProperty) { + this.ActivityStreamsPublished = i +} + +// SetActivityStreamsReplies sets the "replies" property. +func (this *FunkwhaleTrack) SetActivityStreamsReplies(i vocab.ActivityStreamsRepliesProperty) { + this.ActivityStreamsReplies = i +} + +// SetActivityStreamsSensitive sets the "sensitive" property. +func (this *FunkwhaleTrack) SetActivityStreamsSensitive(i vocab.ActivityStreamsSensitiveProperty) { + this.ActivityStreamsSensitive = i +} + +// SetActivityStreamsShares sets the "shares" property. +func (this *FunkwhaleTrack) SetActivityStreamsShares(i vocab.ActivityStreamsSharesProperty) { + this.ActivityStreamsShares = i +} + +// SetActivityStreamsSource sets the "source" property. +func (this *FunkwhaleTrack) SetActivityStreamsSource(i vocab.ActivityStreamsSourceProperty) { + this.ActivityStreamsSource = i +} + +// SetActivityStreamsStartTime sets the "startTime" property. +func (this *FunkwhaleTrack) SetActivityStreamsStartTime(i vocab.ActivityStreamsStartTimeProperty) { + this.ActivityStreamsStartTime = i +} + +// SetActivityStreamsSummary sets the "summary" property. +func (this *FunkwhaleTrack) SetActivityStreamsSummary(i vocab.ActivityStreamsSummaryProperty) { + this.ActivityStreamsSummary = i +} + +// SetActivityStreamsTag sets the "tag" property. +func (this *FunkwhaleTrack) SetActivityStreamsTag(i vocab.ActivityStreamsTagProperty) { + this.ActivityStreamsTag = i +} + +// SetActivityStreamsTo sets the "to" property. +func (this *FunkwhaleTrack) SetActivityStreamsTo(i vocab.ActivityStreamsToProperty) { + this.ActivityStreamsTo = i +} + +// SetActivityStreamsUpdated sets the "updated" property. +func (this *FunkwhaleTrack) SetActivityStreamsUpdated(i vocab.ActivityStreamsUpdatedProperty) { + this.ActivityStreamsUpdated = i +} + +// SetActivityStreamsUrl sets the "url" property. +func (this *FunkwhaleTrack) SetActivityStreamsUrl(i vocab.ActivityStreamsUrlProperty) { + this.ActivityStreamsUrl = i +} + +// SetJSONLDId sets the "id" property. +func (this *FunkwhaleTrack) SetJSONLDId(i vocab.JSONLDIdProperty) { + this.JSONLDId = i +} + +// SetJSONLDType sets the "type" property. +func (this *FunkwhaleTrack) SetJSONLDType(i vocab.JSONLDTypeProperty) { + this.JSONLDType = i +} + +// VocabularyURI returns the vocabulary's URI as a string. +func (this FunkwhaleTrack) VocabularyURI() string { + return "https://funkwhale.audio/ns" +} + +// helperJSONLDContext obtains the context uris and their aliases from a property, +// if it is not nil. +func (this FunkwhaleTrack) helperJSONLDContext(i jsonldContexter, toMerge map[string]string) map[string]string { + if i == nil { + return toMerge + } + for k, v := range i.JSONLDContext() { + /* + Since the literal maps in this function are determined at + code-generation time, this loop should not overwrite an existing key with a + new value. + */ + toMerge[k] = v + } + return toMerge +} |
