Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DefinitionID ¶
type DefinitionID interface { GetNamespace() string GetName() string GetVersion() string String() string }
DefinitionID represents Ditto's Definition that follows the syntax <namespace>:<name>:<version>
type Feature ¶
type Feature interface { GetID() string // Get the definition GetDefinition() []DefinitionID // Set the definition SetDefinition(definition []DefinitionID) // Remove the definition RemoveDefinition() // Get all properties GetProperties() map[string]interface{} // Get a specific property GetProperty(id string) interface{} // Update the properties SetProperties(properties map[string]interface{}) // Update a single property SetProperty(id string, value interface{}) // Remove all properties RemoveProperties() // Remove a single property RemoveProperty(id string) }
Feature represents Ditto's Feature model and all its properties
type NamespacedID ¶
NamespacedID represents Ditto's Namespaced ID that follows the syntax <namespace>:<name>
type Registry ¶
type Registry interface { // Create a thing with the provided id and namespace Create(id NamespacedID, thing Thing) error // Get a thing with the provided id and namespace Get(id NamespacedID) Thing // Modify a thing with the provided id and namespace Update(id NamespacedID) error // Remove a thing with the provided id and namespace Remove(id NamespacedID) error }
Registry is the things management entry point
type Thing ¶
type Thing interface { // Get the thing's namespace GetNamespace() string // GetID the thing's id GetID() NamespacedID // Retrieves the thing's policy id GetPolicy() NamespacedID // Get the thing's definition GetDefinition() DefinitionID // Updatest he thing;s definition SetDefinition(DefinitionID DefinitionID) error // Deletes the thing's definition RemoveDefinition() error // Retrieve the thing's attributes GetAttributes() map[string]interface{} // Retrieve a thing's attribute GetAttribute(id string) interface{} // Updates the thing's attributes SetAttributes(attributes map[string]interface{}) error // Updates a thing's attribute SetAttribute(id string, value interface{}) error // Delete the thing's attributes RemoveAttributes() error // Delete a thing's attribute RemoveAttribute(id string) error // Retrieve the thing's features GetFeatures() map[string]Feature // Retrieve a thing's features GetFeature(id string) Feature // Update the thing's features SetFeatures(features map[string]Feature) error // Update a thing's feature SetFeature(id string, feature Feature) error // Remove the thing's features RemoveFeatures() error // Remove a thing's feature RemoveFeature(id string) error // Set the definition SetFeatureDefinition(featureID string, DefinitionID []DefinitionID) error // Remove the definition RemoveFeatureDefinition(featureID string) error // Update the properties SetFeatureProperties(featureID string, properties map[string]interface{}) error // Update a single property SetFeatureProperty(featureID string, propertyID string, value interface{}) error // Remove all properties RemoveFeatureProperties(featureID string) error // Remove a single property RemoveFeatureProperty(featureID string, propertyID string) error // SendMessage initiates the sending of a live outbox message from the Thing SendMessage(action string, value interface{}) error // SendFeatureMessage initiates the sending of a live outbox message from the provided feature of the Thing SendFeatureMessage(featureID string, action string, value interface{}) error // Get the thing's revision GetRevision() int64 // Get the thing's last modification's timestamp GetLastModified() string }
Thing represents Ditto's Thing model
Click to show internal directories.
Click to hide internal directories.