Package com.atlassian.confluence.core
Interface ApiRestEntityFactory
- All Known Implementing Classes:
DefaultApiRestEntityFactory
public interface ApiRestEntityFactory
Factory for producing REST entities for serialization to Json, and entity property enrichment.
The produced REST entities should be serialized using an ObjectMapper produced by com.atlassian.confluence.rest.serialization.CustomSerializerModuleFactory
- Since:
- 6.12.0
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionbuildRestEntityFrom
(ContentEntityObject entity, Expansions expansions) Build a REST API entity from a ContentEntityObject.buildRestEntityFrom
(Space space, Expansions expansions) Build a REST API entity from a hibernate Space object.buildRestEntityFromContent
(Iterable<? extends ContentEntityObject> entities, Expansions expansions) Build a list of REST API entity objects from ContentEntityObject objects.buildRestEntityFromSpaces
(Iterable<Space> spaces, Expansions expansions) Build a list of REST API entity objects from hibernate Space objects.convertAndEnrich
(Object entity, ApiRestEntityFactory.SchemaType schemaType) Converts the given entity into a RestEntity if the entity has the RestEnrichable annotation or is a PageResponse that contains RestEnrichable entities.getEnrichedPropertyTypes
(Type type, boolean root) Get the types of the properties that may possibly be provided by the enrichers.boolean
isEnrichableEntity
(Class entityType) Get whether an object type can be enriched using a RestEntity.boolean
isEnrichableList
(Class listType) Get whether an object type can be enriched using a RestList.
-
Method Details
-
buildRestEntityFrom
Build a REST API entity from a ContentEntityObject.- Parameters:
entity
- The entity objectexpansions
- The expansions to apply to the returned data- Returns:
- The REST API entity
-
buildRestEntityFrom
Build a REST API entity from a hibernate Space object.- Parameters:
entity
- The entity objectexpansions
- The expansions to apply to the returned data- Returns:
- The REST API entity
-
buildRestEntityFromContent
Iterable<RestEntity> buildRestEntityFromContent(Iterable<? extends ContentEntityObject> entities, Expansions expansions) Build a list of REST API entity objects from ContentEntityObject objects.- Parameters:
entity
- The entity objectsexpansions
- The expansions to apply to the returned data- Returns:
- The REST API entity list
-
buildRestEntityFromSpaces
Build a list of REST API entity objects from hibernate Space objects.- Parameters:
entity
- The entity objectsexpansions
- The expansions to apply to the returned data- Returns:
- The REST API entity list
-
isEnrichableList
Get whether an object type can be enriched using a RestList. -
isEnrichableEntity
Get whether an object type can be enriched using a RestEntity. -
getEnrichedPropertyTypes
Get the types of the properties that may possibly be provided by the enrichers. This is used to populate the graph-ql schema.- Parameters:
type
- The type of the object being enriched- Returns:
- A map of property names to property types
-
convertAndEnrich
Converts the given entity into a RestEntity if the entity has the RestEnrichable annotation or is a PageResponse that contains RestEnrichable entities.- Parameters:
entity
- the entity to enrichschemaType
- rest or graphql- Returns:
- a converted rest entity or the entity that was given
-