[ 
https://issues.apache.org/jira/browse/GRIFFIN-200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nikolay Sokolov updated GRIFFIN-200:
------------------------------------
    Description: 
In some environments, users might want to perform certain actions before/after 
job is created, before/after job is activated, before/after job is deleted, and 
so on.

To fullfill that need, some hook plugin mechanism can be provided, similar to 
what Hive is doing. User would place respective jar files into Service module 
classpath at deployment time, and would specify class names using some 
annotation or using property listing class names (particular mechanism is yet 
to be determined).

Proposed signature:
{code:none}
public interface JobLifecycleHook {
    void beforeAddJob(AbstractJob js) throws Exception;
    void afterAddJob(AbstractJob js) throws Exception;

    void beforeOnAction(AbstractJob job, String action) throws Exception;
    void afterOnAction(AbstractJob job, String action) throws Exception;

    void beforeDeleteJob(AbstractJob job) throws SchedulerException;
    void afterDeleteJob(AbstractJob job) throws SchedulerException;
}
{code}

  was:
In some environments, users might want to perform certain actions before/after 
job is created, before/after job is activated, before/after job is deleted, and 
so on.

To fullfill that need, some hook plugin mechanism can be provided, similar to 
what Hive is doing. User would place respective jar files into Service module 
classpath at deployment time, and would specify class names using some 
annotation or using property name (particular mechanism is yet to be 
determined).

Proposed signature:
{code:none}
public interface JobLifecycleHook {
    void beforeAddJob(AbstractJob js) throws Exception;
    void afterAddJob(AbstractJob js) throws Exception;

    void beforeOnAction(AbstractJob job, String action) throws Exception;
    void afterOnAction(AbstractJob job, String action) throws Exception;

    void beforeDeleteJob(AbstractJob job) throws SchedulerException;
    void afterDeleteJob(AbstractJob job) throws SchedulerException;
}
{code}


> Lifecycle hooks support
> -----------------------
>
>                 Key: GRIFFIN-200
>                 URL: https://issues.apache.org/jira/browse/GRIFFIN-200
>             Project: Griffin (Incubating)
>          Issue Type: New Feature
>            Reporter: Nikolay Sokolov
>            Priority: Minor
>
> In some environments, users might want to perform certain actions 
> before/after job is created, before/after job is activated, before/after job 
> is deleted, and so on.
> To fullfill that need, some hook plugin mechanism can be provided, similar to 
> what Hive is doing. User would place respective jar files into Service module 
> classpath at deployment time, and would specify class names using some 
> annotation or using property listing class names (particular mechanism is yet 
> to be determined).
> Proposed signature:
> {code:none}
> public interface JobLifecycleHook {
>     void beforeAddJob(AbstractJob js) throws Exception;
>     void afterAddJob(AbstractJob js) throws Exception;
>     void beforeOnAction(AbstractJob job, String action) throws Exception;
>     void afterOnAction(AbstractJob job, String action) throws Exception;
>     void beforeDeleteJob(AbstractJob job) throws SchedulerException;
>     void afterDeleteJob(AbstractJob job) throws SchedulerException;
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to