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.
A feature is a collection of project contents or properties which can be transported between different projects. Detailed information can be found in the "CorporateContent" documentation.
Example:
SpecialistsBroker.requireSpecialist(FeatureAgent.TYPE)
- Since:
- 5.0.111
- See Also:
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
A builder for creating a new feature descriptor. -
Field Summary
Modifier 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.void
deleteFeatureFile
(@NotNull FeatureFile featureFile) Deletes the givenFeatureFile
in the current project.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.@NotNull List<FeatureFile>
Returns a list of allfeatureFiles
existing on the server for the current project.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:
-
getFeatureFiles
Returns a list of allfeatureFiles
existing on the server for the current project.- Throws:
ParseException
IOException
- Since:
- 5.2.230703
-
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:
-
deleteFeatureFile
Deletes the givenFeatureFile
in the current project.- Parameters:
featureFile
- theFeatureFile
to delete- Throws:
IOException
- Since:
- 5.2.230703
-
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
-