Documentation ¶
Index ¶
- func FromProtocolModelsToDTOs(protocolModels map[string]models.ProtocolProperties) map[string]ProtocolProperties
- func ToAddressModel(a Address) models.Address
- func ToAddressModels(dtos []Address) []models.Address
- func ToAutoEventModel(a AutoEvent) models.AutoEvent
- func ToAutoEventModels(autoEventDTOs []AutoEvent) []models.AutoEvent
- func ToDeviceCommandModel(dto DeviceCommand) models.DeviceCommand
- func ToDeviceCommandModels(deviceCommandDTOs []DeviceCommand) []models.DeviceCommand
- func ToDeviceModel(dto Device) models.Device
- func ToDeviceProfileModel(deviceProfileDTO DeviceProfile) models.DeviceProfile
- func ToDeviceResourceModel(d DeviceResource) models.DeviceResource
- func ToDeviceResourceModels(deviceResourceDTOs []DeviceResource) []models.DeviceResource
- func ToDeviceServiceModel(dto DeviceService) models.DeviceService
- func ToIntervalActionModel(dto IntervalAction) models.IntervalAction
- func ToIntervalModel(dto Interval) models.Interval
- func ToNotificationModel(n Notification) models.Notification
- func ToNotificationModels(notifications []Notification) []models.Notification
- func ToProtocolModels(protocolDTOs map[string]ProtocolProperties) map[string]models.ProtocolProperties
- func ToProtocolPropertiesModel(p ProtocolProperties) models.ProtocolProperties
- func ToProvisionWatcherModel(dto ProvisionWatcher) models.ProvisionWatcher
- func ToReadingModel(r BaseReading) models.Reading
- func ToResourceOperationModel(ro ResourceOperation) models.ResourceOperation
- func ToResourceOperationModels(dtos []ResourceOperation) []models.ResourceOperation
- func ToResourcePropertiesModel(p ResourceProperties) models.ResourceProperties
- func ToSubscriptionModel(s Subscription) models.Subscription
- func ToSubscriptionModels(subs []Subscription) []models.Subscription
- func ToTransmissionModel(trans Transmission) models.Transmission
- func ToTransmissionModels(ts []Transmission) []models.Transmission
- func ToTransmissionRecordModel(tr TransmissionRecord) models.TransmissionRecord
- func ToTransmissionRecordModels(trs []TransmissionRecord) []models.TransmissionRecord
- func ValidateDeviceProfileDTO(profile DeviceProfile) error
- func ValidateMetricName(name string, nameType string) error
- func ValidateValue(valueType string, value string) error
- type Address
- func FromAddressModelToDTO(address models.Address) Address
- func FromAddressModelsToDTOs(models []models.Address) []Address
- func NewEmailAddress(recipients []string) Address
- func NewMQTTAddress(host string, port int, publisher string, topic string) Address
- func NewRESTAddress(host string, port int, httpMethod string) Address
- type AutoEvent
- type BaseReading
- func FromReadingModelToDTO(reading models.Reading) BaseReading
- func NewBinaryReading(profileName string, deviceName string, resourceName string, binaryValue []byte, ...) BaseReading
- func NewObjectReading(profileName string, deviceName string, resourceName string, ...) BaseReading
- func NewSimpleReading(profileName string, deviceName string, resourceName string, valueType string, ...) (BaseReading, error)
- type BinaryReading
- type CoreCommand
- type CoreCommandParameter
- type DBTimestamp
- type Device
- type DeviceCommand
- type DeviceCoreCommand
- type DeviceProfile
- type DeviceProfileBasicInfo
- type DeviceResource
- type DeviceService
- type EmailAddress
- type Event
- func (e *Event) AddBinaryReading(resourceName string, binaryValue []byte, mediaType string)
- func (e *Event) AddObjectReading(resourceName string, objectValue interface{})
- func (e *Event) AddSimpleReading(resourceName string, valueType string, value interface{}) error
- func (e *Event) ToXML() (string, error)
- type Interval
- type IntervalAction
- type MQTTPubAddress
- type Metric
- type MetricField
- type MetricTag
- type Notification
- type ObjectReading
- type ProtocolProperties
- type ProvisionWatcher
- type RESTAddress
- type ResourceOperation
- type ResourceProperties
- type SimpleReading
- type Subscription
- type SystemEvent
- type Transmission
- type TransmissionRecord
- type UpdateDevice
- type UpdateDeviceCommand
- type UpdateDeviceProfileBasicInfo
- type UpdateDeviceResource
- type UpdateDeviceService
- type UpdateInterval
- type UpdateIntervalAction
- type UpdateProvisionWatcher
- type UpdateSubscription
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FromProtocolModelsToDTOs ¶
func FromProtocolModelsToDTOs(protocolModels map[string]models.ProtocolProperties) map[string]ProtocolProperties
FromProtocolModelsToDTOs transforms the Protocol model map to the Protocol DTO map
func ToAddressModel ¶
func ToAddressModels ¶
func ToAutoEventModel ¶
ToAutoEventModel transforms the AutoEvent DTO to the AutoEvent model
func ToAutoEventModels ¶
ToAutoEventModels transforms the AutoEvent DTO array to the AutoEvent model array
func ToDeviceCommandModel ¶
func ToDeviceCommandModel(dto DeviceCommand) models.DeviceCommand
ToDeviceCommandModel transforms the DeviceCommand DTO to the DeviceCommand model
func ToDeviceCommandModels ¶
func ToDeviceCommandModels(deviceCommandDTOs []DeviceCommand) []models.DeviceCommand
ToDeviceCommandModels transforms the DeviceCommand DTOs to the DeviceCommand models
func ToDeviceModel ¶
ToDeviceModel transforms the Device DTO to the Device Model
func ToDeviceProfileModel ¶
func ToDeviceProfileModel(deviceProfileDTO DeviceProfile) models.DeviceProfile
ToDeviceProfileModel transforms the DeviceProfile DTO to the DeviceProfile model
func ToDeviceResourceModel ¶
func ToDeviceResourceModel(d DeviceResource) models.DeviceResource
ToDeviceResourceModel transforms the DeviceResource DTO to the DeviceResource model
func ToDeviceResourceModels ¶
func ToDeviceResourceModels(deviceResourceDTOs []DeviceResource) []models.DeviceResource
ToDeviceResourceModels transforms the DeviceResource DTOs to the DeviceResource models
func ToDeviceServiceModel ¶
func ToDeviceServiceModel(dto DeviceService) models.DeviceService
ToDeviceServiceModel transforms the DeviceService DTO to the DeviceService Model
func ToIntervalActionModel ¶
func ToIntervalActionModel(dto IntervalAction) models.IntervalAction
ToIntervalActionModel transforms the IntervalAction DTO to the IntervalAction Model
func ToIntervalModel ¶
ToIntervalModel transforms the Interval DTO to the Interval Model
func ToNotificationModel ¶
func ToNotificationModel(n Notification) models.Notification
ToNotificationModel transforms the Notification DTO to the Notification Model
func ToNotificationModels ¶
func ToNotificationModels(notifications []Notification) []models.Notification
ToNotificationModels transforms the Notification DTO array to the Notification model array
func ToProtocolModels ¶
func ToProtocolModels(protocolDTOs map[string]ProtocolProperties) map[string]models.ProtocolProperties
ToProtocolModels transforms the Protocol DTO map to the Protocol model map
func ToProtocolPropertiesModel ¶
func ToProtocolPropertiesModel(p ProtocolProperties) models.ProtocolProperties
ToProtocolPropertiesModel transforms the ProtocolProperties DTO to the ProtocolProperties model
func ToProvisionWatcherModel ¶
func ToProvisionWatcherModel(dto ProvisionWatcher) models.ProvisionWatcher
ToProvisionWatcherModel transforms the ProvisionWatcher DTO to the ProvisionWatcher model
func ToReadingModel ¶
func ToReadingModel(r BaseReading) models.Reading
Convert Reading DTO to Reading model
func ToResourceOperationModel ¶
func ToResourceOperationModel(ro ResourceOperation) models.ResourceOperation
ToResourceOperationModel transforms the ResourceOperation DTO to the ResourceOperation model
func ToResourceOperationModels ¶
func ToResourceOperationModels(dtos []ResourceOperation) []models.ResourceOperation
func ToResourcePropertiesModel ¶
func ToResourcePropertiesModel(p ResourceProperties) models.ResourceProperties
ToResourcePropertiesModel transforms the ResourceProperties DTO to the ResourceProperties model
func ToSubscriptionModel ¶
func ToSubscriptionModel(s Subscription) models.Subscription
ToSubscriptionModel transforms the Subscription DTO to the Subscription Model
func ToSubscriptionModels ¶
func ToSubscriptionModels(subs []Subscription) []models.Subscription
ToSubscriptionModels transforms the Subscription DTO array to the Subscription model array
func ToTransmissionModel ¶
func ToTransmissionModel(trans Transmission) models.Transmission
ToTransmissionModel transforms a Transmission DTO to a Transmission Model
func ToTransmissionModels ¶
func ToTransmissionModels(ts []Transmission) []models.Transmission
ToTransmissionModels transforms a Transmission DTO array to a Transmission model array
func ToTransmissionRecordModel ¶
func ToTransmissionRecordModel(tr TransmissionRecord) models.TransmissionRecord
ToTransmissionRecordModel transforms a TransmissionRecord DTO to a TransmissionRecord Model
func ToTransmissionRecordModels ¶
func ToTransmissionRecordModels(trs []TransmissionRecord) []models.TransmissionRecord
ToTransmissionRecordModels transforms a TransmissionRecord DTO array to a TransmissionRecord model array
func ValidateDeviceProfileDTO ¶
func ValidateDeviceProfileDTO(profile DeviceProfile) error
func ValidateMetricName ¶
func ValidateValue ¶
ValidateValue used to check whether the value and valueType are matched
Types ¶
type Address ¶
type Address struct { Type string `json:"type" validate:"oneof='REST' 'MQTT' 'EMAIL'"` Host string `json:"host" validate:"required_unless=Type EMAIL"` Port int `json:"port" validate:"required_unless=Type EMAIL"` RESTAddress `json:",inline" validate:"-"` MQTTPubAddress `json:",inline" validate:"-"` EmailAddress `json:",inline" validate:"-"` }
func FromAddressModelToDTO ¶
func FromAddressModelsToDTOs ¶
func NewEmailAddress ¶
func NewMQTTAddress ¶
type AutoEvent ¶
type AutoEvent struct { Interval string `json:"interval" validate:"required,edgex-dto-duration"` OnChange bool `json:"onChange"` SourceName string `json:"sourceName" validate:"required"` }
AutoEvent and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/AutoEvent
func FromAutoEventModelToDTO ¶
FromAutoEventModelToDTO transforms the AutoEvent model to the AutoEvent DTO
func FromAutoEventModelsToDTOs ¶
FromAutoEventModelsToDTOs transforms the AutoEvent model array to the AutoEvent DTO array
type BaseReading ¶
type BaseReading struct { Id string `json:"id,omitempty"` Origin int64 `json:"origin" validate:"required"` DeviceName string `json:"deviceName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` ResourceName string `json:"resourceName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` ProfileName string `json:"profileName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` ValueType string `json:"valueType" validate:"required,edgex-dto-value-type"` Units string `json:"units,omitempty"` BinaryReading `json:",inline" validate:"-"` SimpleReading `json:",inline" validate:"-"` ObjectReading `json:",inline" validate:"-"` }
BaseReading and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-data/2.1.0#/BaseReading
func FromReadingModelToDTO ¶
func FromReadingModelToDTO(reading models.Reading) BaseReading
func NewBinaryReading ¶
func NewBinaryReading(profileName string, deviceName string, resourceName string, binaryValue []byte, mediaType string) BaseReading
NewBinaryReading creates and returns a new initialized BaseReading with its BinaryReading initialized
func NewObjectReading ¶
func NewObjectReading(profileName string, deviceName string, resourceName string, objectValue interface{}) BaseReading
NewObjectReading creates and returns a new initialized BaseReading with its ObjectReading initialized
func NewSimpleReading ¶
func NewSimpleReading(profileName string, deviceName string, resourceName string, valueType string, value interface{}) (BaseReading, error)
NewSimpleReading creates and returns a new initialized BaseReading with its SimpleReading initialized
func (BaseReading) Validate ¶
func (b BaseReading) Validate() error
Validate satisfies the Validator interface
type BinaryReading ¶
type BinaryReading struct { BinaryValue []byte `json:"binaryValue,omitempty" validate:"gt=0,required"` MediaType string `json:"mediaType,omitempty" validate:"required"` }
BinaryReading and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-data/2.1.0#/BinaryReading
type CoreCommand ¶
type CoreCommand struct { Name string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Get bool `json:"get,omitempty" validate:"required_without=Set"` Set bool `json:"set,omitempty" validate:"required_without=Get"` Path string `json:"path,omitempty"` Url string `json:"url,omitempty"` Parameters []CoreCommandParameter `json:"parameters,omitempty"` }
CoreCommand and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-command/2.1.0#/CoreCommand
type CoreCommandParameter ¶
type CoreCommandParameter struct { ResourceName string `json:"resourceName"` ValueType string `json:"valueType"` }
CoreCommandParameter and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-command/2.1.0#/CoreCommandParameter
type DBTimestamp ¶
type Device ¶
type Device struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Name string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Description string `json:"description,omitempty"` AdminState string `json:"adminState" validate:"oneof='LOCKED' 'UNLOCKED'"` OperatingState string `json:"operatingState" validate:"oneof='UP' 'DOWN' 'UNKNOWN'"` LastConnected int64 `json:"lastConnected,omitempty"` // Deprecated: will be replaced by Metrics in v3 LastReported int64 `json:"lastReported,omitempty"` // Deprecated: will be replaced by Metrics in v3 Labels []string `json:"labels,omitempty"` Location interface{} `json:"location,omitempty"` ServiceName string `json:"serviceName" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` ProfileName string `json:"profileName" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` AutoEvents []AutoEvent `json:"autoEvents,omitempty" validate:"dive"` Protocols map[string]ProtocolProperties `json:"protocols" validate:"required,gt=0"` }
Device and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/Device
func FromDeviceModelToDTO ¶
FromDeviceModelToDTO transforms the Device Model to the Device DTO
type DeviceCommand ¶
type DeviceCommand struct { Name string `json:"name" yaml:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` IsHidden bool `json:"isHidden" yaml:"isHidden"` ReadWrite string `json:"readWrite" yaml:"readWrite" validate:"required,oneof='R' 'W' 'RW' 'WR'"` ResourceOperations []ResourceOperation `json:"resourceOperations" yaml:"resourceOperations" validate:"gt=0,dive"` }
DeviceCommand and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/DeviceCommand
func FromDeviceCommandModelToDTO ¶
func FromDeviceCommandModelToDTO(d models.DeviceCommand) DeviceCommand
FromDeviceCommandModelToDTO transforms the DeviceCommand model to the DeviceCommand DTO
func FromDeviceCommandModelsToDTOs ¶
func FromDeviceCommandModelsToDTOs(deviceCommandModels []models.DeviceCommand) []DeviceCommand
FromDeviceCommandModelsToDTOs transforms the DeviceCommand models to the DeviceCommand DTOs
type DeviceCoreCommand ¶
type DeviceCoreCommand struct { DeviceName string `json:"deviceName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` ProfileName string `json:"profileName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` CoreCommands []CoreCommand `json:"coreCommands,omitempty" validate:"dive"` }
DeviceCoreCommand and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-command/2.1.0#/DeviceCoreCommand
type DeviceProfile ¶
type DeviceProfile struct { DBTimestamp `json:",inline"` DeviceProfileBasicInfo `json:",inline" yaml:",inline"` DeviceResources []DeviceResource `json:"deviceResources" yaml:"deviceResources" validate:"dive"` DeviceCommands []DeviceCommand `json:"deviceCommands" yaml:"deviceCommands" validate:"dive"` }
DeviceProfile and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/DeviceProfile
func FromDeviceProfileModelToDTO ¶
func FromDeviceProfileModelToDTO(deviceProfile models.DeviceProfile) DeviceProfile
FromDeviceProfileModelToDTO transforms the DeviceProfile Model to the DeviceProfile DTO
func (*DeviceProfile) UnmarshalYAML ¶
func (dp *DeviceProfile) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML implements the Unmarshaler interface for the DeviceProfile type
func (*DeviceProfile) Validate ¶
func (dp *DeviceProfile) Validate() error
Validate satisfies the Validator interface
type DeviceProfileBasicInfo ¶
type DeviceProfileBasicInfo struct { Id string `json:"id" validate:"omitempty,uuid"` Name string `json:"name" yaml:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Manufacturer string `json:"manufacturer" yaml:"manufacturer"` Description string `json:"description" yaml:"description"` Model string `json:"model" yaml:"model"` Labels []string `json:"labels" yaml:"labels,flow"` }
DeviceProfileBasicInfo and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.2.0#/DeviceProfileBasicInfo
type DeviceResource ¶
type DeviceResource struct { Description string `json:"description" yaml:"description"` Name string `json:"name" yaml:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` IsHidden bool `json:"isHidden" yaml:"isHidden"` Tag string `json:"tag" yaml:"tag"` Properties ResourceProperties `json:"properties" yaml:"properties"` Attributes map[string]interface{} `json:"attributes" yaml:"attributes"` }
DeviceResource and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/DeviceResource
func FromDeviceResourceModelToDTO ¶
func FromDeviceResourceModelToDTO(d models.DeviceResource) DeviceResource
FromDeviceResourceModelToDTO transforms the DeviceResource model to the DeviceResource DTO
func FromDeviceResourceModelsToDTOs ¶
func FromDeviceResourceModelsToDTOs(deviceResourceModels []models.DeviceResource) []DeviceResource
FromDeviceResourceModelsToDTOs transforms the DeviceResource models to the DeviceResource DTOs
type DeviceService ¶
type DeviceService struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Name string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Description string `json:"description,omitempty"` LastConnected int64 `json:"lastConnected,omitempty"` // Deprecated: will be replaced by Metrics in v3 LastReported int64 `json:"lastReported,omitempty"` // Deprecated: will be replaced by Metrics in v3 Labels []string `json:"labels,omitempty"` BaseAddress string `json:"baseAddress" validate:"required,uri"` AdminState string `json:"adminState" validate:"oneof='LOCKED' 'UNLOCKED'"` }
DeviceService and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/DeviceService
func FromDeviceServiceModelToDTO ¶
func FromDeviceServiceModelToDTO(ds models.DeviceService) DeviceService
FromDeviceServiceModelToDTO transforms the DeviceService Model to the DeviceService DTO
type EmailAddress ¶
type EmailAddress struct {
Recipients []string `json:"recipients,omitempty" validate:"gt=0,dive,email"`
}
type Event ¶
type Event struct { common.Versionable `json:",inline"` Id string `json:"id" validate:"required,uuid"` DeviceName string `json:"deviceName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` ProfileName string `json:"profileName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` SourceName string `json:"sourceName" validate:"required,edgex-dto-rfc3986-unreserved-chars"` Origin int64 `json:"origin" validate:"required"` Readings []BaseReading `json:"readings" validate:"gt=0,dive,required"` Tags map[string]interface{} `json:"tags,omitempty" xml:"-"` // Have to ignore since map not supported for XML }
Event and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-data/2.1.0#/Event
func FromEventModelToDTO ¶
FromEventModelToDTO transforms the Event Model to the Event DTO
func (*Event) AddBinaryReading ¶
AddBinaryReading adds a binary reading to the Event
func (*Event) AddObjectReading ¶
AddObjectReading adds a object reading to the Event
func (*Event) AddSimpleReading ¶
AddSimpleReading adds a simple reading to the Event
type Interval ¶
type Interval struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Name string `json:"name" validate:"edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Start string `json:"start,omitempty" validate:"omitempty,edgex-dto-interval-datetime"` End string `json:"end,omitempty" validate:"omitempty,edgex-dto-interval-datetime"` Interval string `json:"interval" validate:"required,edgex-dto-duration"` }
Interval and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-scheduler/2.1.0#/Interval
func FromIntervalModelToDTO ¶
FromIntervalModelToDTO transforms the Interval Model to the Interval DTO
func NewInterval ¶
NewInterval creates interval DTO with required fields
type IntervalAction ¶
type IntervalAction struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Name string `json:"name" validate:"edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` IntervalName string `json:"intervalName" validate:"edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Address Address `json:"address" validate:"required"` Content string `json:"content,omitempty"` ContentType string `json:"contentType,omitempty"` AdminState string `json:"adminState" validate:"oneof='LOCKED' 'UNLOCKED'"` }
IntervalAction and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-scheduler/2.1.0#/IntervalAction
func FromIntervalActionModelToDTO ¶
func FromIntervalActionModelToDTO(model models.IntervalAction) IntervalAction
FromIntervalActionModelToDTO transforms the IntervalAction Model to the IntervalAction DTO
func NewIntervalAction ¶
func NewIntervalAction(name string, intervalName string, address Address) IntervalAction
NewIntervalAction creates intervalAction DTO with required fields
type MQTTPubAddress ¶
type MQTTPubAddress struct { Publisher string `json:"publisher,omitempty" validate:"required"` Topic string `json:"topic,omitempty" validate:"required"` QoS int `json:"qos,omitempty"` KeepAlive int `json:"keepAlive,omitempty"` Retained bool `json:"retained,omitempty"` AutoReconnect bool `json:"autoReconnect,omitempty"` ConnectTimeout int `json:"connectTimeout,omitempty"` }
type Metric ¶
type Metric struct { common.Versionable `json:",inline"` // Name is the identifier of the collected Metric Name string `json:"name" validate:"edgex-dto-none-empty-string"` // Fields are the Key/Value measurements associated with the metric Fields []MetricField `json:"fields,omitempty" validate:"required"` // Tags and the Key/Value tags associated with the metric Tags []MetricTag `json:"tags,omitempty"` // Timestamp is the time and date the metric was collected. Timestamp int64 `json:"timestamp" validate:"required"` }
Metric defines the metric data for a specific named metric
func NewMetric ¶
func NewMetric(name string, fields []MetricField, tags []MetricTag) (Metric, error)
NewMetric creates a new metric for the specified data
func (*Metric) ToLineProtocol ¶
ToLineProtocol transforms the Metric to Line Protocol syntax which is most commonly used with InfluxDB For more information on Line Protocol see: https://docs.influxdata.com/influxdb/v2.0/reference/syntax/line-protocol/ Line Protocol Syntax:
<measurement>[,<tag_key>=<tag_value>[,<tag_key>=<tag_value>]] <field_key>=<field_value>[,<field_key>=<field_value>] [<timestamp>]
Examples:
measurementName fieldKey="field string value" 1556813561098000000 myMeasurement,tag1=value1,tag2=value2 fieldKey="fieldValue" 1556813561098000000
Note that this is a simple helper function for those receiving this DTO that are pushing metrics to an endpoint that receives LineProtocol such as InfluxDb or Telegraf
type MetricField ¶
type MetricField struct { // Name is the identifier of the metric field Name string `json:"name" validate:"edgex-dto-none-empty-string"` // Value is measurement for the metric field Value interface{} `json:"value" validate:"required"` }
MetricField defines a metric field associated with a metric
type MetricTag ¶
type MetricTag struct { // Name is the identifier of the metric tag Name string `json:"name" validate:"edgex-dto-none-empty-string"` // Value is tag vale for the metric tag Value string `json:"value" validate:"required"` }
MetricTag defines a metric tag associated with a metric
type Notification ¶
type Notification struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Category string `` /* 133-byte string literal not displayed */ Labels []string `` /* 143-byte string literal not displayed */ Content string `json:"content" validate:"required,edgex-dto-none-empty-string"` ContentType string `json:"contentType,omitempty"` Description string `json:"description,omitempty"` Sender string `json:"sender" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Severity string `json:"severity" validate:"required,oneof='MINOR' 'NORMAL' 'CRITICAL'"` Status string `json:"status,omitempty" validate:"omitempty,oneof='NEW' 'PROCESSED' 'ESCALATED'"` }
Notification and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-notifications/2.1.0#/Notification
func FromNotificationModelToDTO ¶
func FromNotificationModelToDTO(n models.Notification) Notification
FromNotificationModelToDTO transforms the Notification Model to the Notification DTO
func FromNotificationModelsToDTOs ¶
func FromNotificationModelsToDTOs(notifications []models.Notification) []Notification
FromNotificationModelsToDTOs transforms the Notification model array to the Notification DTO array
func NewNotification ¶
func NewNotification(labels []string, category, content, sender, severity string) Notification
NewNotification creates and returns a Notification DTO
type ObjectReading ¶
type ObjectReading struct {
ObjectValue interface{} `json:"objectValue,omitempty" validate:"required"`
}
ObjectReading and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-data/2.1.0#/ObjectReading
type ProtocolProperties ¶
ProtocolProperties contains the device connection information in key/value pair
func FromProtocolPropertiesModelToDTO ¶
func FromProtocolPropertiesModelToDTO(p models.ProtocolProperties) ProtocolProperties
FromProtocolPropertiesModelToDTO transforms the ProtocolProperties model to the ProtocolProperties DTO
type ProvisionWatcher ¶
type ProvisionWatcher struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Name string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Labels []string `json:"labels,omitempty"` Identifiers map[string]string `json:"identifiers" validate:"gt=0,dive,keys,required,endkeys,required"` BlockingIdentifiers map[string][]string `json:"blockingIdentifiers,omitempty"` ProfileName string `json:"profileName" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` ServiceName string `json:"serviceName" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` AdminState string `json:"adminState" validate:"oneof='LOCKED' 'UNLOCKED'"` AutoEvents []AutoEvent `json:"autoEvents,omitempty" validate:"dive"` }
ProvisionWatcher and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/ProvisionWatcher
func FromProvisionWatcherModelToDTO ¶
func FromProvisionWatcherModelToDTO(pw models.ProvisionWatcher) ProvisionWatcher
FromProvisionWatcherModelToDTO transforms the ProvisionWatcher Model to the ProvisionWatcher DTO
type RESTAddress ¶
type ResourceOperation ¶
type ResourceOperation struct { DeviceResource string `json:"deviceResource" yaml:"deviceResource" validate:"required"` // The replacement of Object field DefaultValue string `json:"defaultValue" yaml:"defaultValue"` Mappings map[string]string `json:"mappings" yaml:"mappings"` }
ResourceOperation and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/ResourceOperation
func FromResourceOperationModelToDTO ¶
func FromResourceOperationModelToDTO(ro models.ResourceOperation) ResourceOperation
FromResourceOperationModelToDTO transforms the ResourceOperation model to the ResourceOperation DTO
type ResourceProperties ¶
type ResourceProperties struct { ValueType string `json:"valueType" yaml:"valueType" validate:"required,edgex-dto-value-type"` ReadWrite string `json:"readWrite" yaml:"readWrite" validate:"required,oneof='R' 'W' 'RW' 'WR'"` Units string `json:"units" yaml:"units"` Minimum string `json:"minimum" yaml:"minimum"` Maximum string `json:"maximum" yaml:"maximum"` DefaultValue string `json:"defaultValue" yaml:"defaultValue"` Mask string `json:"mask" yaml:"mask"` Shift string `json:"shift" yaml:"shift"` Scale string `json:"scale" yaml:"scale"` Offset string `json:"offset" yaml:"offset"` Base string `json:"base" yaml:"base"` Assertion string `json:"assertion" yaml:"assertion"` MediaType string `json:"mediaType" yaml:"mediaType"` }
ResourceProperties and its properties care defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/ResourceProperties
func FromResourcePropertiesModelToDTO ¶
func FromResourcePropertiesModelToDTO(p models.ResourceProperties) ResourceProperties
FromResourcePropertiesModelToDTO transforms the ResourceProperties Model to the ResourceProperties DTO
type SimpleReading ¶
type SimpleReading struct {
Value string `json:"value" validate:"required"`
}
SimpleReading and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-data/2.1.0#/SimpleReading
type Subscription ¶
type Subscription struct { DBTimestamp `json:",inline"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Name string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Channels []Address `json:"channels" validate:"required,gt=0,dive"` Receiver string `json:"receiver" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Categories []string `` /* 145-byte string literal not displayed */ Labels []string `` /* 145-byte string literal not displayed */ Description string `json:"description,omitempty"` ResendLimit int `json:"resendLimit,omitempty"` ResendInterval string `json:"resendInterval,omitempty" validate:"omitempty,edgex-dto-duration"` AdminState string `json:"adminState" validate:"oneof='LOCKED' 'UNLOCKED'"` }
Subscription and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-notifications/2.1.0#/Subscription
func FromSubscriptionModelToDTO ¶
func FromSubscriptionModelToDTO(s models.Subscription) Subscription
FromSubscriptionModelToDTO transforms the Subscription Model to the Subscription DTO
func FromSubscriptionModelsToDTOs ¶
func FromSubscriptionModelsToDTOs(subscruptions []models.Subscription) []Subscription
FromSubscriptionModelsToDTOs transforms the Subscription model array to the Subscription DTO array
type SystemEvent ¶
type SystemEvent struct { common.Versionable `json:",inline"` Type string `json:"type"` Action string `json:"action"` Source string `json:"source"` Owner string `json:"owner"` Tags map[string]string `json:"tags"` Details any `json:"details"` Timestamp int64 `json:"timestamp"` }
SystemEvent defines the data for a system event
func NewSystemEvent ¶
func NewSystemEvent(eventType, action, source, owner string, tags map[string]string, details any) SystemEvent
NewSystemEvent creates a new SystemEvent for the specified data
func (*SystemEvent) DecodeDetails ¶
func (s *SystemEvent) DecodeDetails(details any) error
DecodeDetails decodes the details (any type) into the passed in object
type Transmission ¶
type Transmission struct { Created int64 `json:"created,omitempty"` Id string `json:"id,omitempty" validate:"omitempty,uuid"` Channel Address `json:"channel" validate:"required"` NotificationId string `json:"notificationId" validate:"required"` SubscriptionName string `json:"subscriptionName" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Records []TransmissionRecord `json:"records,omitempty"` ResendCount int `json:"resendCount,omitempty"` Status string `json:"status" validate:"required,oneof='ACKNOWLEDGED' 'FAILED' 'SENT' 'ESCALATED' 'RESENDING'"` }
Transmission and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-notifications/2.1.0#/Transmission
func FromTransmissionModelToDTO ¶
func FromTransmissionModelToDTO(trans models.Transmission) Transmission
FromTransmissionModelToDTO transforms a Transmission Model to a Transmission DTO
func FromTransmissionModelsToDTOs ¶
func FromTransmissionModelsToDTOs(ts []models.Transmission) []Transmission
FromTransmissionModelsToDTOs transforms a Transmission model array to a Transmission DTO array
type TransmissionRecord ¶
type TransmissionRecord struct { Status string `json:"status,omitempty" validate:"omitempty,oneof='ACKNOWLEDGED' 'FAILED' 'SENT' 'ESCALATED'"` Response string `json:"response,omitempty"` Sent int64 `json:"sent,omitempty"` }
func FromTransmissionRecordModelToDTO ¶
func FromTransmissionRecordModelToDTO(tr models.TransmissionRecord) TransmissionRecord
FromTransmissionRecordModelToDTO transforms a TransmissionRecord Model to a TransmissionRecord DTO
func FromTransmissionRecordModelsToDTOs ¶
func FromTransmissionRecordModelsToDTOs(trs []models.TransmissionRecord) []TransmissionRecord
FromTransmissionRecordModelsToDTOs transforms a TransmissionRecord model array to a TransmissionRecord DTO array
func (TransmissionRecord) String ¶
func (tr TransmissionRecord) String() string
String returns a JSON encoded string representation of the object
type UpdateDevice ¶
type UpdateDevice struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Description *string `json:"description" validate:"omitempty"` AdminState *string `json:"adminState" validate:"omitempty,oneof='LOCKED' 'UNLOCKED'"` OperatingState *string `json:"operatingState" validate:"omitempty,oneof='UP' 'DOWN' 'UNKNOWN'"` LastConnected *int64 `json:"lastConnected"` // Deprecated: will be replaced by Metrics in v3 LastReported *int64 `json:"lastReported"` // Deprecated: will be replaced by Metrics in v3 ServiceName *string `json:"serviceName" validate:"omitempty,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` ProfileName *string `json:"profileName" validate:"omitempty,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Labels []string `json:"labels"` Location interface{} `json:"location"` AutoEvents []AutoEvent `json:"autoEvents" validate:"dive"` Protocols map[string]ProtocolProperties `json:"protocols" validate:"omitempty,gt=0"` Notify *bool `json:"notify"` }
UpdateDevice and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/UpdateDevice
func FromDeviceModelToUpdateDTO ¶
func FromDeviceModelToUpdateDTO(d models.Device) UpdateDevice
FromDeviceModelToUpdateDTO transforms the Device Model to the UpdateDevice DTO
type UpdateDeviceCommand ¶
type UpdateDeviceCommand struct { Name *string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` IsHidden *bool `json:"isHidden"` }
UpdateDeviceComman and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.2.0#/DeviceCommand
type UpdateDeviceProfileBasicInfo ¶
type UpdateDeviceProfileBasicInfo struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Manufacturer *string `json:"manufacturer"` Description *string `json:"description"` Model *string `json:"model"` Labels []string `json:"labels"` }
UpdateDeviceProfileBasicInfo and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.2.0#/DeviceProfileBasicInfo
type UpdateDeviceResource ¶
type UpdateDeviceResource struct { Description *string `json:"description"` Name *string `json:"name" validate:"required,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` IsHidden *bool `json:"isHidden"` }
UpdateDeviceResource and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.2.0#/DeviceResource
type UpdateDeviceService ¶
type UpdateDeviceService struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Description *string `json:"description"` LastConnected *int64 `json:"lastConnected"` // Deprecated: will be replaced by Metrics in v3 LastReported *int64 `json:"lastReported"` // Deprecated: will be replaced by Metrics in v3 BaseAddress *string `json:"baseAddress" validate:"omitempty,uri"` Labels []string `json:"labels"` AdminState *string `json:"adminState" validate:"omitempty,oneof='LOCKED' 'UNLOCKED'"` }
UpdateDeviceService and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/UpdateDeviceService
func FromDeviceServiceModelToUpdateDTO ¶
func FromDeviceServiceModelToUpdateDTO(ds models.DeviceService) UpdateDeviceService
FromDeviceServiceModelToUpdateDTO transforms the DeviceService Model to the UpdateDeviceService DTO
type UpdateInterval ¶
type UpdateInterval struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Start *string `json:"start" validate:"omitempty,edgex-dto-interval-datetime"` End *string `json:"end" validate:"omitempty,edgex-dto-interval-datetime"` Interval *string `json:"interval" validate:"omitempty,edgex-dto-duration"` }
UpdateInterval and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-scheduler/2.1.0#/UpdateInterval
func NewUpdateInterval ¶
func NewUpdateInterval(name string) UpdateInterval
NewUpdateInterval creates updateInterval DTO with required field
type UpdateIntervalAction ¶
type UpdateIntervalAction struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` IntervalName *string `json:"intervalName" validate:"omitempty,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Content *string `json:"content"` ContentType *string `json:"contentType"` Address *Address `json:"address"` AdminState *string `json:"adminState" validate:"omitempty,oneof='LOCKED' 'UNLOCKED'"` }
UpdateIntervalAction and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-scheduler/2.1.0#/UpdateIntervalAction
func NewUpdateIntervalAction ¶
func NewUpdateIntervalAction(name string) UpdateIntervalAction
NewUpdateIntervalAction creates updateIntervalAction DTO with required field
type UpdateProvisionWatcher ¶
type UpdateProvisionWatcher struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Labels []string `json:"labels"` Identifiers map[string]string `json:"identifiers" validate:"omitempty,gt=0,dive,keys,required,endkeys,required"` BlockingIdentifiers map[string][]string `json:"blockingIdentifiers"` ProfileName *string `json:"profileName" validate:"omitempty,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` ServiceName *string `json:"serviceName" validate:"omitempty,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` AdminState *string `json:"adminState" validate:"omitempty,oneof='LOCKED' 'UNLOCKED'"` AutoEvents []AutoEvent `json:"autoEvents" validate:"dive"` }
UpdateProvisionWatcher and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/core-metadata/2.1.0#/UpdateProvisionWatcher
func FromProvisionWatcherModelToUpdateDTO ¶
func FromProvisionWatcherModelToUpdateDTO(pw models.ProvisionWatcher) UpdateProvisionWatcher
FromProvisionWatcherModelToUpdateDTO transforms the ProvisionWatcher Model to the UpdateProvisionWatcher DTO
type UpdateSubscription ¶
type UpdateSubscription struct { Id *string `json:"id" validate:"required_without=Name,edgex-dto-uuid"` Name *string `json:"name" validate:"required_without=Id,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Channels []Address `json:"channels" validate:"omitempty,gt=0,dive"` Receiver *string `json:"receiver" validate:"omitempty,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Categories []string `json:"categories" validate:"omitempty,dive,gt=0,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Labels []string `json:"labels" validate:"omitempty,dive,edgex-dto-none-empty-string,edgex-dto-rfc3986-unreserved-chars"` Description *string `json:"description"` ResendLimit *int `json:"resendLimit"` ResendInterval *string `json:"resendInterval" validate:"omitempty,edgex-dto-duration"` AdminState *string `json:"adminState" validate:"omitempty,oneof='LOCKED' 'UNLOCKED'"` }
UpdateSubscription and its properties are defined in the APIv2 specification: https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-notifications/2.1.0#/UpdateSubscription
Source Files ¶
- address.go
- autoevent.go
- corecommand.go
- dbtimestamp.go
- device.go
- devicecommand.go
- deviceprofile.go
- deviceprofilebasicinfo.go
- deviceresource.go
- deviceservice.go
- event.go
- interval.go
- intervalaction.go
- metric.go
- notification.go
- protocolproperties.go
- provisionwatcher.go
- reading.go
- resourceoperation.go
- resourceproperties.go
- subscription.go
- systemevent.go
- transmission.go
- transmissionrecord.go