Documentation ¶
Index ¶
- Constants
- Variables
- type ArrayParser
- type Boolean
- type Context
- type DataSet
- type DataSetAccessor
- type DataSetClient
- type DataSetCreate
- type DataSetUpdate
- type DataSets
- type DataSource
- type DataSourceAccessor
- type DataSourceCreate
- type DataSourceFilter
- type DataSourceUpdate
- type DataSources
- type Datum
- type Deduplicator
- type DeduplicatorDescriptor
- type Factory
- type Float
- type Inspector
- type Integer
- type Interface
- type InterfaceArray
- type Normalizer
- type Object
- type ObjectArray
- type ObjectParser
- type String
- type StringArray
- type Time
- type Validator
Constants ¶
View Source
const ( SchemaVersionCurrent = 3 // DEPRECATED ComputerTimeFormat = "2006-01-02T15:04:05" TimeFormat = "2006-01-02T15:04:05Z07:00" DataSetTypeContinuous = "continuous" DataSetTypeNormal = "normal" // TODO: Normal? DataSetStateClosed = "closed" DataSetStateOpen = "open" DeviceTagBGM = "bgm" DeviceTagCGM = "cgm" DeviceTagInsulinPump = "insulin-pump" TimeProcessingAcrossTheBoardTimezone = "across-the-board-timezone" TimeProcessingNone = "none" TimeProcessingUTCBootstrapping = "utc-bootstrapping" )
View Source
const ( DataSourceStateConnected = "connected" DataSourceStateDisconnected = "disconnected" DataSourceStateError = "error" )
Variables ¶
View Source
var DataSetStates = []string{DataSetStateClosed, DataSetStateOpen}
View Source
var DataSetTypes = []string{DataSetTypeContinuous, DataSetTypeNormal}
View Source
var DataSourceStates = []string{DataSourceStateConnected, DataSourceStateDisconnected, DataSourceStateError}
View Source
var DeviceTags = []string{DeviceTagBGM, DeviceTagCGM, DeviceTagInsulinPump}
View Source
var TimeProcessings = []string{TimeProcessingAcrossTheBoardTimezone, TimeProcessingNone, TimeProcessingUTCBootstrapping}
Functions ¶
This section is empty.
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 ParseObject(index int) *map[string]interface{} ParseObjectArray(index int) *[]map[string]interface{} ParseInterface(index int) *interface{} ParseInterfaceArray(index int) *[]interface{} ParseDatum(index int) *Datum ParseDatumArray(index int) *[]Datum ProcessNotParsed() NewChildObjectParser(index int) ObjectParser NewChildArrayParser(index int) ArrayParser }
type DataSet ¶ added in v1.20.0
type DataSet struct { Active bool `json:"-" bson:"_active"` Annotations *[]map[string]interface{} `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 *map[string]interface{} `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"` Timezone *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 { 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"` }
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"` Timezone 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 DataSetUpdate ¶ added in v1.20.0
type DataSetUpdate struct { Active *bool `json:"-"` Deduplicator *DeduplicatorDescriptor `json:"-"` State *string `json:"state,omitempty"` Time *time.Time `json:"time,omitempty"` Timezone *string `json:"timezone,omitempty"` TimezoneOffset *int `json:"timezoneOffset,omitempty"` }
func NewDataSetUpdate ¶ added in v1.20.0
func NewDataSetUpdate() *DataSetUpdate
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 DataSource ¶ added in v1.20.0
type DataSource struct { ID string `json:"id" bson:"id"` UserID string `json:"userId" bson:"userId"` ProviderType string `json:"providerType" bson:"providerType"` ProviderName string `json:"providerName" bson:"providerName"` ProviderSessionID *string `json:"providerSessionId,omitempty" bson:"providerSessionId,omitempty"` State string `json:"state,omitempty" bson:"state,omitempty"` Error *errors.Serializable `json:"error,omitempty" bson:"error,omitempty"` DataSetIDs []string `json:"dataSetIds,omitempty" bson:"dataSetIds,omitempty"` LastImportTime *time.Time `json:"lastImportTime,omitempty" bson:"lastImportTime,omitempty"` LatestDataTime *time.Time `json:"latestDataTime,omitempty" bson:"latestDataTime,omitempty"` CreatedTime time.Time `json:"createdTime" bson:"createdTime"` ModifiedTime *time.Time `json:"modifiedTime,omitempty" bson:"modifiedTime,omitempty"` }
func NewDataSource ¶ added in v1.20.0
func NewDataSource(userID string, create *DataSourceCreate) (*DataSource, error)
func (*DataSource) Normalize ¶ added in v1.20.0
func (d *DataSource) Normalize(normalizer structure.Normalizer)
func (*DataSource) Parse ¶ added in v1.20.0
func (d *DataSource) Parse(parser structure.ObjectParser)
func (*DataSource) Sanitize ¶ added in v1.20.0
func (d *DataSource) Sanitize(details request.Details) error
func (*DataSource) Validate ¶ added in v1.20.0
func (d *DataSource) Validate(validator structure.Validator)
type DataSourceAccessor ¶ added in v1.20.0
type DataSourceAccessor interface { ListUserDataSources(ctx context.Context, userID string, filter *DataSourceFilter, pagination *page.Pagination) (DataSources, error) CreateUserDataSource(ctx context.Context, userID string, create *DataSourceCreate) (*DataSource, error) GetDataSource(ctx context.Context, id string) (*DataSource, error) UpdateDataSource(ctx context.Context, id string, update *DataSourceUpdate) (*DataSource, error) DeleteDataSource(ctx context.Context, id string) error }
type DataSourceCreate ¶ added in v1.20.0
type DataSourceCreate struct { ProviderType string `json:"providerType" bson:"providerType"` ProviderName string `json:"providerName" bson:"providerName"` ProviderSessionID string `json:"providerSessionId" bson:"providerSessionId"` State string `json:"state,omitempty" bson:"state,omitempty"` }
func NewDataSourceCreate ¶ added in v1.20.0
func NewDataSourceCreate() *DataSourceCreate
func (*DataSourceCreate) Parse ¶ added in v1.20.0
func (d *DataSourceCreate) Parse(parser structure.ObjectParser)
func (*DataSourceCreate) Validate ¶ added in v1.20.0
func (d *DataSourceCreate) Validate(validator structure.Validator)
type DataSourceFilter ¶ added in v1.20.0
type DataSourceFilter struct { ProviderType *string `json:"providerType,omitempty" bson:"providerType,omitempty"` ProviderName *string `json:"providerName,omitempty" bson:"providerName,omitempty"` ProviderSessionID *string `json:"providerSessionId,omitempty" bson:"providerSessionId,omitempty"` State *string `json:"state,omitempty" bson:"state,omitempty"` }
func NewDataSourceFilter ¶ added in v1.20.0
func NewDataSourceFilter() *DataSourceFilter
func (*DataSourceFilter) Mutate ¶ added in v1.20.0
func (d *DataSourceFilter) Mutate(req *http.Request) error
func (*DataSourceFilter) Parse ¶ added in v1.20.0
func (d *DataSourceFilter) Parse(parser structure.ObjectParser)
func (*DataSourceFilter) Validate ¶ added in v1.20.0
func (d *DataSourceFilter) Validate(validator structure.Validator)
type DataSourceUpdate ¶ added in v1.20.0
type DataSourceUpdate struct { State *string `json:"state,omitempty" bson:"state,omitempty"` Error *errors.Serializable `json:"error,omitempty" bson:"error,omitempty"` DataSetIDs *[]string `json:"dataSetIds,omitempty" bson:"dataSetIds,omitempty"` LastImportTime *time.Time `json:"lastImportTime,omitempty" bson:"lastImportTime,omitempty"` LatestDataTime *time.Time `json:"latestDataTime,omitempty" bson:"latestDataTime,omitempty"` }
func NewDataSourceUpdate ¶ added in v1.20.0
func NewDataSourceUpdate() *DataSourceUpdate
func (*DataSourceUpdate) Normalize ¶ added in v1.20.0
func (d *DataSourceUpdate) Normalize(normalizer structure.Normalizer)
func (*DataSourceUpdate) Parse ¶ added in v1.20.0
func (d *DataSourceUpdate) Parse(parser structure.ObjectParser)
func (*DataSourceUpdate) Validate ¶ added in v1.20.0
func (d *DataSourceUpdate) Validate(validator structure.Validator)
type DataSources ¶ added in v1.20.0
type DataSources []*DataSource
type Datum ¶
type Datum interface { Init() Meta() interface{} Parse(parser ObjectParser) error Validate(validator Validator) error Normalize(normalizer Normalizer) error IdentityFields() ([]string, error) GetPayload() *map[string]interface{} SetUserID(userID string) SetDatasetID(datasetID string) SetActive(active bool) SetCreatedTime(createdTime string) SetCreatedUserID(createdUserID string) SetModifiedTime(modifiedTime string) SetModifiedUserID(modifiedUserID string) SetDeletedTime(deletedTime string) SetDeletedUserID(deletedUserID string) DeduplicatorDescriptor() *DeduplicatorDescriptor SetDeduplicatorDescriptor(deduplicatorDescriptor *DeduplicatorDescriptor) }
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 (*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) RegisterWithDeduplicator ¶ added in v1.8.0
func (d *DeduplicatorDescriptor) RegisterWithDeduplicator(deduplicator Deduplicator) error
type Float ¶
type Float interface { Exists() Float NotExists() Float EqualTo(value float64) Float NotEqualTo(value float64) Float LessThan(limit float64) Float LessThanOrEqualTo(limit float64) Float GreaterThan(limit float64) Float GreaterThanOrEqualTo(limit float64) Float InRange(lowerLimit float64, upperLimit float64) Float OneOf(allowedValues []float64) Float NotOneOf(disallowedValues []float64) Float }
type Integer ¶
type Integer interface { Exists() Integer NotExists() Integer EqualTo(value int) Integer NotEqualTo(value int) Integer LessThan(limit int) Integer LessThanOrEqualTo(limit int) Integer GreaterThan(limit int) Integer GreaterThanOrEqualTo(limit int) Integer InRange(lowerLimit int, upperLimit int) Integer OneOf(allowedValues []int) Integer NotOneOf(disallowedValues []int) Integer }
type InterfaceArray ¶
type InterfaceArray interface { Exists() InterfaceArray NotExists() InterfaceArray Empty() InterfaceArray NotEmpty() InterfaceArray LengthEqualTo(limit int) InterfaceArray LengthNotEqualTo(limit int) InterfaceArray LengthLessThan(limit int) InterfaceArray LengthLessThanOrEqualTo(limit int) InterfaceArray LengthGreaterThan(limit int) InterfaceArray LengthGreaterThanOrEqualTo(limit int) InterfaceArray LengthInRange(lowerLimit int, upperLimit int) InterfaceArray }
type Normalizer ¶
type ObjectArray ¶
type ObjectArray interface { Exists() ObjectArray NotExists() ObjectArray Empty() ObjectArray NotEmpty() ObjectArray LengthEqualTo(limit int) ObjectArray LengthNotEqualTo(limit int) ObjectArray LengthLessThan(limit int) ObjectArray LengthLessThanOrEqualTo(limit int) ObjectArray LengthGreaterThan(limit int) ObjectArray LengthGreaterThanOrEqualTo(limit int) ObjectArray LengthInRange(lowerLimit int, upperLimit int) ObjectArray }
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 ParseObject(key string) *map[string]interface{} ParseObjectArray(key string) *[]map[string]interface{} ParseInterface(key string) *interface{} ParseInterfaceArray(key string) *[]interface{} ParseDatum(key string) *Datum ParseDatumArray(key string) *[]Datum ProcessNotParsed() NewChildObjectParser(key string) ObjectParser NewChildArrayParser(key string) ArrayParser }
type String ¶
type String interface { Exists() String NotExists() String Empty() String NotEmpty() String EqualTo(value string) String NotEqualTo(value string) String LengthEqualTo(limit int) String LengthNotEqualTo(limit int) String LengthLessThan(limit int) String LengthLessThanOrEqualTo(limit int) String LengthGreaterThan(limit int) String LengthGreaterThanOrEqualTo(limit int) String LengthInRange(lowerLimit int, upperLimit int) String OneOf(allowedValues []string) String NotOneOf(disallowedValues []string) String }
type StringArray ¶
type StringArray interface { Exists() StringArray NotExists() StringArray Empty() StringArray NotEmpty() StringArray LengthEqualTo(limit int) StringArray LengthNotEqualTo(limit int) StringArray LengthLessThan(limit int) StringArray LengthLessThanOrEqualTo(limit int) StringArray LengthGreaterThan(limit int) StringArray LengthGreaterThanOrEqualTo(limit int) StringArray LengthInRange(lowerLimit int, upperLimit int) StringArray EachOneOf(allowedValues []string) StringArray EachNotOneOf(disallowedValues []string) StringArray }
type Validator ¶
type Validator interface { Logger() log.Logger SetMeta(meta interface{}) AppendError(reference interface{}, err *service.Error) ValidateBoolean(reference interface{}, value *bool) Boolean ValidateInteger(reference interface{}, value *int) Integer ValidateFloat(reference interface{}, value *float64) Float ValidateString(reference interface{}, value *string) String ValidateStringArray(reference interface{}, value *[]string) StringArray ValidateObject(reference interface{}, value *map[string]interface{}) Object ValidateObjectArray(reference interface{}, value *[]map[string]interface{}) ObjectArray ValidateInterface(reference interface{}, value *interface{}) Interface ValidateInterfaceArray(reference interface{}, value *[]interface{}) InterfaceArray ValidateStringAsTime(reference interface{}, stringValue *string, timeLayout string) Time NewChildValidator(reference interface{}) Validator }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.