com.fluidbpm.program.api.IActionBase Maven / Gradle / Ivy
Show all versions of fluid-api Show documentation
/*
* Koekiebox CONFIDENTIAL
*
* [2012] - [2017] Koekiebox (Pty) Ltd
* All Rights Reserved.
*
* NOTICE: All information contained herein is, and remains the property
* of Koekiebox and its suppliers, if any. The intellectual and
* technical concepts contained herein are proprietary to Koekiebox
* and its suppliers and may be covered by South African and Foreign Patents,
* patents in process, and are protected by trade secret or copyright law.
* Dissemination of this information or reproduction of this material is strictly
* forbidden unless prior written permission is obtained from Koekiebox.
*/
package com.fluidbpm.program.api;
import java.io.Serializable;
import java.util.List;
import java.util.Properties;
import javax.sql.DataSource;
/**
* The base interface
for all Fluid Java Custom Programs.
*
* @author jasonbruwer
* @since v1.0
*
* @see ICustomProgram
* @see ICustomScheduledAction
* @see ICustomWebAction
*/
public interface IActionBase extends Serializable {
/**
* Execute Order (1)
*
*
* Acts as a constructor that provides a list of configured {@code dataSourcesParam}
* in Fluid. Including the {@code Datasource} to the Fluid Core
{@code DataSource}.
*
* This method will always be executed
first when the Fluid Third Party Library
* executes any of the sub Custom Programs.
*
* @see javax.sql.DataSource
*
* @param propertiesParam Properties applicable to each custom program.
* @param dataSourcesParam A list of created JDBC Data Sources in the system.
*
* @throws Exception If a problem occurs.
*
*/
public abstract void init(
Properties propertiesParam,
List dataSourcesParam)
throws Exception;
/**
* Execute Order (LAST)
*
*
* Any cleanup code may be placed in the destroy
method.
* This is the last method executed before the Fluid framework takes over.
*
* @throws Exception If a problem occurs.
*
*/
public abstract void destroy() throws Exception;
}