All Downloads are FREE. Search and download functionalities are using the official Maven repository.

rapture.common.shared.index.DispatchIndexFunction Maven / Gradle / Ivy

There is a newer version: 3.0.4
Show newest version
/**
 * Copyright (C) 2011-2013 Incapture Technologies LLC
 * 
 * This is an autogenerated license statement. When copyright notices appear below
 * this one that copyright supercedes this statement.
 *
 * Unless required by applicable law or agreed to in writing, software is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied.
 *
 * Unless explicit permission obtained in writing this software cannot be distributed.
 */

/**
 * This file is autogenerated and any changes will be overwritten
 */

package rapture.common.shared.index;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.net.HttpURLConnection;

import rapture.common.exception.RaptureExceptionFactory;
import rapture.server.BaseDispatcher;
import rapture.common.DispatchReturn;
import rapture.common.Messages;

public enum DispatchIndexFunction {
    CREATEINDEX(CreateIndexDispatch.class),
    GETINDEX(GetIndexDispatch.class),
    DELETEINDEX(DeleteIndexDispatch.class),
    CREATETABLE(CreateTableDispatch.class),
    DELETETABLE(DeleteTableDispatch.class),
    GETTABLE(GetTableDispatch.class),
    QUERYTABLE(QueryTableDispatch.class),
    FINDINDEX(FindIndexDispatch.class);

        private BaseDispatcher dispatcher;	
	
     DispatchIndexFunction(Class klass) {
        try {
            this.dispatcher = klass.newInstance();
        } catch (InstantiationException | IllegalAccessException e) {
            throw RaptureExceptionFactory.create(HttpURLConnection.HTTP_INTERNAL_ERROR, Messages.getMessage("Api", "ErrorInitDispatch", null, null),  e);
        }
    }

    public DispatchReturn executeDispatch(String params, HttpServletRequest req, HttpServletResponse resp) {
        return this.dispatcher.dispatch(params, req, resp);
    }	
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy