com.atlassian.jira.entity.property
Class DelegatingEntityWithKeyPropertyService<E extends WithId & WithKey>

java.lang.Object
  extended by com.atlassian.jira.entity.property.DelegatingEntityPropertyService<E>
      extended by com.atlassian.jira.entity.property.DelegatingEntityWithKeyPropertyService<E>
All Implemented Interfaces:
EntityPropertyService<E>, EntityWithKeyPropertyService<E>
Direct Known Subclasses:
DefaultIssueEntityWithKeyPropertyService, DefaultProjectEntityWithKeyPropertyService

public class DelegatingEntityWithKeyPropertyService<E extends WithId & WithKey>
extends DelegatingEntityPropertyService<E>
implements EntityWithKeyPropertyService<E>

Delegates execution of methods from EntityWithKeyPropertyService to an instance of BaseEntityWithKeyPropertyService.

Since:
v6.2

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.atlassian.jira.entity.property.EntityPropertyService
EntityPropertyService.DeletePropertyValidationResult, EntityPropertyService.EntityPropertyInput, EntityPropertyService.PropertyInput, EntityPropertyService.PropertyKeys<E>, EntityPropertyService.PropertyResult, EntityPropertyService.PropertyServiceResult, EntityPropertyService.SetPropertyValidationResult
 
Constructor Summary
DelegatingEntityWithKeyPropertyService(BaseEntityWithKeyPropertyService<E> delegate)
           
 
Method Summary
 EntityPropertyService.PropertyKeys<E> getPropertiesKeys(ApplicationUser user, String entityKey)
          Returns the properties keys associated with the specified entity.
 EntityPropertyService.PropertyKeys<E> getPropertiesKeys(ApplicationUser user, String entityKey, EntityPropertyOptions options)
          Returns the properties keys associated with the specified entity.
 EntityPropertyService.PropertyResult getProperty(ApplicationUser user, String entityKey, String propertyKey)
          Returns the JSON property with the specified key from specified entity.
 EntityPropertyService.PropertyResult getProperty(ApplicationUser user, String entityKey, String propertyKey, EntityPropertyOptions options)
          Returns the JSON property with the specified key from specified entity.
 EntityPropertyService.DeletePropertyValidationResult validateDeleteProperty(ApplicationUser user, String entityKey, String propertyKey)
          Check if it is possible to remove the entity property with specified entity's key and entity's property key.
 EntityPropertyService.DeletePropertyValidationResult validateDeleteProperty(ApplicationUser user, String entityKey, String propertyKey, EntityPropertyOptions options)
          Check if it is possible to remove the entity property with specified entity's key and entity's property key.
 EntityPropertyService.SetPropertyValidationResult validateSetProperty(ApplicationUser user, String entityKey, EntityPropertyService.PropertyInput propertyInput)
          Checks if the provided entity's property is valid.
 EntityPropertyService.SetPropertyValidationResult validateSetProperty(ApplicationUser user, String entityKey, EntityPropertyService.PropertyInput propertyInput, EntityPropertyOptions options)
          Checks if the provided entity's property is valid.
 
Methods inherited from class com.atlassian.jira.entity.property.DelegatingEntityPropertyService
deleteProperty, getPropertiesKeys, getPropertiesKeys, getProperty, getProperty, setProperty, validateDeleteProperty, validateDeleteProperty, validatePropertyInput, validateSetProperty, validateSetProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.entity.property.EntityPropertyService
deleteProperty, getPropertiesKeys, getPropertiesKeys, getProperty, getProperty, setProperty, validateDeleteProperty, validateDeleteProperty, validatePropertyInput, validateSetProperty, validateSetProperty
 

Constructor Detail

DelegatingEntityWithKeyPropertyService

public DelegatingEntityWithKeyPropertyService(BaseEntityWithKeyPropertyService<E> delegate)
Method Detail

validateSetProperty

public EntityPropertyService.SetPropertyValidationResult validateSetProperty(ApplicationUser user,
                                                                             String entityKey,
                                                                             EntityPropertyService.PropertyInput propertyInput)
Description copied from interface: EntityWithKeyPropertyService
Checks if the provided entity's property is valid.

This method checks if the entity with which the property will be associated exists and if the calling user has permissions to edit the entity. It validates if the property's key length is less then 255 characters. It also checks if the length of the property's value is less then 32,768.

Specified by:
validateSetProperty in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property will be associated.
propertyInput - the pair of key and value which will be associated with the entity.
Returns:
either entity ready to be persisted in DB or collection of errors.

validateSetProperty

public EntityPropertyService.SetPropertyValidationResult validateSetProperty(ApplicationUser user,
                                                                             @Nonnull
                                                                             String entityKey,
                                                                             @Nonnull
                                                                             EntityPropertyService.PropertyInput propertyInput,
                                                                             @Nonnull
                                                                             EntityPropertyOptions options)
Description copied from interface: EntityWithKeyPropertyService
Checks if the provided entity's property is valid.

This method checks if the entity with which the property will be associated exists. It validates if the property's key length is less then 255 characters. It also checks if the length of the property's value is less then 32,768.

Specified by:
validateSetProperty in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property will be associated.
propertyInput - the pair of key and value which will be associated with the entity.
options - options to skip permission while performing the validation.
Returns:
either entity ready to be persisted in DB or collection of errors.

validateDeleteProperty

public EntityPropertyService.DeletePropertyValidationResult validateDeleteProperty(ApplicationUser user,
                                                                                   String entityKey,
                                                                                   String propertyKey)
Description copied from interface: EntityWithKeyPropertyService
Check if it is possible to remove the entity property with specified entity's key and entity's property key.

This method checks if the calling user has permissions to edit the selected entity and if the property for given entity key and property key exists.

Specified by:
validateDeleteProperty in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property is associated.
propertyKey - the key of the entity's property.
Returns:
either entity ready to be removed or collection of errors.

validateDeleteProperty

public EntityPropertyService.DeletePropertyValidationResult validateDeleteProperty(ApplicationUser user,
                                                                                   @Nonnull
                                                                                   String entityKey,
                                                                                   @Nonnull
                                                                                   String propertyKey,
                                                                                   @Nonnull
                                                                                   EntityPropertyOptions options)
Description copied from interface: EntityWithKeyPropertyService
Check if it is possible to remove the entity property with specified entity's key and entity's property key.

This method checks if the property for given entity key and property key exists.

Specified by:
validateDeleteProperty in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property is associated.
propertyKey - the key of the entity's property.
options - options to skip permission while performing the validation.
Returns:
either entity ready to be removed or collection of errors.

getProperty

public EntityPropertyService.PropertyResult getProperty(ApplicationUser user,
                                                        String entityKey,
                                                        String propertyKey)
Description copied from interface: EntityWithKeyPropertyService
Returns the JSON property with the specified key from specified entity.

This method checks if the calling user has permissions to browse the entities and if the entity with given key exists.

Specified by:
getProperty in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property is associated.
propertyKey - the key of the entity's property.
Returns:
the chosen property of the entity if found or the error collection.

getProperty

public EntityPropertyService.PropertyResult getProperty(ApplicationUser user,
                                                        @Nonnull
                                                        String entityKey,
                                                        @Nonnull
                                                        String propertyKey,
                                                        @Nonnull
                                                        EntityPropertyOptions options)
Description copied from interface: EntityWithKeyPropertyService
Returns the JSON property with the specified key from specified entity.

This method checks if the entity with given key exists.

Specified by:
getProperty in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property is associated.
propertyKey - the key of the entity's property.
options - options to skip permission while performing the validation.
Returns:
the chosen property of the entity if found or the error collection.

getPropertiesKeys

public EntityPropertyService.PropertyKeys<E> getPropertiesKeys(ApplicationUser user,
                                                               String entityKey)
Description copied from interface: EntityWithKeyPropertyService
Returns the properties keys associated with the specified entity.

This method checks if the calling user has permissions to browse the entitys and if the entity with given id exists.

Specified by:
getPropertiesKeys in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property is associated.
Returns:
the list of properties keys and associated entity or a collection with errors.

getPropertiesKeys

public EntityPropertyService.PropertyKeys<E> getPropertiesKeys(ApplicationUser user,
                                                               @Nonnull
                                                               String entityKey,
                                                               @Nonnull
                                                               EntityPropertyOptions options)
Description copied from interface: EntityWithKeyPropertyService
Returns the properties keys associated with the specified entity.

This method checks if the entity with given id exists.

Specified by:
getPropertiesKeys in interface EntityWithKeyPropertyService<E extends WithId & WithKey>
Parameters:
user - who the permission checks will be run against (can be null, indicating anonymous user).
entityKey - the key of the entity with which the property is associated.
options - options to skip permission while performing the validation.
Returns:
the list of properties keys and associated entity or a collection with errors.


Copyright © 2002-2014 Atlassian. All Rights Reserved.