Documentation
¶
Index ¶
- type Mongo
- func (m *Mongo) AddDimensionToInstance(opt *models.CachedDimensionOption) error
- func (m *Mongo) AddEventToInstance(instanceID string, event *models.Event) error
- func (m *Mongo) AddInstance(instance *models.Instance) (*models.Instance, error)
- func (m *Mongo) CheckDatasetExists(id, state string) error
- func (m *Mongo) CheckEditionExists(id, editionID, state string) error
- func (m *Mongo) Checker(ctx context.Context, state *healthcheck.CheckState) error
- func (m *Mongo) Close(ctx context.Context) error
- func (m *Mongo) DeleteDataset(id string) (err error)
- func (m *Mongo) DeleteEdition(id string) (err error)
- func (m *Mongo) GetDataset(id string) (*models.DatasetUpdate, error)
- func (m *Mongo) GetDatasets(ctx context.Context, offset, limit int, authorised bool) ([]*models.DatasetUpdate, int, error)
- func (m *Mongo) GetDimensionOptions(version *models.Version, dimension string, offset, limit int) (*models.DimensionOptionResults, error)
- func (m *Mongo) GetDimensionOptionsFromIDs(version *models.Version, dimension string, IDs []string) (*models.DimensionOptionResults, error)
- func (m *Mongo) GetDimensions(datasetID, versionID string) ([]bson.M, error)
- func (m *Mongo) GetDimensionsFromInstance(id string) (*models.DimensionNodeResults, error)
- func (m *Mongo) GetEdition(id, editionID, state string) (*models.EditionUpdate, error)
- func (m *Mongo) GetEditions(ctx context.Context, id, state string, offset, limit int, authorised bool) ([]*models.EditionUpdate, int, error)
- func (m *Mongo) GetInstance(ID string) (*models.Instance, error)
- func (m *Mongo) GetInstances(ctx context.Context, states []string, datasets []string, offset, limit int) (*models.InstanceResults, error)
- func (m *Mongo) GetNextVersion(datasetID, edition string) (int, error)
- func (m *Mongo) GetUniqueDimensionAndOptions(id, dimension string) (*models.DimensionValues, error)
- func (m *Mongo) GetVersion(id, editionID, versionID, state string) (*models.Version, error)
- func (m *Mongo) GetVersions(ctx context.Context, datasetID, editionID, state string, offset, limit int) (*models.VersionResults, error)
- func (m *Mongo) Init() (err error)
- func (m *Mongo) Ping(ctx context.Context) (time.Time, error)
- func (m *Mongo) UpdateBuildHierarchyTaskState(id, dimension, state string) (err error)
- func (m *Mongo) UpdateBuildSearchTaskState(id, dimension, state string) (err error)
- func (m *Mongo) UpdateDataset(ctx context.Context, id string, dataset *models.Dataset, currentState string) (err error)
- func (m *Mongo) UpdateDatasetWithAssociation(id, state string, version *models.Version) (err error)
- func (m *Mongo) UpdateDimensionNodeIDAndOrder(dimension *models.DimensionOption) error
- func (m *Mongo) UpdateImportObservationsTaskState(id string, state string) error
- func (m *Mongo) UpdateInstance(ctx context.Context, instanceID string, instance *models.Instance) error
- func (m *Mongo) UpdateObservationInserted(id string, observationInserted int64) error
- func (m *Mongo) UpdateVersion(id string, version *models.Version) (err error)
- func (m *Mongo) UpsertContact(id string, update interface{}) (err error)
- func (m *Mongo) UpsertDataset(id string, datasetDoc *models.DatasetUpdate) (err error)
- func (m *Mongo) UpsertEdition(datasetID, edition string, editionDoc *models.EditionUpdate) (err error)
- func (m *Mongo) UpsertVersion(id string, version *models.Version) (err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Mongo ¶
type Mongo struct {
CodeListURL string
Collection string
Database string
DatasetURL string
Session *mgo.Session
URI string
// contains filtered or unexported fields
}
Mongo represents a simplistic MongoDB configuration.
func (*Mongo) AddDimensionToInstance ¶
func (m *Mongo) AddDimensionToInstance(opt *models.CachedDimensionOption) error
AddDimensionToInstance to the dimension collection
func (*Mongo) AddEventToInstance ¶
AddEventToInstance to the instance collection
func (*Mongo) AddInstance ¶
AddInstance to the instance collection
func (*Mongo) CheckDatasetExists ¶
CheckDatasetExists checks that the dataset exists
func (*Mongo) CheckEditionExists ¶
CheckEditionExists checks that the edition of a dataset exists
func (*Mongo) Checker ¶ added in v1.22.0
func (m *Mongo) Checker(ctx context.Context, state *healthcheck.CheckState) error
Checker is called by the healthcheck library to check the health state of this mongoDB instance
func (*Mongo) Close ¶ added in v1.22.0
Close represents mongo session closing within the context deadline
func (*Mongo) DeleteDataset ¶
DeleteDataset deletes an existing dataset document
func (*Mongo) DeleteEdition ¶
DeleteEdition deletes an existing edition document
func (*Mongo) GetDataset ¶
func (m *Mongo) GetDataset(id string) (*models.DatasetUpdate, error)
GetDataset retrieves a dataset document
func (*Mongo) GetDatasets ¶
func (m *Mongo) GetDatasets(ctx context.Context, offset, limit int, authorised bool) ([]*models.DatasetUpdate, int, error)
GetDatasets retrieves all dataset documents
func (*Mongo) GetDimensionOptions ¶
func (m *Mongo) GetDimensionOptions(version *models.Version, dimension string, offset, limit int) (*models.DimensionOptionResults, error)
GetDimensionOptions returns dimension options for a dimensions within a dataset, according to the provided limit and offest. Offset and limit need to be positive or zero. Zero limit is equivalent to no limit (all items starting at offset will be returned)
func (*Mongo) GetDimensionOptionsFromIDs ¶ added in v1.25.0
func (m *Mongo) GetDimensionOptionsFromIDs(version *models.Version, dimension string, IDs []string) (*models.DimensionOptionResults, error)
GetDimensionOptionsFromIDs returns dimension options for a dimension within a dataset, whose IDs match the provided list of IDs
func (*Mongo) GetDimensions ¶
GetDimensions returns a list of all dimensions from a dataset
func (*Mongo) GetDimensionsFromInstance ¶
func (m *Mongo) GetDimensionsFromInstance(id string) (*models.DimensionNodeResults, error)
GetDimensionsFromInstance returns a list of dimensions and their options for an instance resource
func (*Mongo) GetEdition ¶
func (m *Mongo) GetEdition(id, editionID, state string) (*models.EditionUpdate, error)
GetEdition retrieves an edition document for a dataset
func (*Mongo) GetEditions ¶
func (m *Mongo) GetEditions(ctx context.Context, id, state string, offset, limit int, authorised bool) ([]*models.EditionUpdate, int, error)
GetEditions retrieves all edition documents for a dataset
func (*Mongo) GetInstance ¶
GetInstance returns a single instance from an ID
func (*Mongo) GetInstances ¶
func (m *Mongo) GetInstances(ctx context.Context, states []string, datasets []string, offset, limit int) (*models.InstanceResults, error)
GetInstances from a mongo collection
func (*Mongo) GetNextVersion ¶
GetNextVersion retrieves the latest version for an edition of a dataset
func (*Mongo) GetUniqueDimensionAndOptions ¶
func (m *Mongo) GetUniqueDimensionAndOptions(id, dimension string) (*models.DimensionValues, error)
GetUniqueDimensionAndOptions returns a list of dimension options for an instance resource
func (*Mongo) GetVersion ¶
GetVersion retrieves a version document for a dataset edition
func (*Mongo) GetVersions ¶
func (m *Mongo) GetVersions(ctx context.Context, datasetID, editionID, state string, offset, limit int) (*models.VersionResults, error)
GetVersions retrieves all version documents for a dataset edition
func (*Mongo) Init ¶
Init creates a new mgo.Session with a strong consistency and a write mode of "majortiy"; and initialises the mongo health client.
func (*Mongo) UpdateBuildHierarchyTaskState ¶
UpdateBuildHierarchyTaskState updates the state of a build hierarchy task.
func (*Mongo) UpdateBuildSearchTaskState ¶
UpdateBuildSearchTaskState updates the state of a build search task.
func (*Mongo) UpdateDataset ¶
func (m *Mongo) UpdateDataset(ctx context.Context, id string, dataset *models.Dataset, currentState string) (err error)
UpdateDataset updates an existing dataset document
func (*Mongo) UpdateDatasetWithAssociation ¶
UpdateDatasetWithAssociation updates an existing dataset document with collection data
func (*Mongo) UpdateDimensionNodeIDAndOrder ¶ added in v1.28.0
func (m *Mongo) UpdateDimensionNodeIDAndOrder(dimension *models.DimensionOption) error
UpdateDimensionNodeIDAndOrder to cache the id and order (optional) for other import processes
func (*Mongo) UpdateImportObservationsTaskState ¶
UpdateImportObservationsTaskState to the given state.
func (*Mongo) UpdateInstance ¶
func (m *Mongo) UpdateInstance(ctx context.Context, instanceID string, instance *models.Instance) error
UpdateInstance with new properties
func (*Mongo) UpdateObservationInserted ¶
UpdateObservationInserted by incrementing the stored value
func (*Mongo) UpdateVersion ¶
UpdateVersion updates an existing version document
func (*Mongo) UpsertContact ¶
UpsertContact adds or overides an existing contact document
func (*Mongo) UpsertDataset ¶
func (m *Mongo) UpsertDataset(id string, datasetDoc *models.DatasetUpdate) (err error)
UpsertDataset adds or overides an existing dataset document
func (*Mongo) UpsertEdition ¶
func (m *Mongo) UpsertEdition(datasetID, edition string, editionDoc *models.EditionUpdate) (err error)
UpsertEdition adds or overides an existing edition document