ApplicationConfig.java [src/java/m/crp] Revision: default  Date:
/*
 * $Id$
 *
 * This file is part of the Cloud Services Integration Platform (CSIP),
 * a Model-as-a-Service framework, API, and application suite.
 *
 * 2012-2019, OMSLab, Colorado State University.
 *
 * OMSLab licenses this file to you under the MIT license.
 * See the LICENSE file in the project root for more information.
 */
package m.crp;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
import csip.Config;
import csip.ContextConfig;
import java.util.HashSet;
import java.util.Set;
import javax.servlet.ServletContext;
import javax.ws.rs.core.Application;
import javax.ws.rs.core.Context;

/**
 *
 * @author User
 */
@javax.ws.rs.ApplicationPath("")
public class ApplicationConfig extends Application {

  @Context
  private ServletContext context;

  @Override
  public Set<Class<?>> getClasses() {
    Set<Class<?>> resources = new HashSet<>();
    addRestResourceClasses(resources);
    ContextConfig.filterServices(context, resources);
    Config.register(resources);
    return resources;
  }

  /**
   * Do not modify addRestResourceClasses() method. It is automatically
   * re-generated by NetBeans REST support to populate given list with all
   * resources defined in the project.
   */
  private void addRestResourceClasses(Set<Class<?>> resources) {
    resources.add(csip.ArchiveService.class);
    resources.add(csip.CatalogService.class);
    resources.add(csip.ControlService.class);
    resources.add(csip.DynamicPyModelDataService.class);
    resources.add(csip.GzipWriterInterceptor.class);
    resources.add(csip.QueryService.class);
    resources.add(csip.QueueingModelDataService.class);
    resources.add(csip.ReportService.class);
    resources.add(csip.UIService.class);
    resources.add(m.crp.assessmenttool.V1_0.class);
    resources.add(m.crp.assessmenttool.V2_0.class);
    resources.add(m.crp.assessmenttool.V2_1.class);
    resources.add(m.crp.climate_wind_soil.V1_0.class);
    resources.add(m.crp.smassessmenttool.V1_0.class);
    resources.add(m.crp.smwepp.V1_0.class);
    resources.add(m.crp.smweps.V1_0.class);
    resources.add(m.crp.topthree.V1_0.class);
    resources.add(m.crp.weppmetadata.V1_0.class);
    resources.add(m.crp.wepsmetadata.V1_0.class);
  }
}