Package org.dspace.app.rest.projection
Class FullProjection
- java.lang.Object
-
- org.dspace.app.rest.projection.AbstractProjection
-
- org.dspace.app.rest.projection.FullProjection
-
- All Implemented Interfaces:
Projection
@Component public class FullProjection extends AbstractProjection
Catch-all projection that allows embedding of all subresources.
-
-
Field Summary
Fields Modifier and Type Field Description static StringNAME-
Fields inherited from interface org.dspace.app.rest.projection.Projection
DEFAULT
-
-
Constructor Summary
Constructors Constructor Description FullProjection()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanallowEmbedding(HALResource<? extends RestAddressableModel> halResource, LinkRest linkRest, org.springframework.hateoas.Link... oldLinks)Tells whether this projection permits the embedding of a particular embeddable subresource.booleanallowLinking(HALResource halResource, LinkRest linkRest)Tells whether this projection permits the linking of a particular linkable subresource.StringgetName()Gets the projection name.-
Methods inherited from class org.dspace.app.rest.projection.AbstractProjection
getPagingOptions, transformModel, transformResource, transformRest
-
-
-
-
Field Detail
-
NAME
public static final String NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:ProjectionGets the projection name.- Returns:
- the name, which is a unique alphanumeric string.
-
allowEmbedding
public boolean allowEmbedding(HALResource<? extends RestAddressableModel> halResource, LinkRest linkRest, org.springframework.hateoas.Link... oldLinks)
Description copied from interface:ProjectionTells whether this projection permits the embedding of a particular embeddable subresource. This gives the projection an opportunity to opt in to to certain embeds, by returningtrue. Note: If this method returnstruefor a given subresource, it will be automatically linked regardless of whatProjection.allowLinking(HALResource, LinkRest)returns.- Specified by:
allowEmbeddingin interfaceProjection- Overrides:
allowEmbeddingin classAbstractProjection- Parameters:
halResource- the resource from which the embed may or may not be made.linkRest- the LinkRest annotation through which the related resource was discovered on the rest object.oldLinks- The previously traversed links- Returns:
- true if allowed, false otherwise.
-
allowLinking
public boolean allowLinking(HALResource halResource, LinkRest linkRest)
Description copied from interface:ProjectionTells whether this projection permits the linking of a particular linkable subresource. This gives the projection an opportunity to opt in to to certain links, by returningtrue. Note: IfProjection.allowEmbedding(HALResource, LinkRest, Link...)returnstruefor a given subresource, it will be automatically linked regardless of what this method returns.- Specified by:
allowLinkingin interfaceProjection- Overrides:
allowLinkingin classAbstractProjection- Parameters:
halResource- the resource from which the link may or may not be made.linkRest- the LinkRest annotation through which the related resource was discovered on the rest object.- Returns:
- true if allowed, false otherwise.
-
-