http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/examples/config/filesystem/example-igfs.xml ---------------------------------------------------------------------- diff --cc examples/config/filesystem/example-igfs.xml index 0000000,30cf51e..8350e2a mode 000000,100644..100644 --- a/examples/config/filesystem/example-igfs.xml +++ b/examples/config/filesystem/example-igfs.xml @@@ -1,0 -1,165 +1,162 @@@ + <?xml version="1.0" encoding="UTF-8"?> + + <!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You 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. + --> + + <!-- + Ignite Spring configuration file to startup ignite cache. + + When starting a standalone node, you need to execute the following command: + {IGNITE_HOME}/bin/ignite.{bat|sh} examples/config/filesystem/example-igfs.xml + + When starting Ignite from Java IDE, pass path to this file into Ignition: + Ignition.start("examples/config/filesystem/example-igfs.xml"); + --> + <beans xmlns="http://www.springframework.org/schema/beans" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" - xsi:schemaLocation=" - http://www.springframework.org/schema/beans - http://www.springframework.org/schema/beans/spring-beans.xsd - http://www.springframework.org/schema/util - http://www.springframework.org/schema/util/spring-util.xsd"> ++ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ++ xsi:schemaLocation="http://www.springframework.org/schema/beans ++ http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <!-- + Optional description. + --> + <description> + Spring file for ignite configuration with client available endpoints. + </description> + + <!-- + Initialize property configurer so we can reference environment variables. + --> + <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_FALLBACK"/> + <property name="searchSystemEnvironment" value="true"/> + </bean> + + <!-- + Configuration below demonstrates how to setup a IgniteFs node with file data. + --> + <bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration"> + <!-- Set to true to enable cluster-aware class loading for examples, default is false. --> + <property name="peerClassLoadingEnabled" value="true"/> + + <property name="marshaller"> + <bean class="org.apache.ignite.marshaller.optimized.OptimizedMarshaller"> + <!-- Set to false to allow non-serializable objects in examples, default is true. --> + <property name="requireSerializable" value="false"/> + </bean> + </property> + + <property name="igfsConfiguration"> + <list> + <bean class="org.apache.ignite.configuration.IgfsConfiguration"> + <property name="name" value="igfs"/> + <property name="metaCacheName" value="igfs-meta"/> + <property name="dataCacheName" value="igfs-data"/> + + <!-- Must correlate with cache affinity mapper. --> + <property name="blockSize" value="#{128 * 1024}"/> + <property name="perNodeBatchSize" value="512"/> + <property name="perNodeParallelBatchCount" value="16"/> + + <!-- Set number of prefetch blocks. --> + <property name="prefetchBlocks" value="32"/> + + <!-- + This will disable IPC endpoint binding thus preventing Hadoop clients from connecting to IgniteFs. + With this option set to false the only possible way to interact with IgniteFs is through + Ignite API. + --> + <property name="ipcEndpointEnabled" value="false"/> + + <!-- + Example of configured IPC loopback endpoint. + --> + <!-- + <property name="ipcEndpointConfiguration"> + <map> + <entry key="type" value="tcp"/> + </map> + </property> + --> + + <!-- + Example of configured shared memory endpoint. + --> + <!-- + <property name="ipcEndpointConfiguration"> + <map> + <entry key="type" value="shmem"/> + <entry key="port" value="10500"/> + </map> + </property> + --> + </bean> + </list> + </property> + + <property name="cacheConfiguration"> + <list> + <bean class="org.apache.ignite.configuration.CacheConfiguration"> + <property name="name" value="igfs-data"/> + <property name="cacheMode" value="PARTITIONED"/> + <property name="atomicityMode" value="TRANSACTIONAL"/> + <property name="queryIndexEnabled" value="false"/> + <property name="writeSynchronizationMode" value="FULL_SYNC"/> + <property name="distributionMode" value="PARTITIONED_ONLY"/> + <property name="backups" value="0"/> + <property name="affinityMapper"> + <bean class="org.apache.ignite.igfs.IgfsGroupDataBlocksKeyMapper"> + <!-- Haw many blocks in row will be stored on the same node. --> + <constructor-arg value="512"/> + </bean> + </property> + </bean> + + <bean class="org.apache.ignite.configuration.CacheConfiguration"> + <property name="name" value="igfs-meta"/> + <property name="cacheMode" value="REPLICATED"/> + <property name="atomicityMode" value="TRANSACTIONAL"/> + <property name="queryIndexEnabled" value="false"/> + <property name="writeSynchronizationMode" value="FULL_SYNC"/> + </bean> + </list> + </property> + + <!-- Explicitly configure TCP discovery SPI to provide list of initial nodes. --> + <property name="discoverySpi"> + <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> + <property name="ipFinder"> + <!-- + Ignition provides several options for automatic discovery that can be used + instead os static IP based discovery. For information on all options refer + to our documentation: http://doc.gridgain.org/latest/Automatic+Node+Discovery + --> + <!-- Uncomment static IP finder to enable static-based discovery of initial nodes. --> + <!--<bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">--> + <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder"> + <property name="addresses"> + <list> + <!-- In distributed environment, replace with actual host IP address. --> + <value>127.0.0.1:47500..47509</value> + </list> + </property> + </bean> + </property> + </bean> + </property> + </bean> + </beans>
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/examples/src/main/java/org/apache/ignite/examples/datagrid/starschema/FactPurchase.java ---------------------------------------------------------------------- diff --cc examples/src/main/java/org/apache/ignite/examples/datagrid/starschema/FactPurchase.java index fd77cfb,26dc5a0..909f36e --- a/examples/src/main/java/org/apache/ignite/examples/datagrid/starschema/FactPurchase.java +++ b/examples/src/main/java/org/apache/ignite/examples/datagrid/starschema/FactPurchase.java @@@ -17,9 -17,8 +17,10 @@@ package org.apache.ignite.examples.datagrid.starschema; +import org.apache.ignite.cache.query.annotations.*; +import org.apache.ignite.cache.query.*; import org.apache.ignite.cache.*; + import org.apache.ignite.cache.query.annotations.*; /** * Represents a purchase record. In our {@code snowflake} schema purchase http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/examples/src/main/java/org/apache/ignite/examples/datagrid/store/dummy/CacheDummyPersonStore.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/examples/src/main/java/org/apache/ignite/examples/misc/client/memcache/MemcacheRestExampleNodeStartup.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcComplexQuerySelfTest.java ---------------------------------------------------------------------- diff --cc modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcComplexQuerySelfTest.java index a3d76f9,7e734b6..e5ae5d1 --- a/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcComplexQuerySelfTest.java +++ b/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcComplexQuerySelfTest.java @@@ -18,10 -18,8 +18,10 @@@ package org.apache.ignite.jdbc; import org.apache.ignite.IgniteCache; - import org.apache.ignite.cache.*; import org.apache.ignite.cache.affinity.*; +import org.apache.ignite.cache.query.*; +import org.apache.ignite.cache.query.annotations.*; + import org.apache.ignite.cache.query.annotations.*; import org.apache.ignite.configuration.*; import org.apache.ignite.internal.util.typedef.*; import org.apache.ignite.spi.discovery.tcp.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcMetadataSelfTest.java ---------------------------------------------------------------------- diff --cc modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcMetadataSelfTest.java index aced53d,ea85e32..c92ce88 --- a/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcMetadataSelfTest.java +++ b/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcMetadataSelfTest.java @@@ -18,10 -18,8 +18,10 @@@ package org.apache.ignite.jdbc; import org.apache.ignite.*; - import org.apache.ignite.cache.*; import org.apache.ignite.cache.affinity.*; +import org.apache.ignite.cache.query.*; +import org.apache.ignite.cache.query.annotations.*; + import org.apache.ignite.cache.query.annotations.*; import org.apache.ignite.configuration.*; import org.apache.ignite.internal.util.typedef.*; import org.apache.ignite.spi.discovery.tcp.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcPreparedStatementSelfTest.java ---------------------------------------------------------------------- diff --cc modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcPreparedStatementSelfTest.java index 765861b,47a4122..fc40461 --- a/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcPreparedStatementSelfTest.java +++ b/modules/clients/src/test/java/org/apache/ignite/jdbc/JdbcPreparedStatementSelfTest.java @@@ -18,8 -18,7 +18,9 @@@ package org.apache.ignite.jdbc; import org.apache.ignite.*; +import org.apache.ignite.cache.query.*; +import org.apache.ignite.cache.query.annotations.*; + import org.apache.ignite.cache.query.annotations.*; import org.apache.ignite.configuration.*; import org.apache.ignite.spi.discovery.tcp.*; import org.apache.ignite.spi.discovery.tcp.ipfinder.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/IgniteCache.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/cache/query/ContinuousQuery.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/cache/query/ContinuousQuery.java index b02c65f,d99e95a..0000000 deleted file mode 100644,100644 --- a/modules/core/src/main/java/org/apache/ignite/cache/query/ContinuousQuery.java +++ /dev/null @@@ -1,208 -1,314 +1,0 @@@ --/* -- * Licensed to the Apache Software Foundation (ASF) under one or more -- * contributor license agreements. See the NOTICE file distributed with -- * this work for additional information regarding copyright ownership. -- * The ASF licenses this file to You 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 org.apache.ignite.cache.query; -- --import org.apache.ignite.*; -- --import javax.cache.event.*; -- --/** - * API for configuring and executing continuous cache queries. - * API for configuring continuous cache queries. -- * <p> - * Continuous queries are executed as follows: - * <ol> - * <li> - * Query is sent to requested grid nodes. Note that for {@link org.apache.ignite.cache.CacheMode#LOCAL LOCAL} - * and {@link org.apache.ignite.cache.CacheMode#REPLICATED REPLICATED} caches query will be always executed - * locally. - * </li> - * <li> - * Each node iterates through existing cache data and registers listeners that will - * notify about further updates. - * <li> - * Each key-value pair is passed through optional filter and if this filter returns - * true, key-value pair is sent to the master node (the one that executed query). - * If filter is not provided, all pairs are sent. - * </li> - * <li> - * When master node receives key-value pairs, it notifies the local callback. - * </li> - * </ol> - * <h2 class="header">NOTE</h2> - * Under some concurrent circumstances callback may get several notifications - * for one cache update. This should be taken into account when implementing callback. - * <h1 class="header">Query usage</h1> - * Continuous queries allow to register a remote filter and a local listener - * for cache updates. If an update event passes the filter, it will be sent to - * the node that executed the query and local listener will be notified. - * <p> - * Additionally, you can execute initial query to get currently existing data. - * Query can be of any type (SQL, TEXT or SCAN) and can be set via {@link #setInitialPredicate(Query)} - * method. - * <p> - * Query can be executed either on all nodes in topology using {@link IgniteCache#query(Query)} - * method of only on the local node using {@link IgniteCache#localQuery(Query)} method. - * Note that in case query is distributed and a new node joins, it will get the remote - * filter for the query during discovery process before it actually joins topology, - * so no updates will be missed. - * <p> - * To create a new instance of continuous query use {@link Query#continuous()} factory method. - * <h1 class="header">Example</h1> -- * As an example, suppose we have cache with {@code 'Person'} objects and we need -- * to query all persons with salary above 1000. -- * <p> -- * Here is the {@code Person} class: -- * <pre name="code" class="java"> -- * public class Person { -- * // Name. -- * private String name; -- * -- * // Salary. -- * private double salary; -- * -- * ... -- * } -- * </pre> -- * <p> -- * You can create and execute continuous query like so: -- * <pre name="code" class="java"> -- * // Create new continuous query. - * qry = cache.createContinuousQuery(); - * ContinuousQuery qry = Query.continuous(); - * - * // Initial iteration query will return all persons with salary above 1000. - * qry.setInitialPredicate(Query.scan(new IgniteBiPredicate<UUID, Person>() { - * @Override public boolean apply(UUID id, Person p) { - * return p.getSalary() > 1000; - * } - * })); - * -- * -- * // Callback that is called locally when update notifications are received. -- * // It simply prints out information about all created persons. - * qry.callback(new GridPredicate2<UUID, Collection<Map.Entry<UUID, Person>>>() { - * @Override public boolean apply(UUID uuid, Collection<Map.Entry<UUID, Person>> entries) { - * for (Map.Entry<UUID, Person> e : entries) { - * qry.setLocalListener(new CacheEntryUpdatedListener<UUID, Person>() { - * @Override public void onUpdated(Iterable<CacheEntryEvent<? extends UUID, ? extends Person>> evts) { - * for (CacheEntryEvent<? extends UUID, ? extends Person> e : evts) { -- * Person p = e.getValue(); -- * -- * X.println(">>>"); -- * X.println(">>> " + p.getFirstName() + " " + p.getLastName() + -- * "'s salary is " + p.getSalary()); -- * X.println(">>>"); -- * } - * - * return true; -- * } -- * }); -- * - * // This query will return persons with salary above 1000. - * qry.filter(new GridPredicate2<UUID, Person>() { - * @Override public boolean apply(UUID uuid, Person person) { - * return person.getSalary() > 1000; - * // Continuous listener will be notified for persons with salary above 1000. - * qry.setRemoteFilter(new CacheEntryEventFilter<UUID, Person>() { - * @Override public boolean evaluate(CacheEntryEvent<? extends UUID, ? extends Person> e) { - * return e.getValue().getSalary() > 1000; -- * } -- * }); -- * - * // Execute query. - * qry.execute(); - * // Execute query and get cursor that iterates through initial data. - * QueryCursor<Cache.Entry<UUID, Person>> cur = cache.query(qry); -- * </pre> - * This will execute query on all nodes that have cache you are working with and notify callback - * with both data that already exists in cache and further updates. - * This will execute query on all nodes that have cache you are working with and - * listener will start to receive notifications for cache updates. -- * <p> - * To stop receiving updates call {@link #close()} method: - * To stop receiving updates call {@link QueryCursor#close()} method: -- * <pre name="code" class="java"> - * qry.cancel(); - * cur.close(); -- * </pre> - * Note that one query instance can be executed only once. After it's cancelled, it's non-operational. - * If you need to repeat execution, use {@link org.apache.ignite.internal.processors.cache.query.CacheQueries#createContinuousQuery()} method to create - * new query. - * Note that this works even if you didn't provide initial query. Cursor will - * be empty in this case, but it will still unregister listeners when {@link QueryCursor#close()} - * is called. -- */ - public final class ContinuousQuery<K, V> extends Query<ContinuousQuery<K,V>> implements AutoCloseable { -public final class ContinuousQuery<K, V> extends Query<ContinuousQuery<K,V>> { -- /** */ -- private static final long serialVersionUID = 0L; -- -- /** -- * Default buffer size. Size of {@code 1} means that all entries -- * will be sent to master node immediately (buffering is disabled). -- */ -- public static final int DFLT_BUF_SIZE = 1; -- -- /** Maximum default time interval after which buffer will be flushed (if buffering is enabled). */ -- public static final long DFLT_TIME_INTERVAL = 0; -- -- /** -- * Default value for automatic unsubscription flag. Remote filters -- * will be unregistered by default if master node leaves topology. -- */ -- public static final boolean DFLT_AUTO_UNSUBSCRIBE = true; -- - public void setInitialPredicate(Query filter) { - // TODO: implement. - /** Initial filter. */ - private Query initFilter; - - /** Local listener. */ - private CacheEntryUpdatedListener<K, V> locLsnr; - - /** Remote filter. */ - private CacheEntryEventFilter<K, V> rmtFilter; - - /** Buffer size. */ - private int bufSize = DFLT_BUF_SIZE; - - /** Time interval. */ - private long timeInterval = DFLT_TIME_INTERVAL; - - /** Automatic unsubscription flag. */ - private boolean autoUnsubscribe = DFLT_AUTO_UNSUBSCRIBE; - - /** - * Sets initial query. - * <p> - * This query will be executed before continuous listener is registered - * which allows to iterate through entries which already existed at the - * time continuous query is executed. - * - * @param initFilter Initial query. - * @return {@code this} for chaining. - */ - public ContinuousQuery<K, V> setInitialPredicate(Query initFilter) { - this.initFilter = initFilter; - - return this; - } - - /** - * Gets initial query. - * - * @return Initial query. - */ - public Query getInitialPredicate() { - return initFilter; -- } -- -- /** -- * Sets local callback. This callback is called only in local node when new updates are received. - * <p> The callback predicate accepts ID of the node from where updates are received and collection - * <p> - * The callback predicate accepts ID of the node from where updates are received and collection -- * of received entries. Note that for removed entries value will be {@code null}. -- * <p> -- * If the predicate returns {@code false}, query execution will be cancelled. -- * <p> -- * <b>WARNING:</b> all operations that involve any kind of JVM-local or distributed locking (e.g., -- * synchronization or transactional cache operations), should be executed asynchronously without -- * blocking the thread that called the callback. Otherwise, you can get deadlocks. -- * -- * @param locLsnr Local callback. - * @return {@code this} for chaining. -- */ - public void setLocalListener(CacheEntryUpdatedListener<K, V> locLsnr) { - // TODO: implement. - public ContinuousQuery<K, V> setLocalListener(CacheEntryUpdatedListener<K, V> locLsnr) { - this.locLsnr = locLsnr; - - return this; - } - - /** - * Gets local listener. - * - * @return Local listener. - */ - public CacheEntryUpdatedListener<K, V> getLocalListener() { - return locLsnr; -- } -- -- /** -- * Sets optional key-value filter. This filter is called before entry is sent to the master node. -- * <p> -- * <b>WARNING:</b> all operations that involve any kind of JVM-local or distributed locking -- * (e.g., synchronization or transactional cache operations), should be executed asynchronously -- * without blocking the thread that called the filter. Otherwise, you can get deadlocks. -- * - * @param filter Key-value filter. - * @param rmtFilter Key-value filter. - * @return {@code this} for chaining. -- */ - public void setRemoteFilter(CacheEntryEventFilter<K, V> filter) { - // TODO: implement. - public ContinuousQuery<K, V> setRemoteFilter(CacheEntryEventFilter<K, V> rmtFilter) { - this.rmtFilter = rmtFilter; - - return this; -- } -- -- /** - * Sets buffer size. <p> When a cache update happens, entry is first put into a buffer. Entries from buffer will be - * sent to the master node only if the buffer is full or time provided via {@link #timeInterval(long)} method is - * exceeded. <p> Default buffer size is {@code 1} which means that entries will be sent immediately (buffering is - * Gets remote filter. - * - * @return Remote filter. - */ - public CacheEntryEventFilter<K, V> getRemoteFilter() { - return rmtFilter; - } - - /** - * Sets buffer size. - * <p> - * When a cache update happens, entry is first put into a buffer. Entries from buffer will be - * sent to the master node only if the buffer is full or time provided via {@link #setTimeInterval(long)} method is - * exceeded. - * <p> - * Default buffer size is {@code 1} which means that entries will be sent immediately (buffering is -- * disabled). -- * -- * @param bufSize Buffer size. - * @return {@code this} for chaining. -- */ - public void bufferSize(int bufSize) { - // TODO: implement. - public ContinuousQuery<K, V> setBufferSize(int bufSize) { - if (bufSize <= 0) - throw new IllegalArgumentException("Buffer size must be above zero."); - - this.bufSize = bufSize; - - return this; -- } -- -- /** - * Sets time interval. <p> When a cache update happens, entry is first put into a buffer. Entries from buffer will - * be sent to the master node only if the buffer is full (its size can be provided via {@link #bufferSize(int)} - * method) or time provided via this method is exceeded. <p> Default time interval is {@code 0} which means that - * Gets buffer size. - * - * @return Buffer size. - */ - public int getBufferSize() { - return bufSize; - } - - /** - * Sets time interval. - * <p> - * When a cache update happens, entry is first put into a buffer. Entries from buffer will - * be sent to the master node only if the buffer is full (its size can be provided via {@link #setBufferSize(int)} - * method) or time provided via this method is exceeded. - * <p> - * Default time interval is {@code 0} which means that -- * time check is disabled and entries will be sent only when buffer is full. -- * -- * @param timeInterval Time interval. - * @return {@code this} for chaining. -- */ - public void timeInterval(long timeInterval) { - // TODO: implement. - public ContinuousQuery<K, V> setTimeInterval(long timeInterval) { - if (timeInterval < 0) - throw new IllegalArgumentException("Time interval can't be negative."); - - this.timeInterval = timeInterval; - - return this; -- } -- -- /** - * Sets automatic unsubscribe flag. <p> This flag indicates that query filters on remote nodes should be - * automatically unregistered if master node (node that initiated the query) leaves topology. If this flag is {@code - * false}, filters will be unregistered only when the query is cancelled from master node, and won't ever be - * unregistered if master node leaves grid. <p> Default value for this flag is {@code true}. - * Gets time interval. - * - * @return Time interval. - */ - public long getTimeInterval() { - return timeInterval; - } - - /** - * Sets automatic unsubscribe flag. - * <p> - * This flag indicates that query filters on remote nodes should be - * automatically unregistered if master node (node that initiated the query) leaves topology. If this flag is - * {@code false}, filters will be unregistered only when the query is cancelled from master node, and won't ever be - * unregistered if master node leaves grid. - * <p> - * Default value for this flag is {@code true}. -- * -- * @param autoUnsubscribe Automatic unsubscription flag. - * @return {@code this} for chaining. -- */ - public void autoUnsubscribe(boolean autoUnsubscribe) { - // TODO: implement. - public ContinuousQuery<K, V> setAutoUnsubscribe(boolean autoUnsubscribe) { - this.autoUnsubscribe = autoUnsubscribe; - - return this; -- } -- -- /** - * Stops continuous query execution. <p> Note that one query instance can be executed only once. After it's - * cancelled, it's non-operational. If you need to repeat execution, use {@link - * org.apache.ignite.internal.processors.cache.query.CacheQueries#createContinuousQuery()} method to create new query. - * Gets automatic unsubscription flag value. -- * - * @throws IgniteCheckedException In case of error. - * @return Automatic unsubscription flag. -- */ - @Override public void close() throws IgniteCheckedException { - // TODO: implement. - public boolean isAutoUnsubscribe() { - return autoUnsubscribe; -- } --} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/cache/query/QueryMetrics.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/cache/query/QueryMetrics.java index 94e890c,d178fe0..1d1eed1 --- a/modules/core/src/main/java/org/apache/ignite/cache/query/QueryMetrics.java +++ b/modules/core/src/main/java/org/apache/ignite/cache/query/QueryMetrics.java @@@ -17,10 -17,12 +17,12 @@@ package org.apache.ignite.cache.query; + import org.apache.ignite.internal.processors.cache.query.*; + /** * Cache query metrics used to obtain statistics on query. You can get metrics for - * particular query via {@link CacheQuery#metrics()} method or accumulated metrics - * for all queries via {@link CacheQueries#metrics()}. + * particular query via {@link org.apache.ignite.internal.processors.cache.query.CacheQuery#metrics()} method or accumulated metrics + * for all queries via {@link org.apache.ignite.internal.processors.cache.query.CacheQueries#metrics()}. */ public interface QueryMetrics { /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/events/CacheQueryExecutedEvent.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/events/CacheQueryExecutedEvent.java index 2733d64,a7563a7..544305f --- a/modules/core/src/main/java/org/apache/ignite/events/CacheQueryExecutedEvent.java +++ b/modules/core/src/main/java/org/apache/ignite/events/CacheQueryExecutedEvent.java @@@ -17,10 -17,8 +17,10 @@@ package org.apache.ignite.events; - import org.apache.ignite.cache.query.*; import org.apache.ignite.cluster.*; import org.apache.ignite.internal.processors.cache.query.*; +import org.apache.ignite.lang.*; ++import org.apache.ignite.internal.processors.cache.query.*; import org.apache.ignite.internal.util.tostring.*; import org.apache.ignite.internal.util.typedef.internal.*; import org.apache.ignite.lang.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/events/CacheQueryReadEvent.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/events/CacheQueryReadEvent.java index 322feff,1959976..a972386 --- a/modules/core/src/main/java/org/apache/ignite/events/CacheQueryReadEvent.java +++ b/modules/core/src/main/java/org/apache/ignite/events/CacheQueryReadEvent.java @@@ -17,10 -17,8 +17,10 @@@ package org.apache.ignite.events; - import org.apache.ignite.cache.query.*; import org.apache.ignite.cluster.*; import org.apache.ignite.internal.processors.cache.query.*; +import org.apache.ignite.lang.*; ++import org.apache.ignite.internal.processors.cache.query.*; import org.apache.ignite.internal.util.tostring.*; import org.apache.ignite.internal.util.typedef.internal.*; import org.apache.ignite.lang.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/41bc7728/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java index 9c79ca8,6503ed9..684e2cf --- a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java @@@ -34,15 -34,6 +34,13 @@@ import org.apache.ignite.marshaller.opt import org.apache.ignite.mxbean.*; import org.apache.ignite.plugin.segmentation.*; import org.apache.ignite.spi.*; - import org.apache.ignite.spi.authentication.*; - import org.apache.ignite.spi.authentication.noop.*; +import org.apache.ignite.spi.indexing.*; +import org.apache.ignite.spi.indexing.noop.*; +import org.apache.ignite.streamer.*; +import org.apache.ignite.thread.*; +import org.apache.ignite.internal.processors.resource.*; +import org.apache.ignite.internal.processors.spring.*; +import org.apache.ignite.plugin.segmentation.*; import org.apache.ignite.spi.checkpoint.*; import org.apache.ignite.spi.checkpoint.noop.*; import org.apache.ignite.spi.collision.*;