// Path: src/main/java/org/expedientframework/workflowlite/core/AbstractAction.java
// public abstract class AbstractAction<TContext extends ExecutionContext, TResult> implements Action<TContext, TResult>
// {
//   @Override
//   public String getName()
//   {
//     return this.getClass().getSimpleName();
//   }
// }
// 
// Path: src/main/java/org/expedientframework/workflowlite/core/ExecutionContext.java
// public interface ExecutionContext
// {
//   public String getWorkflowId();
//   public String getSourcePropertyName();
//   public <T> T getValue(final String property);
//   public <T> void setValue(final String property, final T value);
// }


import org.expedientframework.workflowlite.core.AbstractAction;
import org.expedientframework.workflowlite.core.ExecutionContext;
/********************************************************************
 * File Name:    AddBonusMarksAction.java
 *
 * Date Created: Sep 17, 2017
 *
 * ------------------------------------------------------------------
 * 
 * Copyright @ 2017 ajeydudhe@gmail.com
 *
 *******************************************************************/

package org.expedientframework.workflowlite.core.samples;

  
public class AddBonusMarksAction extends AbstractAction<ExecutionContext, Integer>
{
  public AddBonusMarksAction(final int totalMarks)
  {
    this.totalMarks = totalMarks;
  }
  
  @Override
  public Integer execute(final ExecutionContext context)
  {
// Path: src/main/java/org/expedientframework/workflowlite/core/AbstractAction.java
// public abstract class AbstractAction<TContext extends ExecutionContext, TResult> implements Action<TContext, TResult>
// {
//   @Override
//   public String getName()
//   {
//     return this.getClass().getSimpleName();
//   }
// }
// 
// Path: src/main/java/org/expedientframework/workflowlite/core/ExecutionContext.java
// public interface ExecutionContext
// {
//   public String getWorkflowId();
//   public String getSourcePropertyName();
//   public <T> T getValue(final String property);
//   public <T> void setValue(final String property, final T value);
// }


// Path: src/test/java/org/expedientframework/workflowlite/core/samples/AddBonusMarksAction.java
import org.expedientframework.workflowlite.core.AbstractAction;
import org.expedientframework.workflowlite.core.ExecutionContext;

/********************************************************************
 * File Name:    AddBonusMarksAction.java
 *
 * Date Created: Sep 17, 2017
 *
 * ------------------------------------------------------------------
 * 
 * Copyright @ 2017 ajeydudhe@gmail.com
 *
 *******************************************************************/

package org.expedientframework.workflowlite.core.samples;

  
public class AddBonusMarksAction extends AbstractAction<ExecutionContext, Integer>
{
  public AddBonusMarksAction(final int totalMarks)
  {
    this.totalMarks = totalMarks;
  }
  
  @Override
  public Integer execute(final ExecutionContext context)
  {
    return totalMarks + 10;