ignite-sql-tests - wip

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/8ce64bad
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/8ce64bad
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/8ce64bad

Branch: refs/heads/ignite-sql-tests
Commit: 8ce64bad6fded2c26b42424e25cf29cfe5d7630c
Parents: e19aa7c
Author: S.Vladykin <svlady...@gridgain.com>
Authored: Fri Feb 13 18:21:06 2015 +0300
Committer: S.Vladykin <svlady...@gridgain.com>
Committed: Fri Feb 13 18:21:06 2015 +0300

----------------------------------------------------------------------
 .../configuration/CacheQueryConfiguration.java  | 23 ++++++++++++++++++++
 .../processors/query/GridQueryProcessor.java    | 11 +++++++++-
 2 files changed, 33 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8ce64bad/modules/core/src/main/java/org/apache/ignite/configuration/CacheQueryConfiguration.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/configuration/CacheQueryConfiguration.java
 
b/modules/core/src/main/java/org/apache/ignite/configuration/CacheQueryConfiguration.java
index 99683e6..4508e45 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/configuration/CacheQueryConfiguration.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/configuration/CacheQueryConfiguration.java
@@ -18,8 +18,10 @@
 package org.apache.ignite.configuration;
 
 import org.apache.ignite.cache.query.*;
+import org.apache.ignite.lang.*;
 
 import java.io.*;
+import java.util.*;
 
 /**
  * Configuration for embedded indexing facilities.
@@ -46,6 +48,9 @@ public class CacheQueryConfiguration implements Serializable {
     /** */
     private int pageSize = 1000;
 
+    /** */
+    private Collection<IgniteBiTuple<Class<?>, Class<?>>> annotatedEntryTypes;
+
     /**
      * Default constructor.
      */
@@ -200,4 +205,22 @@ public class CacheQueryConfiguration implements 
Serializable {
     public void setPageSize(int pageSize) {
         this.pageSize = pageSize;
     }
+
+    /**
+     * Gets annotates types for cache entries to be indexed as SQL table for 
this cache.
+     *
+     * @return Annotates types.
+     */
+    public Collection<IgniteBiTuple<Class<?>,Class<?>>> 
getAnnotatedEntryTypes() {
+        return annotatedEntryTypes;
+    }
+
+    /**
+     * Gets annotates types for cache entries to be indexed as SQL table for 
this cache.
+     *
+     * @param annotatedEntryTypes Annotates types.
+     */
+    public void 
setAnnotatedEntryTypes(Collection<IgniteBiTuple<Class<?>,Class<?>>> 
annotatedEntryTypes) {
+        this.annotatedEntryTypes = annotatedEntryTypes;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8ce64bad/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
index e983656..80f53c6 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
@@ -123,8 +123,17 @@ public class GridQueryProcessor extends 
GridProcessorAdapter {
                         typesByName.put(new TypeName(ccfg.getName(), 
desc.name()), desc);
                         types.put(new TypeId(ccfg.getName(), valTypeId), desc);
                     }
+                }
+
+                if (qryCfg != null && 
!F.isEmpty(qryCfg.getAnnotatedEntryTypes())) {
+                    for (IgniteBiTuple<Class<?>,Class<?>> types : 
qryCfg.getAnnotatedEntryTypes()) {
+                        TypeDescriptor desc = 
processKeyAndValue(ccfg.getName(), types.getKey(), types.getValue(),
+                            declaredTypes);
+
+                        desc.registered(idx.registerType(ccfg.getName(), 
desc));
 
-//                    processKeyAndValue(ccfg.getName())
+                        typesByName.put(new TypeName(ccfg.getName(), 
desc.name()), desc);
+                    }
                 }
             }
 

Reply via email to