Package com.google.enterprise.connector.spi

Examples of com.google.enterprise.connector.spi.ConfigureResponse


    ConfigureResponse validateConfig(ConnectorFactory factory) {

      Collection<String> errorKeys = assureAllMandatoryFieldsPresent();
      if (errorKeys.size() != 0) {
        return new ConfigureResponse(bundle.getString(FileSystemConnectorErrorMessages.MISSING_FIELDS.name()),
            getFormRows(errorKeys));
      }

      String errorMessageHtml = assureNoUncPathStrings();
      if (errorMessageHtml.length() != 0) {
        errorKeys = Collections.singletonList(startField.getName());
        ConfigureResponse response
            = new ConfigureResponse(errorMessageHtml, getFormRows(errorKeys));
        return response;
      }

      errorMessageHtml = assureStartPathsReadable();
      if (errorMessageHtml.length() != 0) {
        errorKeys = Collections.singletonList(startField.getName());
        return new ConfigureResponse(errorMessageHtml, getFormRows(errorKeys));
      }

      errorMessageHtml = assureStartPathsNotExcluded();
      if (errorMessageHtml.length() != 0) {
        errorKeys = new ArrayList<String>();
        errorKeys.add(includeField.getName());
        errorKeys.add(excludeField.getName());
        return new ConfigureResponse(errorMessageHtml, getFormRows(errorKeys));
      }

      errorMessageHtml = assureFullTraversalInteger();
      if (errorMessageHtml != null) {
        errorKeys = Collections.singletonList(fullTraversalField.getName());
        return new ConfigureResponse(errorMessageHtml, getFormRows(errorKeys));
      }

      // If we have been given a factory, try to instantiate a connector.
      try {
        if (factory != null) {
          factory.makeConnector(config);
        }
        return null;
      } catch (RepositoryException e) {
        // We should perform sufficient validation so instantiation succeeds.
        LOG.severe("failed to instantiate File Connector " + e.getMessage());
        return new ConfigureResponse(bundle.getString(FileSystemConnectorErrorMessages.CONNECTOR_INSTANTIATION_FAILED
            .name()), getFormRows(null));
      }
    }
View Full Code Here


    final String path2 = "/foo/bar/baz&<<>";
    config.put("start_2", path2);
    final String path3 = "/foo/baxxxx&&&!/baz&<<>";
    config.put("start_3", path3);

    ConfigureResponse response = type.validateConfig(config, Locale.getDefault(),
        new MockFileConnectorFactory());
    assertNotNull(response);
    assertTrue(response.getMessage().contains(XML.escape(path2)));
    assertTrue(response.getMessage().contains(XML.escape(path3)));
    String snippet = response.getFormSnippet();
    assertTrue(snippet.contains(RED_ON));
    assertTrue(snippet.contains(RED_OFF));
  }
View Full Code Here

    assertTrue(snippet.contains(RED_OFF));
  }

  public void testStartPathEliminatedByPatterns() {
    config.put("exclude_3", config.get("start_1"));
    ConfigureResponse response = type.validateConfig(config,
        Locale.getDefault(), new MockFileConnectorFactory());
    assertNotNull(response);
    String errorMessage = US_BUNDLE.getString(
        FileSystemConnectorErrorMessages.PATTERNS_ELIMINATED_START_PATH.name())
        .replace("%1$s", config.get("start_1"));
    assertTrue(response.getMessage(),
        response.getMessage().contains(errorMessage));
    String snippet = response.getFormSnippet();
    assertTrue(snippet.contains(RED_ON));
    assertTrue(snippet.contains(RED_OFF));
  }
View Full Code Here

  }

  public void testUncDetectedAndSuggestionProvided() {
    String uncPath = "\\\\UNC\\AM\\I\\";
    config.put("start_3", uncPath);
    ConfigureResponse response = type.validateConfig(config,
        Locale.getDefault(), new MockFileConnectorFactory());
    String suggestedPath = "smb://UNC/AM/I/";
    String errorMessage = "Convert UNC style path " + uncPath
        + " to SMB URL: " + suggestedPath + ", please.";
    String snippet = response.getFormSnippet();
    assertTrue(response.getMessage().contains(errorMessage));
    assertTrue(snippet.contains(RED_ON));
    assertTrue(snippet.contains(RED_OFF));
  }
View Full Code Here

    assertTrue(snippet.contains(RED_OFF));
  }

  public void testXmlEscapingSingleLineField() {
    config.put("domain", "&<>.");
    ConfigureResponse response = type.getPopulatedConfigForm(config,
        Locale.getDefault());
    assertEquals("", response.getMessage());
    assertBalancedTags(response.getFormSnippet());
    assertTrue("Unexpected form snippet " + response.getFormSnippet(),
        response.getFormSnippet().contains(
        "<input name=\"domain\" id=\"domain\" "
            + "type=\"text\" value=\"&amp;&lt;>"));
   }
View Full Code Here

            + "type=\"text\" value=\"&amp;&lt;>"));
   }

  public void testXmlEscapingMultiLineField() {
    config.put("exclude_3", "&<>.");
    ConfigureResponse response = type.getPopulatedConfigForm(config,
        Locale.getDefault());
    assertEquals("", response.getMessage());
    assertBalancedTags(response.getFormSnippet());
    assertTrue("Unexpected form snippet " + response.getFormSnippet(),
        response.getFormSnippet().contains(
        "<input name=\"exclude_3\" id=\"exclude_3\" "
            + "size=\"80\" value=\"&amp;&lt;>.\">"));
    }
View Full Code Here

        new FileSystemTypeRegistry(ImmutableList.of(mockFileType));
    PathParser pathParser = new PathParser(fileSystemTypeRegistry);

    type = new FileConnectorType(pathParser);

    ConfigureResponse response = type.getPopulatedConfigForm(config,
        Locale.getDefault());
    assertEquals("", response.getMessage());
    assertBalancedTags(response.getFormSnippet());

    response = type.validateConfig(config, Locale.getDefault(),
                                   new MockFileConnectorFactory());

    assertTrue(response.getMessage().contains("missing fields"));
    verify(mockFileType);
  }
View Full Code Here

    Map<String, String> newConfigMap = Maps.newHashMap(this.configMap);
    // Remove the required fields.
    for (String field : DBConnectorType.ALWAYS_REQUIRED_FIELDS) {
      newConfigMap.put(field, "");
    }
    ConfigureResponse configRes = this.connectorType.validateConfig(
        newConfigMap, Locale.ENGLISH, mdbConnectorFactory);
    assertNotNull(configRes);
    String message = configRes.getMessage();
    assertTrue(message, message.contains(BUNDLE.getString("REQ_FIELDS")));
    for (String field : DBConnectorType.ALWAYS_REQUIRED_FIELDS) {
      String label = BUNDLE.getString(field);
      int index = message.indexOf(label);
      assertFalse(message + " does not contain " + label, index == -1);
View Full Code Here

    newConfigMap.put(EXT_METADATA_TYPE, NO_EXT_METADATA);
    // Remove the sometimes disabled fields.
    for (String field : DBConnectorType.SOMETIMES_DISABLED_FIELDS) {
      newConfigMap.remove(field);
    }
    ConfigureResponse configRes = connectorType.validateConfig(
        newConfigMap, Locale.ENGLISH, mdbConnectorFactory);
    if (configRes != null) {
      fail(configRes.getMessage());
    }
  }
View Full Code Here

    Map<String, String> newConfigMap = Maps.newHashMap(this.configMap);
    newConfigMap.put(EXT_METADATA_TYPE, extMetadataType);
    newConfigMap.put(missing, "");
    newConfigMap.put(present, value);

    ConfigureResponse configRes = this.connectorType.validateConfig(
        newConfigMap, Locale.ENGLISH, mdbConnectorFactory);
    assertNotNull(configRes);
    String message = configRes.getMessage();
    assertTrue(message,
        message.contains(BUNDLE.getString("MISSING_ATTRIBUTES")));
    String label = BUNDLE.getString(missing);
    int index = message.indexOf(label);
    assertFalse(message + " does not contain " + label, index == -1);
    return configRes.getFormSnippet();
  }
View Full Code Here

TOP

Related Classes of com.google.enterprise.connector.spi.ConfigureResponse

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.