Navigation Menu

Skip to content

Commit

Permalink
ISPN-5222 Support combined filter/converter in remote listeners
Browse files Browse the repository at this point in the history
* update JPACacheEventFilterConverterFactory to implement CacheEventFilterConverterFactory
  • Loading branch information
anistor authored and galderz committed Apr 22, 2015
1 parent b5a92db commit fbd41df
Show file tree
Hide file tree
Showing 5 changed files with 7 additions and 20 deletions.
Expand Up @@ -6,7 +6,6 @@
import static org.testng.AssertJUnit.assertTrue; import static org.testng.AssertJUnit.assertTrue;


import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
import java.util.Iterator; import java.util.Iterator;
import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue; import java.util.concurrent.BlockingQueue;
Expand Down
Expand Up @@ -60,8 +60,7 @@ protected void createCacheManagers() throws Throwable {
// Register the filter/converter factory. This should normally be discovered by the server via class path instead // Register the filter/converter factory. This should normally be discovered by the server via class path instead
// of being added manually here, but this is ok in a test. // of being added manually here, but this is ok in a test.
JPACacheEventFilterConverterFactory factory = new JPACacheEventFilterConverterFactory(); JPACacheEventFilterConverterFactory factory = new JPACacheEventFilterConverterFactory();
server(0).addCacheEventFilterFactory(JPACacheEventFilterConverterFactory.FACTORY_NAME, factory); server(0).addCacheEventFilterConverterFactory(JPACacheEventFilterConverterFactory.FACTORY_NAME, factory);
server(0).addCacheEventConverterFactory(JPACacheEventFilterConverterFactory.FACTORY_NAME, factory);


remoteCache = client(0).getCache(); remoteCache = client(0).getCache();


Expand Down
@@ -1,17 +1,16 @@
package org.infinispan.query.remote.filter; package org.infinispan.query.remote.filter;


import org.infinispan.commons.CacheException; import org.infinispan.commons.CacheException;
import org.infinispan.notifications.cachelistener.filter.CacheEventConverter; import org.infinispan.notifications.cachelistener.filter.CacheEventFilterConverter;
import org.infinispan.notifications.cachelistener.filter.CacheEventConverterFactory; import org.infinispan.notifications.cachelistener.filter.CacheEventFilterConverterFactory;
import org.infinispan.notifications.cachelistener.filter.CacheEventFilter;
import org.infinispan.notifications.cachelistener.filter.CacheEventFilterFactory;
import org.infinispan.notifications.cachelistener.filter.NamedFactory; import org.infinispan.notifications.cachelistener.filter.NamedFactory;
import org.infinispan.objectfilter.impl.ProtobufMatcher; import org.infinispan.objectfilter.impl.ProtobufMatcher;
import org.infinispan.protostream.ProtobufUtil; import org.infinispan.protostream.ProtobufUtil;
import org.infinispan.protostream.SerializationContext; import org.infinispan.protostream.SerializationContext;
import org.infinispan.protostream.config.Configuration; import org.infinispan.protostream.config.Configuration;
import org.infinispan.query.dsl.embedded.impl.JPAFilterAndConverter; import org.infinispan.query.dsl.embedded.impl.JPAFilterAndConverter;
import org.infinispan.query.remote.client.BaseProtoStreamMarshaller; import org.infinispan.query.remote.client.BaseProtoStreamMarshaller;
import org.kohsuke.MetaInfServices;


import java.io.IOException; import java.io.IOException;


Expand All @@ -20,7 +19,8 @@
* @since 7.2 * @since 7.2
*/ */
@NamedFactory(name = JPACacheEventFilterConverterFactory.FACTORY_NAME) @NamedFactory(name = JPACacheEventFilterConverterFactory.FACTORY_NAME)
public class JPACacheEventFilterConverterFactory implements CacheEventFilterFactory, CacheEventConverterFactory { @MetaInfServices
public class JPACacheEventFilterConverterFactory implements CacheEventFilterConverterFactory {


public static final String FACTORY_NAME = "query-dsl-filter-converter-factory"; public static final String FACTORY_NAME = "query-dsl-filter-converter-factory";


Expand All @@ -35,16 +35,7 @@ protected SerializationContext getSerializationContext() {
}; };


@Override @Override
public CacheEventFilter<byte[], byte[]> getFilter(Object[] params) { public CacheEventFilterConverter<byte[], byte[], byte[]> getFilterConverter(Object[] params) {
return getCacheEventFilterConverter(params);
}

@Override
public CacheEventConverter<byte[], byte[], byte[]> getConverter(Object[] params) {
return getCacheEventFilterConverter(params);
}

private JPAProtobufCacheEventFilterConverter getCacheEventFilterConverter(Object[] params) {
String jpql; String jpql;
try { try {
jpql = (String) paramMarshaller.objectFromByteBuffer((byte[]) params[0]); jpql = (String) paramMarshaller.objectFromByteBuffer((byte[]) params[0]);
Expand Down

This file was deleted.

This file was deleted.

0 comments on commit fbd41df

Please sign in to comment.