Documentation
¶
Overview ¶
metadata provides clients used for integration with the core-metadata service.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddressableClient ¶
type AddressableClient interface {
// Add creates a new Addressable and returns the ID of the new item if successful.
Add(ctx context.Context, addr *models.Addressable) (string, error)
// Addressable returns an Addressable for the specified ID
Addressable(ctx context.Context, id string) (models.Addressable, error)
// Addressable returns an Addressable for the specified name
AddressableForName(ctx context.Context, name string) (models.Addressable, error)
// Update will update the Addressable data
Update(ctx context.Context, addr models.Addressable) error
// Delete will eliminate the Addressable for the specified ID
Delete(ctx context.Context, id string) error
}
AddressableClient defines the interface for interactions with the Addressable endpoint on core-metadata.
func NewAddressableClient ¶
func NewAddressableClient(urlClient interfaces.URLClient) AddressableClient
NewAddressableClient creates an instance of AddressableClient
type CommandClient ¶
type CommandClient interface {
// Add a new command
Add(ctx context.Context, com *models.Command) (string, error)
// Command obtains the command for the specified ID
Command(ctx context.Context, id string) (models.Command, error)
// Commands lists all the commands
Commands(ctx context.Context) ([]models.Command, error)
// CommandsForName lists all the commands for the specified name
CommandsForName(ctx context.Context, name string) ([]models.Command, error)
// CommandsForDeviceId list all commands for device with specified ID
CommandsForDeviceId(ctx context.Context, id string) ([]models.Command, error)
// Delete a command for the specified ID
Delete(ctx context.Context, id string) error
// Update a command
Update(ctx context.Context, com models.Command) error
}
CommandClient defines the interface for interactions with the Command endpoint on core-metadata.
func NewCommandClient ¶
func NewCommandClient(urlClient interfaces.URLClient) CommandClient
NewCommandClient creates an instance of CommandClient
type DeviceClient ¶
type DeviceClient interface {
// Add creates a new device
Add(ctx context.Context, dev *models.Device) (string, error)
// Delete eliminates a device for the specified ID
Delete(ctx context.Context, id string) error
// DeleteByName eliminates a device for the specified name
DeleteByName(ctx context.Context, name string) error
// CheckForDevice will return a Device if one already exists for the specified device name
CheckForDevice(ctx context.Context, token string) (models.Device, error)
// Device loads the device for the specified ID
Device(ctx context.Context, id string) (models.Device, error)
// DeviceForName loads the device for the specified name
DeviceForName(ctx context.Context, name string) (models.Device, error)
// Devices lists all devices
Devices(ctx context.Context) ([]models.Device, error)
// DevicesByLabel lists all devices for the specified label
DevicesByLabel(ctx context.Context, label string) ([]models.Device, error)
// DevicesForProfile lists all devices for the specified profile ID
DevicesForProfile(ctx context.Context, profileid string) ([]models.Device, error)
// DevicesForProfileByName lists all devices for the specified profile name
DevicesForProfileByName(ctx context.Context, profileName string) ([]models.Device, error)
// DevicesForService lists all devices for the specified device service ID
DevicesForService(ctx context.Context, serviceid string) ([]models.Device, error)
// DevicesForServiceByName lists all devices for the specified device service name
DevicesForServiceByName(ctx context.Context, serviceName string) ([]models.Device, error)
// Update the specified device
Update(ctx context.Context, dev models.Device) error
// UpdateAdminState modifies a device's AdminState for the specified device ID
UpdateAdminState(ctx context.Context, id string, req admin.UpdateRequest) error
// UpdateAdminStateByName modifies a device's AdminState according to the specified device name
UpdateAdminStateByName(ctx context.Context, name string, req admin.UpdateRequest) error
// UpdateLastConnected updates a device's last connected timestamp according to the specified device ID
UpdateLastConnected(ctx context.Context, id string, time int64) error
// UpdateLastConnectedByName updates a device's last connected timestamp according to the specified device name
UpdateLastConnectedByName(ctx context.Context, name string, time int64) error
// UpdateLastReported updates a device's last reported timestamp according to the specified device ID
UpdateLastReported(ctx context.Context, id string, time int64) error
// UpdateLastReportedByName updates a device's last reported timestamp according to the specified device name
UpdateLastReportedByName(ctx context.Context, name string, time int64) error
// UpdateOpState updates a device's last OperatingState according to the specified device ID
UpdateOpState(ctx context.Context, id string, req operating.UpdateRequest) error
// UpdateOpStateByName updates a device's last OperatingState according to the specified device name
UpdateOpStateByName(ctx context.Context, name string, req operating.UpdateRequest) error
}
DeviceClient defines the interface for interactions with the Device endpoint on core-metadata.
func NewDeviceClient ¶
func NewDeviceClient(urlClient interfaces.URLClient) DeviceClient
NewDeviceClient creates an instance of DeviceClient
type DeviceProfileClient ¶
type DeviceProfileClient interface {
// Add a new device profile
Add(ctx context.Context, dp *models.DeviceProfile) (string, error)
// Delete eliminates a device profile for the specified ID
Delete(ctx context.Context, id string) error
// DeleteByName eliminates a device profile for the specified name
DeleteByName(ctx context.Context, name string) error
// DeviceProfile loads the device profile for the specified ID
DeviceProfile(ctx context.Context, id string) (models.DeviceProfile, error)
// DeviceProfiles lists all device profiles
DeviceProfiles(ctx context.Context) ([]models.DeviceProfile, error)
// DeviceProfileForName loads the device profile for the specified name
DeviceProfileForName(ctx context.Context, name string) (models.DeviceProfile, error)
// Update a device profile
Update(ctx context.Context, dp models.DeviceProfile) error
// Upload a new device profile using raw YAML content
Upload(ctx context.Context, yamlString string) (string, error)
// Upload a new device profile using a file in YAML format
UploadFile(ctx context.Context, yamlFilePath string) (string, error)
}
DeviceProfileClient defines the interface for interactions with the DeviceProfile endpoint on metadata.
func NewDeviceProfileClient ¶
func NewDeviceProfileClient(urlClient interfaces.URLClient) DeviceProfileClient
Return an instance of DeviceProfileClient
type DeviceServiceClient ¶
type DeviceServiceClient interface {
// Add a new device service
Add(ctx context.Context, ds *models.DeviceService) (string, error)
// DeviceServiceForName loads a device service for the specified name
DeviceServiceForName(ctx context.Context, name string) (models.DeviceService, error)
// UpdateLastConnected updates a device service's last connected timestamp for the specified service ID
UpdateLastConnected(ctx context.Context, id string, time int64) error
// UpdateLastReported updates a device service's last reported timestamp for the specified service ID
UpdateLastReported(ctx context.Context, id string, time int64) error
// Update the specified device service
Update(ctx context.Context, ds models.DeviceService) error
}
DeviceServiceClient defines the interface for interactions with the DeviceService endpoint on metadata.
func NewDeviceServiceClient ¶
func NewDeviceServiceClient(urlClient interfaces.URLClient) DeviceServiceClient
NewDeviceServiceClient creates an instance of DeviceServiceClient
type ProvisionWatcherClient ¶
type ProvisionWatcherClient interface {
// Add a new provision watcher
Add(ctx context.Context, dev *models.ProvisionWatcher) (string, error)
// Delete a provision watcher for the specified ID
Delete(ctx context.Context, id string) error
// ProvisionWatcher loads an instance of a provision watcher for the specified ID
ProvisionWatcher(ctx context.Context, id string) (models.ProvisionWatcher, error)
// ProvisionWatcherForName loads an instance of a provision watcher for the specified name
ProvisionWatcherForName(ctx context.Context, name string) (models.ProvisionWatcher, error)
// ProvisionWatchers lists all provision watchers.
ProvisionWatchers(ctx context.Context) ([]models.ProvisionWatcher, error)
// ProvisionWatchersForService lists all provision watchers associated with the specified device service id
ProvisionWatchersForService(ctx context.Context, serviceId string) ([]models.ProvisionWatcher, error)
// ProvisionWatchersForServiceByName lists all provision watchers associated with the specified device service name
ProvisionWatchersForServiceByName(ctx context.Context, serviceName string) ([]models.ProvisionWatcher, error)
// ProvisionWatchersForProfile lists all provision watchers associated with the specified device profile ID
ProvisionWatchersForProfile(ctx context.Context, profileID string) ([]models.ProvisionWatcher, error)
// ProvisionWatchersForProfileByName lists all provision watchers associated with the specified device profile name
ProvisionWatchersForProfileByName(ctx context.Context, profileName string) ([]models.ProvisionWatcher, error)
// Update the provision watcher
Update(ctx context.Context, dev models.ProvisionWatcher) error
}
ProvisionWatcherClient defines the interface for interactions with the ProvisionWatcher endpoint on metadata.
func NewProvisionWatcherClient ¶
func NewProvisionWatcherClient(urlClient interfaces.URLClient) ProvisionWatcherClient
NewProvisionWatcherClient creates an instance of ProvisionWatcherClient