// Copyright 2006 Google Inc. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package com.google.enterprise.connector.servlet; import com.google.enterprise.connector.instantiator.InstantiatorException; import com.google.enterprise.connector.manager.Manager; import com.google.enterprise.connector.persist.ConnectorNotFoundException; import com.google.enterprise.connector.spi.ConfigureResponse; import java.io.PrintWriter; import java.util.logging.Level; import java.util.logging.Logger; /** * Admin servlet to get the config form to edit with pre-filled data * for a given existing connector name and language. * */ public class GetConnectorConfigToEdit extends ConnectorManagerGetServlet { private static final Logger LOGGER = Logger.getLogger( GetConnectorConfigToEdit.class.getName()); @Override protected void processDoGet(String connectorName, String lang, Manager manager, PrintWriter out) { handleDoGet(connectorName, lang, manager, out); } /** * Handler for doGet in order to do unit tests. * Returns the connector config form with pre-filled data. * */ public static void handleDoGet(String connectorName, String language, Manager manager, PrintWriter out) { ConnectorMessageCode status = new ConnectorMessageCode(); ConfigureResponse configResponse = null; try { configResponse = manager.getConfigFormForConnector(connectorName, language); } catch (ConnectorNotFoundException e) { status = new ConnectorMessageCode( ConnectorMessageCode.EXCEPTION_CONNECTOR_NOT_FOUND, connectorName); LOGGER.log( Level.WARNING, ServletUtil.LOG_EXCEPTION_CONNECTOR_NOT_FOUND, e); } catch (InstantiatorException e) { status.setMessageId(ConnectorMessageCode.EXCEPTION_INSTANTIATOR); LOGGER.log(Level.WARNING, ServletUtil.LOG_EXCEPTION_INSTANTIATOR, e); } writeConfigureResponse(out, status, configResponse); } }