This commit is contained in:
Matthew Dillon 2015-10-02 16:20:07 -07:00
parent a880fdea82
commit efb0cc13fa
41 changed files with 569 additions and 386 deletions

View file

@ -6,6 +6,8 @@ import (
"github.com/thermokarst/bactdb/models"
)
// Characteristic is a payload that sideloads all of the necessary entities for
// a particular characteristic.
type Characteristic struct {
Characteristic *models.Characteristic `json:"characteristic"`
Measurements *models.Measurements `json:"measurements"`
@ -14,6 +16,8 @@ type Characteristic struct {
Meta *models.CharacteristicMeta `json:"meta"`
}
// Characteristics is a payload that sideloads all of the necessary entities for
// multiple characteristics.
type Characteristics struct {
Characteristics *models.Characteristics `json:"characteristics"`
Measurements *models.Measurements `json:"measurements"`
@ -22,10 +26,12 @@ type Characteristics struct {
Meta *models.CharacteristicMeta `json:"meta"`
}
// Marshal satisfies the CRUD interfaces.
func (c *Characteristic) Marshal() ([]byte, error) {
return json.Marshal(c)
}
// Marshal satisfies the CRUD interfaces.
func (c *Characteristics) Marshal() ([]byte, error) {
return json.Marshal(c)
}

View file

@ -6,20 +6,26 @@ import (
"github.com/thermokarst/bactdb/models"
)
// Measurement is a payload that sideloads all of the necessary entities for
// a particular measurement.
type Measurement struct {
Measurement *models.Measurement `json:"measurement"`
}
// Measurements is a payload that sideloads all of the necessary entities for
// multiple measurements.
type Measurements struct {
Strains *models.Strains `json:"strains"`
Characteristics *models.Characteristics `json:"characteristics"`
Measurements *models.Measurements `json:"measurements"`
}
// Marshal satisfies the CRUD interfaces.
func (m *Measurement) Marshal() ([]byte, error) {
return json.Marshal(m)
}
// Marshal satisfies the CRUD interfaces.
func (m *Measurements) Marshal() ([]byte, error) {
return json.Marshal(m)
}

View file

@ -6,22 +6,28 @@ import (
"github.com/thermokarst/bactdb/models"
)
// Species is a payload that sideloads all of the necessary entities for a
// particular species.
type Species struct {
Species *models.Species `json:"species"`
Strains *models.Strains `json:"strains"`
Meta *models.SpeciesMeta `json:"meta"`
}
// ManySpecies is a payload that sideloads all of the necessary entities for
// multiple species.
type ManySpecies struct {
Species *models.ManySpecies `json:"species"`
Strains *models.Strains `json:"strains"`
Meta *models.SpeciesMeta `json:"meta"`
}
// Marshal satisfies the CRUD interfaces.
func (s *Species) Marshal() ([]byte, error) {
return json.Marshal(s)
}
// Marshal satisfies the CRUD interfaces.
func (s *ManySpecies) Marshal() ([]byte, error) {
return json.Marshal(s)
}

View file

@ -6,6 +6,8 @@ import (
"github.com/thermokarst/bactdb/models"
)
// Strain is a payload that sideloads all of the necessary entities for a
// particular strain.
type Strain struct {
Strain *models.Strain `json:"strain"`
Species *models.ManySpecies `json:"species"`
@ -14,6 +16,8 @@ type Strain struct {
Meta *models.StrainMeta `json:"meta"`
}
// Strains is a payload that sideloads all of the necessary entities for
// multiple strains.
type Strains struct {
Strains *models.Strains `json:"strains"`
Species *models.ManySpecies `json:"species"`
@ -22,10 +26,12 @@ type Strains struct {
Meta *models.StrainMeta `json:"meta"`
}
// Marshal satisfies the CRUD interfaces.
func (s *Strain) Marshal() ([]byte, error) {
return json.Marshal(s)
}
// Marshal satisfies the CRUD interfaces.
func (s *Strains) Marshal() ([]byte, error) {
return json.Marshal(s)
}

View file

@ -6,11 +6,26 @@ import (
"github.com/thermokarst/bactdb/models"
)
// User is a payload that sideloads all of the necessary entities for a
// particular user.
type User struct {
User *models.User `json:"user"`
Meta *models.UserMeta `json:"meta"`
}
// Users is a payload that sideloads all of the necessary entities for
// multiple users.
type Users struct {
Users *models.Users `json:"users"`
Meta *models.UserMeta `json:"meta"`
}
// Marshal satisfies the CRUD interfaces.
func (u *User) Marshal() ([]byte, error) {
return json.Marshal(u)
}
// Marshal satisfies the CRUD interfaces.
func (u *Users) Marshal() ([]byte, error) {
return json.Marshal(u)
}