Package de.espirit.firstspirit.feature
Interface FeatureAgent
public interface FeatureAgent
Agent providing means to handle content transport features. This agent is related to the project specified by the
surrounding context.
Example:
SpecialistsBroker.requireSpecialist(FeatureAgent.TYPE)
- Since:
- 5.0.111
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interface
A builder for creating a new feature descriptor. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SpecialistType<FeatureAgent>
The agent's technical type to be used to request the agent from aSpecialistsBroker
. -
Method Summary
Modifier and TypeMethodDescriptioncreateFeature
(String name, Revision revision, boolean release) Create a new feature with the given name.@NotNull FeatureAgent.FeatureBuilder
createFeatureBuilder
(@NotNull FeatureDescriptor descriptor) Returns a builder where you can create a new feature descriptor using the provided instance as blueprint.createFeatureModel
(FeatureDescriptor featureDescriptor) Create a feature model based on the given feature descriptor.ServerActionHandle<? extends FeatureProgress,
Boolean> createFeatureTransportFile
(FeatureDescriptor featureDescriptor) Starts a server side process to create a feature transport file.void
deleteFeature
(FeatureDescriptor featureDescriptor) Deletes the feature specified by the given feature descriptor.downloadFeatureFile
(@NotNull FeatureFile featureFile) Download the feature transport zip file specified by the givenfeatureFile
.Returns a list of all feature descriptors available for the project this agent is related to.void
saveFeature
(FeatureModel model) Saves the given feature model and its related feature descriptor.
-
Field Details
-
TYPE
The agent's technical type to be used to request the agent from aSpecialistsBroker
.- Since:
- 5.0.111
-
-
Method Details
-
getFeatureDescriptors
List<FeatureDescriptor> getFeatureDescriptors()Returns a list of all feature descriptors available for the project this agent is related to.- Since:
- 5.0.111
-
createFeature
Create a new feature with the given name.- Parameters:
name
- the name of the feature to be createdrevision
- the revision theuserservice
of the content objects of the new feature belongs torelease
- indicates whether the content object of this feature belongs to arelease store
or not- Since:
- 5.0.111
-
deleteFeature
Deletes the feature specified by the given feature descriptor.- Since:
- 5.0.413
- See Also:
-
createFeatureModel
Create a feature model based on the given feature descriptor. The descriptor is only used as initial parameter set. Therefor change params before calling this method if you want them to be persisted duringsaving
- Since:
- 5.0.111
- See Also:
-
saveFeature
Saves the given feature model and its related feature descriptor.- Since:
- 5.0.111
- See Also:
-
createFeatureTransportFile
ServerActionHandle<? extends FeatureProgress,Boolean> createFeatureTransportFile(FeatureDescriptor featureDescriptor) Starts a server side process to create a feature transport file.- Returns:
- the
server action handle
providing means to progress and state of the server side process - Since:
- 5.0.111
- See Also:
-
downloadFeatureFile
Download the feature transport zip file specified by the givenfeatureFile
. During a service side transport file creation process, a feature file can be received via the feature progess.- Parameters:
featureFile
- specifying the transport zip file to download- Throws:
IOException
- Since:
- 5.0.111
- See Also:
-
createFeatureBuilder
@NotNull @NotNull FeatureAgent.FeatureBuilder createFeatureBuilder(@NotNull @NotNull FeatureDescriptor descriptor) Returns a builder where you can create a new feature descriptor using the provided instance as blueprint.- Parameters:
descriptor
- Feature descriptor to use as blueprint.- Returns:
- A factory where you can create a new feature descriptor based on the provided instance.
- Since:
- 5.2.1203
-