ApplicationConfig.java [src/java/d] Revision: 57250261f8dd22e26a3b05bbd9b109c64c04d323  Date: Fri Dec 06 13:37:31 MST 2019
/*
 * $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 d;

/*
 * 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.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.climate_wind_soil.V1_0.class);
        resources.add(m.crp.wepsmetadata.V1_0.class);
    }
}