You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ds...@apache.org on 2019/01/22 17:27:49 UTC

[geode] branch feature/GEODE-6291 updated: WIP: moved the commented out code to the new function

This is an automated email from the ASF dual-hosted git repository.

dschneider pushed a commit to branch feature/GEODE-6291
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/feature/GEODE-6291 by this push:
     new 04f0ee9  WIP: moved the commented out code to the new function
04f0ee9 is described below

commit 04f0ee93c502b61d6f4fe15020b6efa956f213ec
Author: Darrel Schneider <ds...@pivotal.io>
AuthorDate: Tue Jan 22 09:26:59 2019 -0800

    WIP: moved the commented out code to the new function
---
 .../CreateMappingPreconditionCheckFunction.java    | 81 ++++++++++++++++++++++
 .../jdbc/internal/configuration/RegionMapping.java | 79 ---------------------
 2 files changed, 81 insertions(+), 79 deletions(-)

diff --git a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/cli/CreateMappingPreconditionCheckFunction.java b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/cli/CreateMappingPreconditionCheckFunction.java
index 53de411..d171f03 100644
--- a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/cli/CreateMappingPreconditionCheckFunction.java
+++ b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/cli/CreateMappingPreconditionCheckFunction.java
@@ -68,6 +68,87 @@ public class CreateMappingPreconditionCheckFunction extends CliFunction<RegionMa
       }
       PdxInstance pdxInstance = pdxInstanceFactory.create();
       // TODO look for existing PdxType in the registry whose names differ in case
+      // TODO use this code when we create the field mapping
+      // Set<String> columnNames = tableMetaDataView.getColumnNames();
+      // if (columnNames.contains(fieldName)) {
+      // return fieldName;
+      // }
+      //
+      // List<String> ignoreCaseMatch = columnNames.stream().filter(c ->
+      // c.equalsIgnoreCase(fieldName))
+      // .collect(Collectors.toList());
+      // if (ignoreCaseMatch.size() > 1) {
+      // throw new JdbcConnectorException(
+      // "The SQL table has at least two columns that match the PDX field: " + fieldName);
+      // }
+      //
+      // if (ignoreCaseMatch.size() == 1) {
+      // return ignoreCaseMatch.get(0);
+      // }
+      //
+      // // there is no match either in the configured mapping or the table columns
+      // return fieldName;
+
+      // TODO use the following code when we create the mapping
+      // Set<PdxType> pdxTypes = getPdxTypesForClassName(typeRegistry);
+      // String fieldName = findExactMatch(columnName, pdxTypes);
+      // if (fieldName == null) {
+      // fieldName = findCaseInsensitiveMatch(columnName, pdxTypes);
+      // }
+      // return fieldName;
+
+      // private Set<PdxType> getPdxTypesForClassName(TypeRegistry typeRegistry) {
+      // Set<PdxType> pdxTypes = typeRegistry.getPdxTypesForClassName(getPdxName());
+      // if (pdxTypes.isEmpty()) {
+      // throw new JdbcConnectorException(
+      // "The class " + getPdxName() + " has not been pdx serialized.");
+      // }
+      // return pdxTypes;
+      // }
+
+      // /**
+      // * Given a column name and a set of pdx types, find the field name in those types that
+      // match,
+      // * ignoring case, the column name.
+      // *
+      // * @return the matching field name or null if no match
+      // * @throws JdbcConnectorException if no fields match
+      // * @throws JdbcConnectorException if more than one field matches
+      // */
+      // private String findCaseInsensitiveMatch(String columnName, Set<PdxType> pdxTypes) {
+      // HashSet<String> matchingFieldNames = new HashSet<>();
+      // for (PdxType pdxType : pdxTypes) {
+      // for (String existingFieldName : pdxType.getFieldNames()) {
+      // if (existingFieldName.equalsIgnoreCase(columnName)) {
+      // matchingFieldNames.add(existingFieldName);
+      // }
+      // }
+      // }
+      // if (matchingFieldNames.isEmpty()) {
+      // throw new JdbcConnectorException("The class " + getPdxName()
+      // + " does not have a field that matches the column " + columnName);
+      // } else if (matchingFieldNames.size() > 1) {
+      // throw new JdbcConnectorException(
+      // "Could not determine what pdx field to use for the column name " + columnName
+      // + " because the pdx fields " + matchingFieldNames + " all match it.");
+      // }
+      // return matchingFieldNames.iterator().next();
+      // }
+      //
+      // /**
+      // * Given a column name, search the given pdxTypes for a field whose name exactly matches the
+      // * column name.
+      // *
+      // * @return the matching field name or null if no match
+      // */
+      // private String findExactMatch(String columnName, Set<PdxType> pdxTypes) {
+      // for (PdxType pdxType : pdxTypes) {
+      // if (pdxType.getPdxField(columnName) != null) {
+      // return columnName;
+      // }
+      // }
+      // return null;
+      // }
 
       String member = context.getMemberName();
       return new CliFunctionResult(member, fieldMappings);
diff --git a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/configuration/RegionMapping.java b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/configuration/RegionMapping.java
index 342945d..0c4b497 100644
--- a/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/configuration/RegionMapping.java
+++ b/geode-connectors/src/main/java/org/apache/geode/connectors/jdbc/internal/configuration/RegionMapping.java
@@ -195,26 +195,6 @@ public class RegionMapping implements CacheElement {
     }
     throw new JdbcConnectorException(
         "A field mapping for the pdx field \"" + fieldName + "\" does not exist.");
-    // TODO use this code when we create the field mapping
-    // Set<String> columnNames = tableMetaDataView.getColumnNames();
-    // if (columnNames.contains(fieldName)) {
-    // return fieldName;
-    // }
-    //
-    // List<String> ignoreCaseMatch = columnNames.stream().filter(c ->
-    // c.equalsIgnoreCase(fieldName))
-    // .collect(Collectors.toList());
-    // if (ignoreCaseMatch.size() > 1) {
-    // throw new JdbcConnectorException(
-    // "The SQL table has at least two columns that match the PDX field: " + fieldName);
-    // }
-    //
-    // if (ignoreCaseMatch.size() == 1) {
-    // return ignoreCaseMatch.get(0);
-    // }
-    //
-    // // there is no match either in the configured mapping or the table columns
-    // return fieldName;
   }
 
   public String getFieldNameForColumn(String columnName) {
@@ -224,67 +204,8 @@ public class RegionMapping implements CacheElement {
     }
     throw new JdbcConnectorException(
         "A field mapping for the column \"" + columnName + "\" does not exist.");
-    // TODO use the following code when we create the mapping
-    // Set<PdxType> pdxTypes = getPdxTypesForClassName(typeRegistry);
-    // String fieldName = findExactMatch(columnName, pdxTypes);
-    // if (fieldName == null) {
-    // fieldName = findCaseInsensitiveMatch(columnName, pdxTypes);
-    // }
-    // return fieldName;
   }
 
-  // private Set<PdxType> getPdxTypesForClassName(TypeRegistry typeRegistry) {
-  // Set<PdxType> pdxTypes = typeRegistry.getPdxTypesForClassName(getPdxName());
-  // if (pdxTypes.isEmpty()) {
-  // throw new JdbcConnectorException(
-  // "The class " + getPdxName() + " has not been pdx serialized.");
-  // }
-  // return pdxTypes;
-  // }
-
-  // /**
-  // * Given a column name and a set of pdx types, find the field name in those types that match,
-  // * ignoring case, the column name.
-  // *
-  // * @return the matching field name or null if no match
-  // * @throws JdbcConnectorException if no fields match
-  // * @throws JdbcConnectorException if more than one field matches
-  // */
-  // private String findCaseInsensitiveMatch(String columnName, Set<PdxType> pdxTypes) {
-  // HashSet<String> matchingFieldNames = new HashSet<>();
-  // for (PdxType pdxType : pdxTypes) {
-  // for (String existingFieldName : pdxType.getFieldNames()) {
-  // if (existingFieldName.equalsIgnoreCase(columnName)) {
-  // matchingFieldNames.add(existingFieldName);
-  // }
-  // }
-  // }
-  // if (matchingFieldNames.isEmpty()) {
-  // throw new JdbcConnectorException("The class " + getPdxName()
-  // + " does not have a field that matches the column " + columnName);
-  // } else if (matchingFieldNames.size() > 1) {
-  // throw new JdbcConnectorException(
-  // "Could not determine what pdx field to use for the column name " + columnName
-  // + " because the pdx fields " + matchingFieldNames + " all match it.");
-  // }
-  // return matchingFieldNames.iterator().next();
-  // }
-  //
-  // /**
-  // * Given a column name, search the given pdxTypes for a field whose name exactly matches the
-  // * column name.
-  // *
-  // * @return the matching field name or null if no match
-  // */
-  // private String findExactMatch(String columnName, Set<PdxType> pdxTypes) {
-  // for (PdxType pdxType : pdxTypes) {
-  // if (pdxType.getPdxField(columnName) != null) {
-  // return columnName;
-  // }
-  // }
-  // return null;
-  // }
-
   @Override
   public boolean equals(Object o) {
     if (this == o) {