Documentation ¶
Index ¶
- Constants
- func DataSetStates() []string
- func DataSetTypes() []string
- func DeviceTags() []string
- func ErrorValueStringAsIDNotValid(value string) error
- func ErrorValueStringAsSetIDNotValid(value string) error
- func IDValidator(value string, errorReporter structure.ErrorReporter)
- func IsValidID(value string) bool
- func IsValidSetID(value string) bool
- func NewID() string
- func NewSetID() string
- func SetIDValidator(value string, errorReporter structure.ErrorReporter)
- func TimeProcessings() []string
- func ValidateID(value string) error
- func ValidateSetID(value string) error
- type ArrayParser
- type Blob
- type BlobArray
- type Context
- type DataSet
- type DataSetAccessor
- type DataSetClient
- type DataSetCreate
- type DataSetFilter
- type DataSetUpdate
- type DataSets
- type Datum
- type Deduplicator
- type DeduplicatorDescriptor
- func (d *DeduplicatorDescriptor) IsRegisteredWithAnyDeduplicator() bool
- func (d *DeduplicatorDescriptor) IsRegisteredWithNamedDeduplicator(name string) bool
- func (d *DeduplicatorDescriptor) Normalize(normalizer Normalizer)
- func (d *DeduplicatorDescriptor) Parse(parser ObjectParser)
- func (d *DeduplicatorDescriptor) RegisterWithDeduplicator(deduplicator Deduplicator) error
- func (d *DeduplicatorDescriptor) Validate(validator structure.Validator)
- type Delete
- type DeleteOrigin
- type Deletes
- type Normalizable
- type Normalizer
- type ObjectParser
Constants ¶
View Source
const ( SchemaVersionCurrent = 3 // DEPRECATED ComputerTimeFormat = "2006-01-02T15:04:05" TimeFormat = time.RFC3339 DataSetTypeContinuous = "continuous" DataSetTypeNormal = "normal" // TODO: Normal? DataSetStateClosed = "closed" DataSetStateOpen = "open" DeviceTagBGM = "bgm" DeviceTagCGM = "cgm" DeviceTagInsulinPump = "insulin-pump" TimeProcessingAcrossTheBoardTimeZone = "across-the-board-timezone" // TODO: Rename to across-the-board-time-zone or alternative TimeProcessingNone = "none" TimeProcessingUTCBootstrapping = "utc-bootstrapping" // TODO: Rename to utc-bootstrap or alternative )
View Source
const (
DeleteOriginIDLengthMaximum = 100
)
Variables ¶
This section is empty.
Functions ¶
func DataSetStates ¶ added in v1.20.0
func DataSetStates() []string
func DataSetTypes ¶ added in v1.20.0
func DataSetTypes() []string
func DeviceTags ¶ added in v1.20.0
func DeviceTags() []string
func ErrorValueStringAsIDNotValid ¶ added in v1.27.0
func ErrorValueStringAsSetIDNotValid ¶ added in v1.27.0
func IDValidator ¶ added in v1.27.0
func IDValidator(value string, errorReporter structure.ErrorReporter)
func IsValidSetID ¶ added in v1.27.0
func SetIDValidator ¶ added in v1.27.0
func SetIDValidator(value string, errorReporter structure.ErrorReporter)
func TimeProcessings ¶ added in v1.20.0
func TimeProcessings() []string
func ValidateID ¶ added in v1.27.0
func ValidateSetID ¶ added in v1.27.0
Types ¶
type ArrayParser ¶
type ArrayParser interface { Logger() log.Logger SetMeta(meta interface{}) AppendError(reference interface{}, err *service.Error) Array() *[]interface{} ParseBoolean(index int) *bool ParseInteger(index int) *int ParseFloat(index int) *float64 ParseString(index int) *string ParseStringArray(index int) *[]string ParseTime(index int, layout string) *time.Time ParseObject(index int) *map[string]interface{} ParseObjectArray(index int) *[]map[string]interface{} ParseInterface(index int) *interface{} ParseInterfaceArray(index int) *[]interface{} ProcessNotParsed() NewChildObjectParser(index int) ObjectParser NewChildArrayParser(index int) ArrayParser }
type Blob ¶ added in v1.24.0
type Blob map[string]interface{}
func ParseBlob ¶ added in v1.24.0
func ParseBlob(parser ObjectParser) *Blob
func (*Blob) Normalize ¶ added in v1.24.0
func (b *Blob) Normalize(normalizer Normalizer)
func (*Blob) Parse ¶ added in v1.24.0
func (b *Blob) Parse(parser ObjectParser)
type BlobArray ¶ added in v1.24.0
type BlobArray []*Blob
func NewBlobArray ¶ added in v1.24.0
func NewBlobArray() *BlobArray
func ParseBlobArray ¶ added in v1.24.0
func ParseBlobArray(parser ArrayParser) *BlobArray
func (*BlobArray) Normalize ¶ added in v1.24.0
func (b *BlobArray) Normalize(normalizer Normalizer)
func (*BlobArray) Parse ¶ added in v1.24.0
func (b *BlobArray) Parse(parser ArrayParser)
type DataSet ¶ added in v1.20.0
type DataSet struct { Active bool `json:"-" bson:"_active"` Annotations *BlobArray `json:"annotations,omitempty" bson:"annotations,omitempty"` ArchivedDataSetID *string `json:"-" bson:"archivedDatasetId,omitempty"` ArchivedTime *string `json:"-" bson:"archivedTime,omitempty"` ByUser *string `json:"byUser,omitempty" bson:"byUser,omitempty"` Client *DataSetClient `json:"client,omitempty" bson:"client,omitempty"` ClockDriftOffset *int `json:"clockDriftOffset,omitempty" bson:"clockDriftOffset,omitempty"` ComputerTime *string `json:"computerTime,omitempty" bson:"computerTime,omitempty"` ConversionOffset *int `json:"conversionOffset,omitempty" bson:"conversionOffset,omitempty"` CreatedTime *string `json:"createdTime,omitempty" bson:"createdTime,omitempty"` CreatedUserID *string `json:"createdUserId,omitempty" bson:"createdUserId,omitempty"` DataSetType *string `json:"dataSetType,omitempty" bson:"dataSetType,omitempty"` DataState *string `json:"-" bson:"_dataState,omitempty"` // TODO: Deprecated DataState (after data migration) Deduplicator *DeduplicatorDescriptor `json:"-" bson:"_deduplicator,omitempty"` DeletedTime *string `json:"deletedTime,omitempty" bson:"deletedTime,omitempty"` DeletedUserID *string `json:"deletedUserId,omitempty" bson:"deletedUserId,omitempty"` DeviceID *string `json:"deviceId,omitempty" bson:"deviceId,omitempty"` DeviceManufacturers *[]string `json:"deviceManufacturers,omitempty" bson:"deviceManufacturers,omitempty"` DeviceModel *string `json:"deviceModel,omitempty" bson:"deviceModel,omitempty"` DeviceSerialNumber *string `json:"deviceSerialNumber,omitempty" bson:"deviceSerialNumber,omitempty"` DeviceTags *[]string `json:"deviceTags,omitempty" bson:"deviceTags,omitempty"` DeviceTime *string `json:"deviceTime,omitempty" bson:"deviceTime,omitempty"` GUID *string `json:"guid,omitempty" bson:"guid,omitempty"` ID *string `json:"id,omitempty" bson:"id,omitempty"` ModifiedTime *string `json:"modifiedTime,omitempty" bson:"modifiedTime,omitempty"` ModifiedUserID *string `json:"modifiedUserId,omitempty" bson:"modifiedUserId,omitempty"` Payload *Blob `json:"payload,omitempty" bson:"payload,omitempty"` SchemaVersion int `json:"-" bson:"_schemaVersion,omitempty"` Source *string `json:"source,omitempty" bson:"source,omitempty"` State *string `json:"-" bson:"_state,omitempty"` Time *string `json:"time,omitempty" bson:"time,omitempty"` TimeProcessing *string `json:"timeProcessing,omitempty" bson:"timeProcessing,omitempty"` TimeZoneName *string `json:"timezone,omitempty" bson:"timezone,omitempty"` TimeZoneOffset *int `json:"timezoneOffset,omitempty" bson:"timezoneOffset,omitempty"` Type string `json:"type,omitempty" bson:"type,omitempty"` UploadID *string `json:"uploadId,omitempty" bson:"uploadId,omitempty"` UserID *string `json:"-" bson:"_userId,omitempty"` Version *string `json:"version,omitempty" bson:"version,omitempty"` VersionInternal int `json:"-" bson:"_version,omitempty"` }
type DataSetAccessor ¶ added in v1.20.0
type DataSetAccessor interface { ListUserDataSets(ctx context.Context, userID string, filter *DataSetFilter, pagination *page.Pagination) (DataSets, error) CreateUserDataSet(ctx context.Context, userID string, create *DataSetCreate) (*DataSet, error) GetDataSet(ctx context.Context, id string) (*DataSet, error) UpdateDataSet(ctx context.Context, id string, update *DataSetUpdate) (*DataSet, error) DeleteDataSet(ctx context.Context, id string) error }
type DataSetClient ¶ added in v1.20.0
type DataSetClient struct { Name *string `json:"name,omitempty" bson:"name,omitempty"` Version *string `json:"version,omitempty" bson:"version,omitempty"` Private *map[string]interface{} `json:"private,omitempty" bson:"private,omitempty"` }
func NewDataSetClient ¶ added in v1.20.0
func NewDataSetClient() *DataSetClient
func (*DataSetClient) Parse ¶ added in v1.20.0
func (d *DataSetClient) Parse(parser structure.ObjectParser)
func (*DataSetClient) Validate ¶ added in v1.20.0
func (d *DataSetClient) Validate(validator structure.Validator)
type DataSetCreate ¶ added in v1.20.0
type DataSetCreate struct { Client *DataSetClient `json:"client,omitempty"` DataSetType *string `json:"dataSetType,omitempty"` DeviceID *string `json:"deviceId,omitempty"` DeviceManufacturers *[]string `json:"deviceManufacturers,omitempty"` DeviceModel *string `json:"deviceModel,omitempty"` DeviceSerialNumber *string `json:"deviceSerialNumber,omitempty"` DeviceTags *[]string `json:"deviceTags,omitempty"` Time *time.Time `json:"time,omitempty"` Type string `json:"type,omitempty"` TimeProcessing *string `json:"timeProcessing,omitempty"` TimeZoneName *string `json:"timezone,omitempty"` TimeZoneOffset *int `json:"timezoneOffset,omitempty"` }
func NewDataSetCreate ¶ added in v1.20.0
func NewDataSetCreate() *DataSetCreate
func (*DataSetCreate) Normalize ¶ added in v1.20.0
func (d *DataSetCreate) Normalize(normalizer structure.Normalizer)
func (*DataSetCreate) Parse ¶ added in v1.20.0
func (d *DataSetCreate) Parse(parser structure.ObjectParser)
func (*DataSetCreate) Validate ¶ added in v1.20.0
func (d *DataSetCreate) Validate(validator structure.Validator)
type DataSetFilter ¶ added in v1.21.0
func NewDataSetFilter ¶ added in v1.21.0
func NewDataSetFilter() *DataSetFilter
func (*DataSetFilter) MutateRequest ¶ added in v1.27.0
func (d *DataSetFilter) MutateRequest(req *http.Request) error
func (*DataSetFilter) Parse ¶ added in v1.21.0
func (d *DataSetFilter) Parse(parser structure.ObjectParser)
func (*DataSetFilter) Validate ¶ added in v1.21.0
func (d *DataSetFilter) Validate(validator structure.Validator)
type DataSetUpdate ¶ added in v1.20.0
type DataSetUpdate struct { Active *bool `json:"-"` DeviceID *string `json:"deviceId,omitempty"` DeviceModel *string `json:"deviceModel,omitempty"` DeviceSerialNumber *string `json:"deviceSerialNumber,omitempty"` Deduplicator *DeduplicatorDescriptor `json:"-"` State *string `json:"state,omitempty"` Time *time.Time `json:"time,omitempty"` TimeZoneName *string `json:"timezone,omitempty"` TimeZoneOffset *int `json:"timezoneOffset,omitempty"` }
func NewDataSetUpdate ¶ added in v1.20.0
func NewDataSetUpdate() *DataSetUpdate
func (*DataSetUpdate) HasUpdates ¶ added in v1.20.0
func (d *DataSetUpdate) HasUpdates() bool
func (*DataSetUpdate) Parse ¶ added in v1.20.0
func (d *DataSetUpdate) Parse(parser structure.ObjectParser)
func (*DataSetUpdate) Validate ¶ added in v1.20.0
func (d *DataSetUpdate) Validate(validator structure.Validator)
type Datum ¶
type Datum interface { Meta() interface{} Parse(parser ObjectParser) error Validate(validator structure.Validator) Normalize(normalizer Normalizer) IdentityFields() ([]string, error) GetPayload() *Blob SetUserID(userID *string) SetDataSetID(dataSetID *string) SetActive(active bool) SetDeviceID(deviceID *string) SetCreatedTime(createdTime *string) SetCreatedUserID(createdUserID *string) SetModifiedTime(modifiedTime *string) SetModifiedUserID(modifiedUserID *string) SetDeletedTime(deletedTime *string) SetDeletedUserID(deletedUserID *string) DeduplicatorDescriptor() *DeduplicatorDescriptor SetDeduplicatorDescriptor(deduplicatorDescriptor *DeduplicatorDescriptor) }
func DatumAsPointer ¶ added in v1.26.0
type Deduplicator ¶ added in v1.4.0
type DeduplicatorDescriptor ¶ added in v1.4.0
type DeduplicatorDescriptor struct { Name string `bson:"name,omitempty"` Version string `bson:"version,omitempty"` Hash string `bson:"hash,omitempty"` }
func NewDeduplicatorDescriptor ¶ added in v1.5.0
func NewDeduplicatorDescriptor() *DeduplicatorDescriptor
func ParseDeduplicatorDescriptor ¶ added in v1.29.0
func ParseDeduplicatorDescriptor(parser ObjectParser) *DeduplicatorDescriptor
func (*DeduplicatorDescriptor) IsRegisteredWithAnyDeduplicator ¶ added in v1.5.0
func (d *DeduplicatorDescriptor) IsRegisteredWithAnyDeduplicator() bool
func (*DeduplicatorDescriptor) IsRegisteredWithNamedDeduplicator ¶ added in v1.5.0
func (d *DeduplicatorDescriptor) IsRegisteredWithNamedDeduplicator(name string) bool
func (*DeduplicatorDescriptor) Normalize ¶ added in v1.24.0
func (d *DeduplicatorDescriptor) Normalize(normalizer Normalizer)
func (*DeduplicatorDescriptor) Parse ¶ added in v1.29.0
func (d *DeduplicatorDescriptor) Parse(parser ObjectParser)
func (*DeduplicatorDescriptor) RegisterWithDeduplicator ¶ added in v1.8.0
func (d *DeduplicatorDescriptor) RegisterWithDeduplicator(deduplicator Deduplicator) error
func (*DeduplicatorDescriptor) Validate ¶ added in v1.24.0
func (d *DeduplicatorDescriptor) Validate(validator structure.Validator)
type Delete ¶
type Delete struct { ID *string `json:"id,omitempty"` Origin *DeleteOrigin `json:"origin,omitempty"` }
func ParseDelete ¶
func ParseDelete(parser structure.ObjectParser) *Delete
func (*Delete) Parse ¶
func (d *Delete) Parse(parser structure.ObjectParser)
type DeleteOrigin ¶
type DeleteOrigin struct {
ID *string `json:"id,omitempty"`
}
func NewDeleteOrigin ¶
func NewDeleteOrigin() *DeleteOrigin
func ParseDeleteOrigin ¶
func ParseDeleteOrigin(parser structure.ObjectParser) *DeleteOrigin
func (*DeleteOrigin) Parse ¶
func (d *DeleteOrigin) Parse(parser structure.ObjectParser)
func (*DeleteOrigin) Validate ¶
func (d *DeleteOrigin) Validate(validator structure.Validator)
type Deletes ¶
type Deletes []*Delete
func NewDeletes ¶
func NewDeletes() *Deletes
func ParseDeletes ¶
func ParseDeletes(parser structure.ArrayParser) *Deletes
func (*Deletes) Parse ¶
func (d *Deletes) Parse(parser structure.ArrayParser)
type Normalizable ¶ added in v1.24.0
type Normalizable interface {
Normalize(normalizer Normalizer)
}
type Normalizer ¶
type Normalizer interface { structure.OriginReporter structure.SourceReporter structure.MetaReporter structure.ErrorReporter Normalize(normalizable Normalizable) error AddData(data ...Datum) WithOrigin(origin structure.Origin) Normalizer WithSource(source structure.Source) Normalizer WithMeta(meta interface{}) Normalizer WithReference(reference string) Normalizer }
type ObjectParser ¶
type ObjectParser interface { Logger() log.Logger SetMeta(meta interface{}) AppendError(reference interface{}, err *service.Error) Object() *map[string]interface{} ParseBoolean(key string) *bool ParseInteger(key string) *int ParseFloat(key string) *float64 ParseString(key string) *string ParseStringArray(key string) *[]string ParseTime(key string, layout string) *time.Time ParseObject(key string) *map[string]interface{} ParseObjectArray(key string) *[]map[string]interface{} ParseInterface(key string) *interface{} ParseInterfaceArray(key string) *[]interface{} ProcessNotParsed() NewChildObjectParser(key string) ObjectParser NewChildArrayParser(key string) ArrayParser }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.