/*
 * Licensed Materials - Property of Perforce Software, Inc. 
 * © Copyright Perforce Software, Inc. 2014, 2021 
 * © Copyright IBM Corp. 2009, 2014
 * © Copyright ILOG 1996, 2009
 * All Rights Reserved.
 *
 * Note to U.S. Government Users Restricted Rights:
 * The Software and Documentation were developed at private expense and
 * are "Commercial Items" as that term is defined at 48 CFR 2.101,
 * consisting of "Commercial Computer Software" and
 * "Commercial Computer Software Documentation", as such terms are
 * used in 48 CFR 12.212 or 48 CFR 227.7202-1 through 227.7202-4,
 * as applicable.
 */
package shared.data;

import ilog.views.gantt.IlvHierarchyChart;
import ilog.views.gantt.IlvResource;
import ilog.views.gantt.model.general.IlvGeneralResource;


/**
 * <code>GeneralResourceFactory</code> is a factory that will create new
 * instances of <code>IlvGeneralResource</code> that are numbered sequentially.
 */
public class GeneralResourceFactory extends SimpleResourceFactory
{
  /**
   * Creates a new <code>GeneralResourceFactory</code> for the specified chart.
   */
  public GeneralResourceFactory(IlvHierarchyChart chart) {
    super(chart);
  }

  /**
   * Creates a new <code>IlvGeneralResource</code> from the given parameters.
   * Subclasses should override this method to create a different type of
   * resource, not <code>createResource</code>.
   * @param resourceNum The resource number.
   */
  Override
  protected IlvResource createResourceImpl(int resourceNum) {
    IlvResource newRes = new IlvGeneralResource("Res. #" + resourceNum,
                                                "New Resource #" + resourceNum);
    return newRes;
  }

}