]> source.dussan.org Git - sonarqube.git/commitdiff
DAOv.2 - Added parent mapping in ActiveRule
authorStephane Gamard <stephane.gamard@searchbox.com>
Thu, 29 May 2014 01:38:03 +0000 (03:38 +0200)
committerStephane Gamard <stephane.gamard@searchbox.com>
Thu, 29 May 2014 01:38:03 +0000 (03:38 +0200)
sonar-server/src/main/java/org/sonar/server/qualityprofile/index/ActiveRuleIndex.java
sonar-server/src/main/java/org/sonar/server/search/BaseIndex.java

index cb504b3643ccbff2216f09814d9c7366f100dc4f..d34cfef7f2e7b9f6540c29e134f4ce43efdbff9b 100644 (file)
@@ -96,20 +96,29 @@ public class ActiveRuleIndex extends BaseIndex<ActiveRule, ActiveRuleDto, Active
     return mapping;
   }
 
-//    XContentBuilder mapping = jsonBuilder().startObject()
-//      .startObject(this.indexDefinition.getIndexType())
-//      .field("dynamic", "strict")
-//      .startObject("_parent")
-//      .field("type", this.getParentType())
-//      .endObject()
-//      .startObject("_id")
-//      .field("path", ActiveRuleNormalizer.ActiveRuleField.KEY.field())
-//      .endObject()
-//      .startObject("_routing")
-//      .field("required", true)
-//      .field("path", ActiveRuleNormalizer.ActiveRuleField.RULE_KEY.field())
-//      .endObject();
+  @Override
+  protected Map mapDomain(){
+    Map<String, Object> mapping = new HashMap<String, Object>();
+    mapping.put("dynamic", false);
+    mapping.put("_id", mapKey());
+    mapping.put("_parent", mapParent());
+    mapping.put("_routing",mapRouting());
+    mapping.put("properties", mapProperties());
+    return mapping;
+  }
 
+  private Map mapRouting() {
+    Map<String, Object> mapping = new HashMap<String, Object>();
+    mapping.put("required", true);
+    mapping.put("path", ActiveRuleNormalizer.ActiveRuleField.RULE_KEY.field());
+    return mapping;
+  }
+
+  private Object mapParent() {
+    Map<String, Object> mapping = new HashMap<String, Object>();
+    mapping.put("type", this.getParentType());
+    return mapping;
+  }
 
   @Override
   public ActiveRule toDoc(Map<String, Object> fields) {
index cf0e2079738013279e6f352efac333214b80ca28..d6f93182c13cd6df61e5520a7b0c5a8cbd3fee68 100644 (file)
@@ -132,17 +132,14 @@ public abstract class BaseIndex<D, E extends Dto<K>, K extends Serializable>
 
       }
 
-      Map<String, Object> mapping = new HashMap<String, Object>();
-      mapping.put("dynamic", false);
-      mapping.put("_id", mapKey());
-      mapping.put("properties", mapProperties());
-      LOG.debug("Index Mapping {}", mapping.get("properties"));
+
+
 
       LOG.info("Update of index {} for type {}", this.getIndexName(), this.getIndexType());
       getClient().admin().indices().preparePutMapping(index)
         .setType(getIndexType())
         .setIgnoreConflicts(true)
-        .setSource(mapping)
+        .setSource(mapDomain())
         .get();
 
     } catch (Exception e) {
@@ -199,6 +196,15 @@ public abstract class BaseIndex<D, E extends Dto<K>, K extends Serializable>
 
   protected abstract Map mapKey();
 
+  protected Map mapDomain(){
+    Map<String, Object> mapping = new HashMap<String, Object>();
+    mapping.put("dynamic", false);
+    mapping.put("_id", mapKey());
+    mapping.put("properties", mapProperties());
+    LOG.debug("Index Mapping {}", mapping.get("properties"));
+    return mapping;
+  }
+
   protected Map mapField(IndexField field) {
     return mapField(field, true);
   }