sealed case class Fields[T](defaultFields: Set[String], fieldsPermissionsFunction: FieldsFunction, relations: Map[String, ResourceName], graphQLRelations: Map[String, GraphQLRelation])(implicit format: OFormat[T]) extends Product with Serializable
Contains all the required information related to a resource's fields.
- T
The type of the resource in the collection.
- defaultFields
The default fields that should be included in a response.
- fieldsPermissionsFunction
A function that, given a request header, determines if particular fields are to be included in the response. This function can be used to hide particular fields depending on arbitrary information about the request. (e.g. Sensitive fields can be made unavailable in certain contexts. (e.g. CORS, 3rd party requests to APIs, JSONP, etc.) IMPORTANT NOTE: this functionality is not fully implemented yet! WORK IN PROGRESS. DO NOT USE YET!
- relations
A map of field name to related resource's name and version pair. This configuration is used to automatically join related resources as requested. For example, if we have an "author" id field that references the "userBasicProfile" v1 resource, and a "post" id field that references a "discoursePost" v1 the map would look like:
Map("author" -> ("userBasicProfile", 1), "post" -> ("discoursePost", 1)).- format
The JSON serialization formatter for the resource.
- Annotations
- @implicitNotFound( ... )
- Alphabetic
- By Inheritance
- Fields
- Serializable
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
Fields(defaultFields: Set[String], fieldsPermissionsFunction: FieldsFunction, relations: Map[String, ResourceName], graphQLRelations: Map[String, GraphQLRelation])(implicit format: OFormat[T])
- defaultFields
The default fields that should be included in a response.
- fieldsPermissionsFunction
A function that, given a request header, determines if particular fields are to be included in the response. This function can be used to hide particular fields depending on arbitrary information about the request. (e.g. Sensitive fields can be made unavailable in certain contexts. (e.g. CORS, 3rd party requests to APIs, JSONP, etc.) IMPORTANT NOTE: this functionality is not fully implemented yet! WORK IN PROGRESS. DO NOT USE YET!
- relations
A map of field name to related resource's name and version pair. This configuration is used to automatically join related resources as requested. For example, if we have an "author" id field that references the "userBasicProfile" v1 resource, and a "post" id field that references a "discoursePost" v1 the map would look like:
Map("author" -> ("userBasicProfile", 1), "post" -> ("discoursePost", 1)).- format
The JSON serialization formatter for the resource.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- val defaultFields: Set[String]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val fieldsPermissionsFunction: FieldsFunction
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val graphQLRelations: Map[String, GraphQLRelation]
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val relations: Map[String, ResourceName]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- def withDefaultFields(fieldNames: Iterable[String]): Fields[T]
- def withDefaultFields(fieldNames: String*): Fields[T]
- def withGraphQLRelations(newRelations: (String, GraphQLRelation)*): Fields[T]
- def withGraphQLRelations(newRelations: Map[String, GraphQLRelation]): Fields[T]
- def withRelated(newRelations: (String, ResourceName)*): Fields[T]
- def withRelated(newRelations: Map[String, ResourceName]): Fields[T]