Class AbstractActionResource
java.lang.Object
ch.tocco.nice2.rest.core.spi.AbstractRestResource
ch.tocco.nice2.rest.action.spi.AbstractPreActionResource
ch.tocco.nice2.rest.action.spi.AbstractActionResource
- All Implemented Interfaces:
RestResource
- Direct Known Subclasses:
AbacusExportActionResource, AbstractAccessReporterResource, AbstractCreateVoucherActionResource, AbstractDmsActionResource, AbstractInvoiceActionResource, AbstractMarkingActionResource, AbstractMassWageResource, AbstractOrderMailActionResource, AbstractSetLookupEntityActionResource, AccomplishmentDeletionResource, AccomplishmentUpdateResource, AccrualPostingResource, ActivateDuplicateConfigActionResource, AddCandidateNumbersActionResource, AdjustArchiveTypeAction, AdminUserReportResource, AnonymizeActionResource, AssignEventQuestionActionResource, AutomaticCandidateNumbersActionResource, AvailabilityCreateCalendarSeriesActionResource, AvailabilityDeleteCalendarSeriesActionResource, BookIncomingPaymentActionResource, BookOrderActionResource, BookRegistrationActionResource, BrevoAccountCredentialsAction, CallEntityListenerResource, CancelMembershipActionResource, CancelOrderActionResource, CancelTaskActionResource, ChangeBatchJobOwnerResource, ChangeMembershipTypeActionResource, CompetenceCreateActionResource, ConnectInputNodeActionResource, CostDelimitationActionResource, CreateCalendarExportActionResource, CreateClassroomActionResource, CreateDebitorExportResource, CreateDonationResource, CreateFinancialYearResource, CreatePrepaymentVoucherActionResource, CreateScheduleActionResource, DeactivateDuplicateConfigActionResource, DebitorIncomingPaymentActionResource, DeleteAutomaticCandidateNumbersActionResource, DeleteCandidateNumberActionResource, DeleteClassroomActionResource, DeleteTaskActionResource, DisconnectPrincipalResource, DonationIncomingPaymentActionResource, DuplicateConfigLogicCopyActionResource, EbillRecipientValidation, EditUrlActionResource, EducationScheduleLogicCopyActionResource, EmploymentActionServiceResource, EntityCascadingDeleteActionResource, EntityModelExportActionResource, EsrImportActionResource, EvaluationActionResource, EvaluationQuestionLogicCopyActionResource, EventTreeExportActionResource, EventTreeImportActionResource, ExcelExportActionResource, ExportActionResource, FileUploadActionResource, FindMissingTranslationsResource, FormModelExportActionResource, FulltextIndexBuildResource, FulltextIndexCheckActionResource, FulltextIndexClearResource, FulltextIndexEntityBuildResource, FulltextIndexEntityCheckActionResource, FulltextIndexFixResource, FulltextIndexSetupResource, GenerateEbillAction, GenerateEvaluationExecutionActionResource, InfoboxConfigurationActionResource, InfoboxLogicCopyResource, InputEditFinishResource, InstanceDeleteActionResource, LogicCopySurveyQuestionActionResource, LowerDunningLevelResource, MassContactActionResource, MassLecturerBookingActionResource, MassMembershipActionResource, MassRegistrationActionResource, MembershipQuestionResource, OrderLogicCopyActionResource, OutputJobArchiveStatusActionResource, PayrexxAccountCredentialsAction, PayrexxPaymentMethodsAction, PlanningOverviewResource, PostfinanceRecipientLookupAction, PostfinanceWebserviceCredentialsAction, PrincipalLogicCopyActionResource, QuestionnaireLogicCopyActionResource, RegistrationAccomplishmentStatusResource, RegistrationCancellationResource, RemoveDebitorExportActionResource, RemoveParallelEventActionResource, RemovePostfinanceWebserviceCredentialsAction, RemoveQuestionnaireLockActionResource, RemoveWagesFromExportResource, RepeatAndUpdateLastDunningActionResource, RepeatDonationActionResource, ReportGenerationResource, ReportingLogicCopyActionResource, RequirementCheckActionResource, RequirementRuleCompileActionResource, ReservationExportActionResource, ReservationLecturerBookingAccomplishmentStatusResource, ReservationLecturerBookingPlanningStatusResource, ReservationRegistrationPresenceRateResource, ResetInitialvaluesActionResource, ResetUrlActionResource, SalaryExportResource, SchoolingCreateActionResource, SeminarLowerActionResource, SeminarRaisingActionResource, SetDonationActionService, SetGenericTextResource, SetParentActionResource, SetSmsPasswordResource, SetWidgetDomainSecretActionResource, StintAuctionRegisterLecturerResource, StockMovementInwardActionResource, StockMovementOutwardActionResource, SurveyExportActionResource, TakeRegistrationActionResource, TodoActionResource, TransferAvailabilityActionResource, TransferEducationalObjectiveActionResource, TriggerAutomationBatchJobActionResource, TriggerBatchJobActionResource, UidsearchAction, UpdateClientSecretActionResource, UpdateDueTimeActionResource, UpdateInputDataActionResource, VCardExportActionResource, VCardImportActionResource, WageSimulationActionResource, WidgetConfigLogicCopyResource
Abstract base class for action resources.
This class provides data binding functionality and can wrap the actual action
in a task job so that it can be executed asynchronously.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classprotected classstatic classclassstatic final recordprotected static classNested classes/interfaces inherited from class AbstractPreActionResource
AbstractPreActionResource.SelectionType -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected CommandExecutorprotected EntityBeanRebinderprotected NotificationServiceprotected TaskSchedulingServiceFields inherited from class AbstractPreActionResource
businessUnitManager, context, defaultDisplayService, defaultValueService, formBeanService, initialFormEntityName, initialFormName, l10n, log, requiresFormEntity, securityManager, textResourcesFields inherited from class AbstractRestResource
uriInfo -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractActionResource(AbstractPreActionResource.SelectionType selectionType) protectedAbstractActionResource(AbstractPreActionResource.SelectionType selectionType, @Nullable String initialFormEntityName) protectedAbstractActionResource(AbstractPreActionResource.SelectionType selectionType, @Nullable String initialFormEntityName, @Nullable String initialFormName) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract TextMessagename of the action displayed in the notification center if no specific text is setprotected abstract AbstractActionResource.ActionResultBeandoPerformAction(ActionDataBean actionDataBean, ActionResourceBean actionResourceBean, TaskContext taskContext) protected PreActionResponseBeandoValidate(ActionResourceBean actionResourceBean, ActionDataBean actionDataBean) protected CallableTypeper default the callable type (persisted as Task_execution) is DATA_PROCESSING.protected StringgetFormEntity(ActionResourceBean actionResourceBean, String entityModel) For session only entitiesactionDataBean.getFormEntity()should be used for getting the form entity.protected abstract Class<? extends AbstractJob> each action resource needs an empty job class as inner class which either implements AbstractActionJob or AbstractInterruptableActionJob.protected @Nullable EntitygetParentEntity(@Nullable ActionParentEntityBean parent) protected JobDataMapBuildergetTaskData(String taskId, ActionResourceBean actionResourceBean) performAction(ActionResourceBean actionResourceBean) protected booleanOverride to disable recovery for a particular action resource.voidsetCommandExecutor(CommandExecutor commandExecutor) voidsetEntityBeanRebinder(EntityBeanRebinder entityBeanRebinder) voidsetNotificationService(NotificationService notificationService) voidsetTaskContextBuilder(Supplier<TaskContext> taskContextBuilder) voidsetTaskSchedulingService(TaskSchedulingService taskSchedulingService) protected TextMessageprotected TextMessageprotected @Nullable TextMessageprotected TextMessageprotected TextMessageprotected TextMessagefinal PreActionResponseBeanvalidate(ActionResourceBean actionResourceBean) If a form is shown in the pre-action, an (optional) validation can be implemented indoValidate(ActionResourceBean, ActionDataBean).protected booleanverifyFormEntityBean(EntityBean formEntityBean) Methods inherited from class AbstractPreActionResource
getInitialFormValueResponseBean, getSelectedEntities, getSelectedEntity, loadInitialForm, preAction, setBusinessUnitManager, setContext, setDefaultDisplayService, setDefaultValueService, setFormBeanService, setL10n, setLog, setSecurityManager, setSelectionService, setTextResourcesMethods inherited from class AbstractRestResource
getPathParameter, setUriInfo, tryGetInt
-
Field Details
-
entityBeanRebinder
-
commandExecutor
-
taskSchedulingService
-
notificationService
-
-
Constructor Details
-
AbstractActionResource
-
AbstractActionResource
protected AbstractActionResource(AbstractPreActionResource.SelectionType selectionType, @Nullable @Nullable String initialFormEntityName) -
AbstractActionResource
protected AbstractActionResource(AbstractPreActionResource.SelectionType selectionType, @Nullable @Nullable String initialFormEntityName, @Nullable @Nullable String initialFormName)
-
-
Method Details
-
doPerformAction
protected abstract AbstractActionResource.ActionResultBean doPerformAction(ActionDataBean actionDataBean, ActionResourceBean actionResourceBean, TaskContext taskContext) -
validate
@POST @Path("/validate") @Consumes("application/json") @Produces("application/json") public final PreActionResponseBean validate(ActionResourceBean actionResourceBean) If a form is shown in the pre-action, an (optional) validation can be implemented indoValidate(ActionResourceBean, ActionDataBean). -
doValidate
protected PreActionResponseBean doValidate(ActionResourceBean actionResourceBean, ActionDataBean actionDataBean) -
performAction
@POST @Consumes("application/json") @Produces("application/json") public ActionResponseBean performAction(ActionResourceBean actionResourceBean) -
getCallableType
per default the callable type (persisted as Task_execution) is DATA_PROCESSING. however for some action a more specific type can be set -
actionName
name of the action displayed in the notification center if no specific text is set -
taskSchedulingMessage
-
taskStartedMessage
-
taskFinishedMessage
-
taskFailedTitle
-
taskFailedMessage
-
taskCancelledMessage
-
getTaskData
-
getCurrentUsername
-
getFormEntity
For session only entitiesactionDataBean.getFormEntity()should be used for getting the form entity. If an actual entity is used in the preAction this method should be called that the entity is rebinded and returned. -
verifyFormEntityBean
-
getParentEntity
@Nullable protected @Nullable Entity getParentEntity(@Nullable @Nullable ActionParentEntityBean parent) -
getJobClass
each action resource needs an empty job class as inner class which either implements AbstractActionJob or AbstractInterruptableActionJob. the class is needed to run the job in the task scheduler. if AbstractInterruptableActionJob is used the doPerformAction must implement a cancellation handling -
recoveryEnabled
protected boolean recoveryEnabled()Override to disable recovery for a particular action resource.- Returns:
- true if the job should be recovered after Nice restart, else false (default: true)
-
setEntityBeanRebinder
-
setCommandExecutor
-
setTaskSchedulingService
-
setNotificationService
-
setTaskContextBuilder
-