badalsahani's picture
feat: chroma initial deploy
287a0bc
package model
import (
"github.com/chroma/chroma-coordinator/internal/types"
)
type Collection struct {
ID types.UniqueID
Name string
Topic string
Dimension *int32
Metadata *CollectionMetadata[CollectionMetadataValueType]
Created bool
TenantID string
DatabaseName string
Ts types.Timestamp
}
type CreateCollection struct {
ID types.UniqueID
Name string
Topic string
Dimension *int32
Metadata *CollectionMetadata[CollectionMetadataValueType]
GetOrCreate bool
TenantID string
DatabaseName string
Ts types.Timestamp
}
type DeleteCollection struct {
ID types.UniqueID
TenantID string
DatabaseName string
Ts types.Timestamp
}
type UpdateCollection struct {
ID types.UniqueID
Name *string
Topic *string
Dimension *int32
Metadata *CollectionMetadata[CollectionMetadataValueType]
ResetMetadata bool
TenantID string
DatabaseName string
Ts types.Timestamp
}
func FilterCollection(collection *Collection, collectionID types.UniqueID, collectionName *string, collectionTopic *string) bool {
if collectionID != types.NilUniqueID() && collectionID != collection.ID {
return false
}
if collectionName != nil && *collectionName != collection.Name {
return false
}
if collectionTopic != nil && *collectionTopic != collection.Topic {
return false
}
return true
}