diff options
| author | 2025-07-09 16:50:25 +0200 | |
|---|---|---|
| committer | 2025-07-09 16:50:25 +0200 | |
| commit | dcfc9b7885e7ed4f7886a35ccb3e007c293d3521 (patch) | |
| tree | 3bef2a25b9c8178bdfbece05a5165c94a5a7ae03 /vendor/code.superseriousbusiness.org/activity/streams/impl/litepub | |
| parent | [performance] use our own typed value context types for Value() key checking ... (diff) | |
| download | gotosocial-dcfc9b7885e7ed4f7886a35ccb3e007c293d3521.tar.xz | |
[feature] Use `hidesToPublicFromUnauthedWeb` and `hidesCcPublicFromUnauthedWeb` properties for web visibility of statuses (#4315)
This pull request implements two new properties on ActivityPub actors: `hidesToPublicFromUnauthedWeb` and `hidesCcPublicFromUnauthedWeb`.
As documented, these properties allow actors to signal their preference for whether or not their posts should be hidden from unauthenticated web views (ie., web pages like the GtS frontend, web apps like the Mastodon frontend, web APIs like the Mastodon public timeline API, etc). This allows remote accounts to *opt in* to having their unlisted visibility posts shown in (for example) the replies section of the web view of a GtS thread. In future, we can also use these properties to determine whether we should show boosts of a remote actor's post on a GtS profile, and that sort of thing.
In keeping with our stance around privacy by default, GtS assumes `true` for `hidesCcPublicFromUnauthedWeb` if the property is not set on a remote actor, ie., hide unlisted/unlocked posts by default. `hidesToPublicFromUnauthedWeb` is assumed to be `false` if the property is not set on a remote actor, ie., show public posts by default.
~~WIP as I still want to work on the documentation for this a bit.~~
New props are already in the namespace document: https://gotosocial.org/ns
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4315
Reviewed-by: kim <gruf@noreply.codeberg.org>
Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Co-committed-by: tobi <tobi.smethurst@protonmail.com>
Diffstat (limited to 'vendor/code.superseriousbusiness.org/activity/streams/impl/litepub')
3 files changed, 2088 insertions, 0 deletions
diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_doc.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_doc.go new file mode 100644 index 000000000..87cd993f9 --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_doc.go @@ -0,0 +1,17 @@ +// Code generated by astool. DO NOT EDIT. + +// Package typeemojireact contains the implementation for the EmojiReact 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 typeemojireact diff --git a/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_pkg.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_pkg.go new file mode 100644 index 000000000..c7c5581fd --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_pkg.go @@ -0,0 +1,199 @@ +// Code generated by astool. DO NOT EDIT. + +package typeemojireact + +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 { + // DeserializeActorPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsActorProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeActorPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsActorProperty, error) + // 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) + // DeserializeInstrumentPropertyActivityStreams returns the + // deserialization method for the "ActivityStreamsInstrumentProperty" + // non-functional property in the vocabulary "ActivityStreams" + DeserializeInstrumentPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsInstrumentProperty, 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) + // DeserializeOriginPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsOriginProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeOriginPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsOriginProperty, 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) + // DeserializeResultPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsResultProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeResultPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsResultProperty, 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) + // DeserializeTargetPropertyActivityStreams returns the deserialization + // method for the "ActivityStreamsTargetProperty" non-functional + // property in the vocabulary "ActivityStreams" + DeserializeTargetPropertyActivityStreams() func(map[string]interface{}, map[string]string) (vocab.ActivityStreamsTargetProperty, 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/litepub/type_emojireact/gen_type_litepub_emojireact.go b/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_type_litepub_emojireact.go new file mode 100644 index 000000000..6c5e2f08a --- /dev/null +++ b/vendor/code.superseriousbusiness.org/activity/streams/impl/litepub/type_emojireact/gen_type_litepub_emojireact.go @@ -0,0 +1,1872 @@ +// Code generated by astool. DO NOT EDIT. + +package typeemojireact + +import ( + vocab "code.superseriousbusiness.org/activity/streams/vocab" + "fmt" + "strings" +) + +// { +// "actor": "https://example.org/users/alice", +// "content": ":Kappa:", +// "id": "https://example.org/activities/65379d47-b7aa-4ef6-8e4f-41149dda1d2c", +// "object": "https://example.org/objects/57caeb99-424c-4692-b74f-0a6682050932", +// "tag": [ +// { +// "icon": { +// "mediaType": "image/png", +// "type": "Image", +// "url": "https://example.com/files/kappa.png" +// }, +// "id": "https://example.com/emoji/123", +// "name": ":Kappa:", +// "type": "Emoji" +// } +// ], +// "to": [ +// "https://example.org/users/alice/followers", +// "https://example.org/users/bob" +// ], +// "type": "EmojiReact" +// } +type LitePubEmojiReact struct { + ActivityStreamsActor vocab.ActivityStreamsActorProperty + 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 + ActivityStreamsInstrument vocab.ActivityStreamsInstrumentProperty + ActivityStreamsLikes vocab.ActivityStreamsLikesProperty + ActivityStreamsLocation vocab.ActivityStreamsLocationProperty + ActivityStreamsMediaType vocab.ActivityStreamsMediaTypeProperty + ActivityStreamsName vocab.ActivityStreamsNameProperty + ActivityStreamsObject vocab.ActivityStreamsObjectProperty + ActivityStreamsOrigin vocab.ActivityStreamsOriginProperty + ActivityStreamsPreview vocab.ActivityStreamsPreviewProperty + ActivityStreamsPublished vocab.ActivityStreamsPublishedProperty + ActivityStreamsReplies vocab.ActivityStreamsRepliesProperty + ActivityStreamsResult vocab.ActivityStreamsResultProperty + ActivityStreamsSensitive vocab.ActivityStreamsSensitiveProperty + ActivityStreamsShares vocab.ActivityStreamsSharesProperty + ActivityStreamsSource vocab.ActivityStreamsSourceProperty + ActivityStreamsStartTime vocab.ActivityStreamsStartTimeProperty + ActivityStreamsSummary vocab.ActivityStreamsSummaryProperty + ActivityStreamsTag vocab.ActivityStreamsTagProperty + ActivityStreamsTarget vocab.ActivityStreamsTargetProperty + ActivityStreamsTo vocab.ActivityStreamsToProperty + JSONLDType vocab.JSONLDTypeProperty + ActivityStreamsUpdated vocab.ActivityStreamsUpdatedProperty + ActivityStreamsUrl vocab.ActivityStreamsUrlProperty + alias string + unknown map[string]interface{} +} + +// DeserializeEmojiReact creates a EmojiReact from a map representation that has +// been unmarshalled from a text or binary format. +func DeserializeEmojiReact(m map[string]interface{}, aliasMap map[string]string) (*LitePubEmojiReact, error) { + alias := "" + aliasPrefix := "" + if a, ok := aliasMap["http://litepub.social/ns"]; ok { + alias = a + aliasPrefix = a + ":" + } + this := &LitePubEmojiReact{ + 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 != "EmojiReact" { + return nil, fmt.Errorf("\"type\" property is not of %q type: %s", "EmojiReact", 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) == "EmojiReact" { + found = true + break + } + } + if !found { + return nil, fmt.Errorf("could not find a \"type\" property of value %q", "EmojiReact") + } + // 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.DeserializeActorPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsActor = p + } + 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.DeserializeInstrumentPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsInstrument = 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.DeserializeOriginPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsOrigin = 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.DeserializeResultPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsResult = 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.DeserializeTargetPropertyActivityStreams()(m, aliasMap); err != nil { + return nil, err + } else if p != nil { + this.ActivityStreamsTarget = 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 == "actor" { + continue + } else 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 == "instrument" { + 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 == "origin" { + continue + } else if k == "preview" { + continue + } else if k == "published" { + continue + } else if k == "replies" { + continue + } else if k == "result" { + 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 == "target" { + 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 +} + +// EmojiReactIsDisjointWith returns true if the other provided type is disjoint +// with the EmojiReact type. +func EmojiReactIsDisjointWith(other vocab.Type) bool { + disjointWith := []string{"Hashtag", "Link", "Mention"} + for _, disjoint := range disjointWith { + if disjoint == other.GetTypeName() { + return true + } + } + return false +} + +// EmojiReactIsExtendedBy returns true if the other provided type extends from the +// EmojiReact type. Note that it returns false if the types are the same; see +// the "IsOrExtendsEmojiReact" variant instead. +func EmojiReactIsExtendedBy(other vocab.Type) bool { + // Shortcut implementation: is not extended by anything. + return false +} + +// IsOrExtendsEmojiReact returns true if the other provided type is the EmojiReact +// type or extends from the EmojiReact type. +func IsOrExtendsEmojiReact(other vocab.Type) bool { + if other.GetTypeName() == "EmojiReact" { + return true + } + return EmojiReactIsExtendedBy(other) +} + +// LitePubEmojiReactExtends returns true if the EmojiReact type extends from the +// other type. +func LitePubEmojiReactExtends(other vocab.Type) bool { + extensions := []string{"Activity", "Object"} + for _, ext := range extensions { + if ext == other.GetTypeName() { + return true + } + } + return false +} + +// NewLitePubEmojiReact creates a new EmojiReact type +func NewLitePubEmojiReact() *LitePubEmojiReact { + typeProp := typePropertyConstructor() + typeProp.AppendXMLSchemaString("EmojiReact") + return &LitePubEmojiReact{ + JSONLDType: typeProp, + alias: "", + unknown: make(map[string]interface{}), + } +} + +// GetActivityStreamsActor returns the "actor" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsActor() vocab.ActivityStreamsActorProperty { + return this.ActivityStreamsActor +} + +// GetActivityStreamsAltitude returns the "altitude" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsAltitude() vocab.ActivityStreamsAltitudeProperty { + return this.ActivityStreamsAltitude +} + +// GetActivityStreamsAttachment returns the "attachment" property if it exists, +// and nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsAttachment() vocab.ActivityStreamsAttachmentProperty { + return this.ActivityStreamsAttachment +} + +// GetActivityStreamsAttributedTo returns the "attributedTo" property if it +// exists, and nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsAttributedTo() vocab.ActivityStreamsAttributedToProperty { + return this.ActivityStreamsAttributedTo +} + +// GetActivityStreamsAudience returns the "audience" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsAudience() vocab.ActivityStreamsAudienceProperty { + return this.ActivityStreamsAudience +} + +// GetActivityStreamsBcc returns the "bcc" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsBcc() vocab.ActivityStreamsBccProperty { + return this.ActivityStreamsBcc +} + +// GetActivityStreamsBto returns the "bto" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsBto() vocab.ActivityStreamsBtoProperty { + return this.ActivityStreamsBto +} + +// GetActivityStreamsCc returns the "cc" property if it exists, and nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsCc() vocab.ActivityStreamsCcProperty { + return this.ActivityStreamsCc +} + +// GetActivityStreamsContent returns the "content" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsContent() vocab.ActivityStreamsContentProperty { + return this.ActivityStreamsContent +} + +// GetActivityStreamsContext returns the "context" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsContext() vocab.ActivityStreamsContextProperty { + return this.ActivityStreamsContext +} + +// GetActivityStreamsDuration returns the "duration" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsDuration() vocab.ActivityStreamsDurationProperty { + return this.ActivityStreamsDuration +} + +// GetActivityStreamsEndTime returns the "endTime" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsEndTime() vocab.ActivityStreamsEndTimeProperty { + return this.ActivityStreamsEndTime +} + +// GetActivityStreamsGenerator returns the "generator" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsGenerator() vocab.ActivityStreamsGeneratorProperty { + return this.ActivityStreamsGenerator +} + +// GetActivityStreamsIcon returns the "icon" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsIcon() vocab.ActivityStreamsIconProperty { + return this.ActivityStreamsIcon +} + +// GetActivityStreamsImage returns the "image" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsImage() vocab.ActivityStreamsImageProperty { + return this.ActivityStreamsImage +} + +// GetActivityStreamsInReplyTo returns the "inReplyTo" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsInReplyTo() vocab.ActivityStreamsInReplyToProperty { + return this.ActivityStreamsInReplyTo +} + +// GetActivityStreamsInstrument returns the "instrument" property if it exists, +// and nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsInstrument() vocab.ActivityStreamsInstrumentProperty { + return this.ActivityStreamsInstrument +} + +// GetActivityStreamsLikes returns the "likes" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsLikes() vocab.ActivityStreamsLikesProperty { + return this.ActivityStreamsLikes +} + +// GetActivityStreamsLocation returns the "location" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsLocation() vocab.ActivityStreamsLocationProperty { + return this.ActivityStreamsLocation +} + +// GetActivityStreamsMediaType returns the "mediaType" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsMediaType() vocab.ActivityStreamsMediaTypeProperty { + return this.ActivityStreamsMediaType +} + +// GetActivityStreamsName returns the "name" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsName() vocab.ActivityStreamsNameProperty { + return this.ActivityStreamsName +} + +// GetActivityStreamsObject returns the "object" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsObject() vocab.ActivityStreamsObjectProperty { + return this.ActivityStreamsObject +} + +// GetActivityStreamsOrigin returns the "origin" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsOrigin() vocab.ActivityStreamsOriginProperty { + return this.ActivityStreamsOrigin +} + +// GetActivityStreamsPreview returns the "preview" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsPreview() vocab.ActivityStreamsPreviewProperty { + return this.ActivityStreamsPreview +} + +// GetActivityStreamsPublished returns the "published" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsPublished() vocab.ActivityStreamsPublishedProperty { + return this.ActivityStreamsPublished +} + +// GetActivityStreamsReplies returns the "replies" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsReplies() vocab.ActivityStreamsRepliesProperty { + return this.ActivityStreamsReplies +} + +// GetActivityStreamsResult returns the "result" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsResult() vocab.ActivityStreamsResultProperty { + return this.ActivityStreamsResult +} + +// GetActivityStreamsSensitive returns the "sensitive" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsSensitive() vocab.ActivityStreamsSensitiveProperty { + return this.ActivityStreamsSensitive +} + +// GetActivityStreamsShares returns the "shares" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsShares() vocab.ActivityStreamsSharesProperty { + return this.ActivityStreamsShares +} + +// GetActivityStreamsSource returns the "source" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsSource() vocab.ActivityStreamsSourceProperty { + return this.ActivityStreamsSource +} + +// GetActivityStreamsStartTime returns the "startTime" property if it exists, and +// nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsStartTime() vocab.ActivityStreamsStartTimeProperty { + return this.ActivityStreamsStartTime +} + +// GetActivityStreamsSummary returns the "summary" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsSummary() vocab.ActivityStreamsSummaryProperty { + return this.ActivityStreamsSummary +} + +// GetActivityStreamsTag returns the "tag" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsTag() vocab.ActivityStreamsTagProperty { + return this.ActivityStreamsTag +} + +// GetActivityStreamsTarget returns the "target" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsTarget() vocab.ActivityStreamsTargetProperty { + return this.ActivityStreamsTarget +} + +// GetActivityStreamsTo returns the "to" property if it exists, and nil otherwise. +func (this LitePubEmojiReact) GetActivityStreamsTo() vocab.ActivityStreamsToProperty { + return this.ActivityStreamsTo +} + +// GetActivityStreamsUpdated returns the "updated" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsUpdated() vocab.ActivityStreamsUpdatedProperty { + return this.ActivityStreamsUpdated +} + +// GetActivityStreamsUrl returns the "url" property if it exists, and nil +// otherwise. +func (this LitePubEmojiReact) GetActivityStreamsUrl() vocab.ActivityStreamsUrlProperty { + return this.ActivityStreamsUrl +} + +// GetJSONLDId returns the "id" property if it exists, and nil otherwise. +func (this LitePubEmojiReact) GetJSONLDId() vocab.JSONLDIdProperty { + return this.JSONLDId +} + +// GetJSONLDType returns the "type" property if it exists, and nil otherwise. +func (this LitePubEmojiReact) GetJSONLDType() vocab.JSONLDTypeProperty { + return this.JSONLDType +} + +// GetTypeName returns the name of this type. +func (this LitePubEmojiReact) GetTypeName() string { + return "EmojiReact" +} + +// GetUnknownProperties returns the unknown properties for the EmojiReact 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 LitePubEmojiReact) GetUnknownProperties() map[string]interface{} { + return this.unknown +} + +// IsExtending returns true if the EmojiReact type extends from the other type. +func (this LitePubEmojiReact) IsExtending(other vocab.Type) bool { + return LitePubEmojiReactExtends(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 LitePubEmojiReact) JSONLDContext() map[string]string { + m := map[string]string{"http://litepub.social/ns": this.alias} + m = this.helperJSONLDContext(this.ActivityStreamsActor, m) + 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.ActivityStreamsInstrument, 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.ActivityStreamsOrigin, m) + m = this.helperJSONLDContext(this.ActivityStreamsPreview, m) + m = this.helperJSONLDContext(this.ActivityStreamsPublished, m) + m = this.helperJSONLDContext(this.ActivityStreamsReplies, m) + m = this.helperJSONLDContext(this.ActivityStreamsResult, 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.ActivityStreamsTarget, 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 EmojiReact is lesser, with an arbitrary but stable +// determination. +func (this LitePubEmojiReact) LessThan(o vocab.LitePubEmojiReact) bool { + // Begin: Compare known properties + // Compare property "actor" + if lhs, rhs := this.ActivityStreamsActor, o.GetActivityStreamsActor(); 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 "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 "instrument" + if lhs, rhs := this.ActivityStreamsInstrument, o.GetActivityStreamsInstrument(); 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 "origin" + if lhs, rhs := this.ActivityStreamsOrigin, o.GetActivityStreamsOrigin(); 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 "result" + if lhs, rhs := this.ActivityStreamsResult, o.GetActivityStreamsResult(); 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 "target" + if lhs, rhs := this.ActivityStreamsTarget, o.GetActivityStreamsTarget(); 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 LitePubEmojiReact) Serialize() (map[string]interface{}, error) { + m := make(map[string]interface{}) + typeName := "EmojiReact" + if len(this.alias) > 0 { + typeName = this.alias + ":" + "EmojiReact" + } + m["type"] = typeName + // Begin: Serialize known properties + // Maybe serialize property "actor" + if this.ActivityStreamsActor != nil { + if i, err := this.ActivityStreamsActor.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsActor.Name()] = i + } + } + // 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 "instrument" + if this.ActivityStreamsInstrument != nil { + if i, err := this.ActivityStreamsInstrument.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsInstrument.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 "origin" + if this.ActivityStreamsOrigin != nil { + if i, err := this.ActivityStreamsOrigin.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsOrigin.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 "result" + if this.ActivityStreamsResult != nil { + if i, err := this.ActivityStreamsResult.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsResult.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 "target" + if this.ActivityStreamsTarget != nil { + if i, err := this.ActivityStreamsTarget.Serialize(); err != nil { + return nil, err + } else if i != nil { + m[this.ActivityStreamsTarget.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 +} + +// SetActivityStreamsActor sets the "actor" property. +func (this *LitePubEmojiReact) SetActivityStreamsActor(i vocab.ActivityStreamsActorProperty) { + this.ActivityStreamsActor = i +} + +// SetActivityStreamsAltitude sets the "altitude" property. +func (this *LitePubEmojiReact) SetActivityStreamsAltitude(i vocab.ActivityStreamsAltitudeProperty) { + this.ActivityStreamsAltitude = i +} + +// SetActivityStreamsAttachment sets the "attachment" property. +func (this *LitePubEmojiReact) SetActivityStreamsAttachment(i vocab.ActivityStreamsAttachmentProperty) { + this.ActivityStreamsAttachment = i +} + +// SetActivityStreamsAttributedTo sets the "attributedTo" property. +func (this *LitePubEmojiReact) SetActivityStreamsAttributedTo(i vocab.ActivityStreamsAttributedToProperty) { + this.ActivityStreamsAttributedTo = i +} + +// SetActivityStreamsAudience sets the "audience" property. +func (this *LitePubEmojiReact) SetActivityStreamsAudience(i vocab.ActivityStreamsAudienceProperty) { + this.ActivityStreamsAudience = i +} + +// SetActivityStreamsBcc sets the "bcc" property. +func (this *LitePubEmojiReact) SetActivityStreamsBcc(i vocab.ActivityStreamsBccProperty) { + this.ActivityStreamsBcc = i +} + +// SetActivityStreamsBto sets the "bto" property. +func (this *LitePubEmojiReact) SetActivityStreamsBto(i vocab.ActivityStreamsBtoProperty) { + this.ActivityStreamsBto = i +} + +// SetActivityStreamsCc sets the "cc" property. +func (this *LitePubEmojiReact) SetActivityStreamsCc(i vocab.ActivityStreamsCcProperty) { + this.ActivityStreamsCc = i +} + +// SetActivityStreamsContent sets the "content" property. +func (this *LitePubEmojiReact) SetActivityStreamsContent(i vocab.ActivityStreamsContentProperty) { + this.ActivityStreamsContent = i +} + +// SetActivityStreamsContext sets the "context" property. +func (this *LitePubEmojiReact) SetActivityStreamsContext(i vocab.ActivityStreamsContextProperty) { + this.ActivityStreamsContext = i +} + +// SetActivityStreamsDuration sets the "duration" property. +func (this *LitePubEmojiReact) SetActivityStreamsDuration(i vocab.ActivityStreamsDurationProperty) { + this.ActivityStreamsDuration = i +} + +// SetActivityStreamsEndTime sets the "endTime" property. +func (this *LitePubEmojiReact) SetActivityStreamsEndTime(i vocab.ActivityStreamsEndTimeProperty) { + this.ActivityStreamsEndTime = i +} + +// SetActivityStreamsGenerator sets the "generator" property. +func (this *LitePubEmojiReact) SetActivityStreamsGenerator(i vocab.ActivityStreamsGeneratorProperty) { + this.ActivityStreamsGenerator = i +} + +// SetActivityStreamsIcon sets the "icon" property. +func (this *LitePubEmojiReact) SetActivityStreamsIcon(i vocab.ActivityStreamsIconProperty) { + this.ActivityStreamsIcon = i +} + +// SetActivityStreamsImage sets the "image" property. +func (this *LitePubEmojiReact) SetActivityStreamsImage(i vocab.ActivityStreamsImageProperty) { + this.ActivityStreamsImage = i +} + +// SetActivityStreamsInReplyTo sets the "inReplyTo" property. +func (this *LitePubEmojiReact) SetActivityStreamsInReplyTo(i vocab.ActivityStreamsInReplyToProperty) { + this.ActivityStreamsInReplyTo = i +} + +// SetActivityStreamsInstrument sets the "instrument" property. +func (this *LitePubEmojiReact) SetActivityStreamsInstrument(i vocab.ActivityStreamsInstrumentProperty) { + this.ActivityStreamsInstrument = i +} + +// SetActivityStreamsLikes sets the "likes" property. +func (this *LitePubEmojiReact) SetActivityStreamsLikes(i vocab.ActivityStreamsLikesProperty) { + this.ActivityStreamsLikes = i +} + +// SetActivityStreamsLocation sets the "location" property. +func (this *LitePubEmojiReact) SetActivityStreamsLocation(i vocab.ActivityStreamsLocationProperty) { + this.ActivityStreamsLocation = i +} + +// SetActivityStreamsMediaType sets the "mediaType" property. +func (this *LitePubEmojiReact) SetActivityStreamsMediaType(i vocab.ActivityStreamsMediaTypeProperty) { + this.ActivityStreamsMediaType = i +} + +// SetActivityStreamsName sets the "name" property. +func (this *LitePubEmojiReact) SetActivityStreamsName(i vocab.ActivityStreamsNameProperty) { + this.ActivityStreamsName = i +} + +// SetActivityStreamsObject sets the "object" property. +func (this *LitePubEmojiReact) SetActivityStreamsObject(i vocab.ActivityStreamsObjectProperty) { + this.ActivityStreamsObject = i +} + +// SetActivityStreamsOrigin sets the "origin" property. +func (this *LitePubEmojiReact) SetActivityStreamsOrigin(i vocab.ActivityStreamsOriginProperty) { + this.ActivityStreamsOrigin = i +} + +// SetActivityStreamsPreview sets the "preview" property. +func (this *LitePubEmojiReact) SetActivityStreamsPreview(i vocab.ActivityStreamsPreviewProperty) { + this.ActivityStreamsPreview = i +} + +// SetActivityStreamsPublished sets the "published" property. +func (this *LitePubEmojiReact) SetActivityStreamsPublished(i vocab.ActivityStreamsPublishedProperty) { + this.ActivityStreamsPublished = i +} + +// SetActivityStreamsReplies sets the "replies" property. +func (this *LitePubEmojiReact) SetActivityStreamsReplies(i vocab.ActivityStreamsRepliesProperty) { + this.ActivityStreamsReplies = i +} + +// SetActivityStreamsResult sets the "result" property. +func (this *LitePubEmojiReact) SetActivityStreamsResult(i vocab.ActivityStreamsResultProperty) { + this.ActivityStreamsResult = i +} + +// SetActivityStreamsSensitive sets the "sensitive" property. +func (this *LitePubEmojiReact) SetActivityStreamsSensitive(i vocab.ActivityStreamsSensitiveProperty) { + this.ActivityStreamsSensitive = i +} + +// SetActivityStreamsShares sets the "shares" property. +func (this *LitePubEmojiReact) SetActivityStreamsShares(i vocab.ActivityStreamsSharesProperty) { + this.ActivityStreamsShares = i +} + +// SetActivityStreamsSource sets the "source" property. +func (this *LitePubEmojiReact) SetActivityStreamsSource(i vocab.ActivityStreamsSourceProperty) { + this.ActivityStreamsSource = i +} + +// SetActivityStreamsStartTime sets the "startTime" property. +func (this *LitePubEmojiReact) SetActivityStreamsStartTime(i vocab.ActivityStreamsStartTimeProperty) { + this.ActivityStreamsStartTime = i +} + +// SetActivityStreamsSummary sets the "summary" property. +func (this *LitePubEmojiReact) SetActivityStreamsSummary(i vocab.ActivityStreamsSummaryProperty) { + this.ActivityStreamsSummary = i +} + +// SetActivityStreamsTag sets the "tag" property. +func (this *LitePubEmojiReact) SetActivityStreamsTag(i vocab.ActivityStreamsTagProperty) { + this.ActivityStreamsTag = i +} + +// SetActivityStreamsTarget sets the "target" property. +func (this *LitePubEmojiReact) SetActivityStreamsTarget(i vocab.ActivityStreamsTargetProperty) { + this.ActivityStreamsTarget = i +} + +// SetActivityStreamsTo sets the "to" property. +func (this *LitePubEmojiReact) SetActivityStreamsTo(i vocab.ActivityStreamsToProperty) { + this.ActivityStreamsTo = i +} + +// SetActivityStreamsUpdated sets the "updated" property. +func (this *LitePubEmojiReact) SetActivityStreamsUpdated(i vocab.ActivityStreamsUpdatedProperty) { + this.ActivityStreamsUpdated = i +} + +// SetActivityStreamsUrl sets the "url" property. +func (this *LitePubEmojiReact) SetActivityStreamsUrl(i vocab.ActivityStreamsUrlProperty) { + this.ActivityStreamsUrl = i +} + +// SetJSONLDId sets the "id" property. +func (this *LitePubEmojiReact) SetJSONLDId(i vocab.JSONLDIdProperty) { + this.JSONLDId = i +} + +// SetJSONLDType sets the "type" property. +func (this *LitePubEmojiReact) SetJSONLDType(i vocab.JSONLDTypeProperty) { + this.JSONLDType = i +} + +// VocabularyURI returns the vocabulary's URI as a string. +func (this LitePubEmojiReact) VocabularyURI() string { + return "http://litepub.social/ns" +} + +// helperJSONLDContext obtains the context uris and their aliases from a property, +// if it is not nil. +func (this LitePubEmojiReact) 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 +} |
