CollectionConfig

org.llm4s.rag.permissions.CollectionConfig
See theCollectionConfig companion object
final case class CollectionConfig(path: CollectionPath, queryableBy: Set[PrincipalId], isLeaf: Boolean, metadata: Map[String, String])

Configuration for creating a new collection.

Value parameters

isLeaf

True if this is a leaf collection (can contain documents)

metadata

Optional key-value metadata for the collection

path

The collection path to create

queryableBy

Set of principal IDs that can query this collection (empty = public)

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

Mark this collection as a leaf (can contain documents)

Mark this collection as a leaf (can contain documents)

Attributes

Mark this collection as non-leaf (can only contain sub-collections)

Mark this collection as non-leaf (can only contain sub-collections)

Attributes

def isPublic: Boolean

True if this collection is public (queryable by anyone)

True if this collection is public (queryable by anyone)

Attributes

def parentPath: Option[CollectionPath]

The parent path, derived from the collection path

The parent path, derived from the collection path

Attributes

def withMetadata(key: String, value: String): CollectionConfig

Add metadata to this collection

Add metadata to this collection

Attributes

def withMetadata(entries: Map[String, String]): CollectionConfig

Add multiple metadata entries

Add multiple metadata entries

Attributes

Add a principal to the queryableBy set

Add a principal to the queryableBy set

Attributes

def withQueryableBy(principalIds: Set[PrincipalId]): CollectionConfig

Add multiple principals to the queryableBy set

Add multiple principals to the queryableBy set

Attributes

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product