Search in sources :

Example 1 with CacheStoreSessionListener

use of org.apache.ignite.cache.store.CacheStoreSessionListener in project ignite by apache.

the class GridCacheStoreManagerAdapter method sessionInit0.

/**
     * @param tx Current transaction.
     * @throws IgniteCheckedException If failed.
     */
private void sessionInit0(@Nullable IgniteInternalTx tx) throws IgniteCheckedException {
    assert sesHolder != null;
    SessionData ses;
    if (tx != null) {
        ses = tx.meta(SES_ATTR);
        if (ses == null) {
            ses = new SessionData(tx, cctx.name());
            tx.addMeta(SES_ATTR, ses);
        } else
            // Session cache name may change in cross-cache transaction.
            ses.cacheName(cctx.name());
    } else
        ses = new SessionData(null, cctx.name());
    sesHolder.set(ses);
    try {
        if (sesLsnrs != null && !ses.started(this)) {
            for (CacheStoreSessionListener lsnr : sesLsnrs) lsnr.onSessionStart(locSes);
        }
    } catch (Exception e) {
        throw new IgniteCheckedException("Failed to start store session: " + e, e);
    }
}
Also used : IgniteCheckedException(org.apache.ignite.IgniteCheckedException) CacheStoreSessionListener(org.apache.ignite.cache.store.CacheStoreSessionListener) IgniteCheckedException(org.apache.ignite.IgniteCheckedException) IgniteException(org.apache.ignite.IgniteException) CacheWriterException(javax.cache.integration.CacheWriterException) CacheLoaderException(javax.cache.integration.CacheLoaderException) NoSuchElementException(java.util.NoSuchElementException) CacheStorePartialUpdateException(org.apache.ignite.internal.processors.cache.CacheStorePartialUpdateException)

Example 2 with CacheStoreSessionListener

use of org.apache.ignite.cache.store.CacheStoreSessionListener in project ignite by apache.

the class CacheSpringStoreExample method main.

/**
 * Executes example.
 *
 * @param args Command line arguments, none required.
 * @throws IgniteException If example execution failed.
 */
public static void main(String[] args) throws IgniteException {
    ExamplesUtils.checkMinMemory(MIN_MEMORY);
    // To start ignite with desired configuration uncomment the appropriate line.
    try (Ignite ignite = Ignition.start("examples/config/example-ignite.xml")) {
        System.out.println();
        System.out.println(">>> Cache store example started.");
        CacheConfiguration<Long, Person> cacheCfg = new CacheConfiguration<>(CACHE_NAME);
        // Set atomicity as transaction, since we are showing transactions in example.
        cacheCfg.setAtomicityMode(TRANSACTIONAL);
        // Configure Spring store.
        cacheCfg.setCacheStoreFactory(FactoryBuilder.factoryOf(CacheSpringPersonStore.class));
        // Configure Spring session listener.
        cacheCfg.setCacheStoreSessionListenerFactories(new Factory<CacheStoreSessionListener>() {

            @Override
            public CacheStoreSessionListener create() {
                CacheSpringStoreSessionListener lsnr = new CacheSpringStoreSessionListener();
                lsnr.setDataSource(CacheSpringPersonStore.DATA_SRC);
                return lsnr;
            }
        });
        cacheCfg.setReadThrough(true);
        cacheCfg.setWriteThrough(true);
        // Auto-close cache at the end of the example.
        try (IgniteCache<Long, Person> cache = ignite.getOrCreateCache(cacheCfg)) {
            // Make initial cache loading from persistent store. This is a
            // distributed operation and will call CacheStore.loadCache(...)
            // method on all nodes in topology.
            loadCache(cache);
            // Start transaction and execute several cache operations with
            // read/write-through to persistent store.
            executeTransaction(cache);
        } finally {
            // Distributed cache could be removed from cluster only by #destroyCache() call.
            ignite.destroyCache(CACHE_NAME);
        }
    }
}
Also used : CacheSpringStoreSessionListener(org.apache.ignite.cache.store.spring.CacheSpringStoreSessionListener) Ignite(org.apache.ignite.Ignite) Person(org.apache.ignite.examples.model.Person) CacheStoreSessionListener(org.apache.ignite.cache.store.CacheStoreSessionListener) CacheConfiguration(org.apache.ignite.configuration.CacheConfiguration)

Example 3 with CacheStoreSessionListener

use of org.apache.ignite.cache.store.CacheStoreSessionListener in project ignite by apache.

the class CacheHibernateStoreExample method main.

/**
 * Executes example.
 *
 * @param args Command line arguments, none required.
 * @throws IgniteException If example execution failed.
 */
public static void main(String[] args) throws IgniteException {
    ExamplesUtils.checkMinMemory(MIN_MEMORY);
    // To start ignite with desired configuration uncomment the appropriate line.
    try (Ignite ignite = Ignition.start("examples/config/example-ignite.xml")) {
        System.out.println();
        System.out.println(">>> Cache store example started.");
        CacheConfiguration<Long, Person> cacheCfg = new CacheConfiguration<>(CACHE_NAME);
        // Set atomicity as transaction, since we are showing transactions in example.
        cacheCfg.setAtomicityMode(TRANSACTIONAL);
        // Configure Hibernate store.
        cacheCfg.setCacheStoreFactory(FactoryBuilder.factoryOf(CacheHibernatePersonStore.class));
        // Configure Hibernate session listener.
        cacheCfg.setCacheStoreSessionListenerFactories(new Factory<CacheStoreSessionListener>() {

            @Override
            public CacheStoreSessionListener create() {
                CacheHibernateStoreSessionListener lsnr = new CacheHibernateStoreSessionListener();
                lsnr.setHibernateConfigurationPath(HIBERNATE_CFG);
                return lsnr;
            }
        });
        cacheCfg.setReadThrough(true);
        cacheCfg.setWriteThrough(true);
        // Auto-close cache at the end of the example.
        try (IgniteCache<Long, Person> cache = ignite.getOrCreateCache(cacheCfg)) {
            // Make initial cache loading from persistent store. This is a
            // distributed operation and will call CacheStore.loadCache(...)
            // method on all nodes in topology.
            loadCache(cache);
            // Start transaction and execute several cache operations with
            // read/write-through to persistent store.
            executeTransaction(cache);
        } finally {
            // Distributed cache could be removed from cluster only by #destroyCache() call.
            ignite.destroyCache(CACHE_NAME);
        }
    }
}
Also used : CacheHibernateStoreSessionListener(org.apache.ignite.cache.store.hibernate.CacheHibernateStoreSessionListener) Ignite(org.apache.ignite.Ignite) Person(org.apache.ignite.examples.model.Person) CacheStoreSessionListener(org.apache.ignite.cache.store.CacheStoreSessionListener) CacheConfiguration(org.apache.ignite.configuration.CacheConfiguration)

Example 4 with CacheStoreSessionListener

use of org.apache.ignite.cache.store.CacheStoreSessionListener in project ignite by apache.

the class GridCacheProcessor method start.

/**
 * {@inheritDoc}
 */
@SuppressWarnings({ "unchecked" })
@Override
public void start() throws IgniteCheckedException {
    ctx.internalSubscriptionProcessor().registerMetastorageListener(recovery);
    ctx.internalSubscriptionProcessor().registerDatabaseListener(recovery);
    cachesInfo = new ClusterCachesInfo(ctx);
    DeploymentMode depMode = ctx.config().getDeploymentMode();
    if (!F.isEmpty(ctx.config().getCacheConfiguration())) {
        if (depMode != CONTINUOUS && depMode != SHARED)
            U.warn(log, "Deployment mode for cache is not CONTINUOUS or SHARED " + "(it is recommended that you change deployment mode and restart): " + depMode);
    }
    Collection<CacheStoreSessionListener> sessionListeners = CU.startStoreSessionListeners(ctx, ctx.config().getCacheStoreSessionListenerFactories());
    sharedCtx = createSharedContext(ctx, sessionListeners);
    locCfgMgr = new GridLocalConfigManager(this, ctx);
    transactions = new IgniteTransactionsImpl(sharedCtx, null, false);
    // Start shared managers.
    for (GridCacheSharedManager mgr : sharedCtx.managers()) mgr.start(sharedCtx);
    if (!ctx.isDaemon() && (!CU.isPersistenceEnabled(ctx.config())) || ctx.config().isClientMode()) {
        CacheJoinNodeDiscoveryData data = locCfgMgr.restoreCacheConfigurations();
        if (data != null)
            cachesInfo.onStart(data);
    }
    if (log.isDebugEnabled())
        log.debug("Started cache processor.");
    ctx.state().cacheProcessorStarted();
    ctx.systemView().registerFiltrableView(CACHE_GRP_PAGE_LIST_VIEW, CACHE_GRP_PAGE_LIST_VIEW_DESC, new CachePagesListViewWalker(), this::pagesListViewSupplier, Function.identity());
    ctx.systemView().registerFiltrableView(PART_STATES_VIEW, PART_STATES_VIEW_DESC, new PartitionStateViewWalker(), this::partStatesViewSupplier, Function.identity());
    ctx.systemView().registerView(CACHE_GRP_IO_VIEW, CACHE_GRP_IO_VIEW_DESC, new CacheGroupIoViewWalker(), () -> F.view(cacheGrps.values(), grp -> !grp.systemCache()), grpCtx -> {
        MetricRegistry mreg = ctx.metric().registry(metricName(IoStatisticsType.CACHE_GROUP.metricGroupName(), grpCtx.cacheOrGroupName()));
        return new CacheGroupIoView(grpCtx, mreg);
    });
}
Also used : SchemaAbstractDiscoveryMessage(org.apache.ignite.internal.processors.query.schema.message.SchemaAbstractDiscoveryMessage) GridFinishedFuture(org.apache.ignite.internal.util.future.GridFinishedFuture) ValidationOnNodeJoinUtils.validateHashIdResolvers(org.apache.ignite.internal.processors.cache.ValidationOnNodeJoinUtils.validateHashIdResolvers) GridCacheUtils.isPersistentCache(org.apache.ignite.internal.processors.cache.GridCacheUtils.isPersistentCache) MetastorageLifecycleListener(org.apache.ignite.internal.processors.cache.persistence.metastorage.MetastorageLifecycleListener) ReadOnlyMetastorage(org.apache.ignite.internal.processors.cache.persistence.metastorage.ReadOnlyMetastorage) PagesList(org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList) GridDhtAtomicCache(org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache) Arrays.asList(java.util.Arrays.asList) Map(java.util.Map) AffinityFunction(org.apache.ignite.cache.affinity.AffinityFunction) CachePagesListView(org.apache.ignite.spi.systemview.view.CachePagesListView) AffinityFunctionContext(org.apache.ignite.cache.affinity.AffinityFunctionContext) GridIoPolicy(org.apache.ignite.internal.managers.communication.GridIoPolicy) Objects.isNull(java.util.Objects.isNull) CacheStore(org.apache.ignite.cache.store.CacheStore) InitializationProtector(org.apache.ignite.internal.util.InitializationProtector) IgniteInClosure(org.apache.ignite.lang.IgniteInClosure) ChangeGlobalStateFinishMessage(org.apache.ignite.internal.processors.cluster.ChangeGlobalStateFinishMessage) CountDownLatch(java.util.concurrent.CountDownLatch) SnapshotDiscoveryMessage(org.apache.ignite.internal.processors.cache.persistence.snapshot.SnapshotDiscoveryMessage) EternalExpiryPolicy(javax.cache.expiry.EternalExpiryPolicy) RowStore(org.apache.ignite.internal.processors.cache.persistence.RowStore) Stream(java.util.stream.Stream) IGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK(org.apache.ignite.IgniteSystemProperties.IGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK) IgniteWriteAheadLogManager(org.apache.ignite.internal.pagemem.wal.IgniteWriteAheadLogManager) SecurityUtils.remoteSecurityContext(org.apache.ignite.internal.processors.security.SecurityUtils.remoteSecurityContext) IoStatisticsType(org.apache.ignite.internal.metric.IoStatisticsType) U(org.apache.ignite.internal.util.typedef.internal.U) IgniteOutClosureX(org.apache.ignite.internal.util.lang.IgniteOutClosureX) SecurityPermission(org.apache.ignite.plugin.security.SecurityPermission) IgniteDiscoverySpi(org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpi) GridCacheDatabaseSharedManager(org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager) F0(org.apache.ignite.internal.util.F0) S(org.apache.ignite.internal.util.typedef.internal.S) GridCacheDistributedQueryManager(org.apache.ignite.internal.processors.cache.query.GridCacheDistributedQueryManager) PartitionStateViewWalker(org.apache.ignite.internal.managers.systemview.walker.PartitionStateViewWalker) A(org.apache.ignite.internal.util.typedef.internal.A) MetricRegistry(org.apache.ignite.internal.processors.metric.MetricRegistry) T3(org.apache.ignite.internal.util.typedef.T3) T2(org.apache.ignite.internal.util.typedef.T2) REPLICATED(org.apache.ignite.cache.CacheMode.REPLICATED) CacheJtaManagerAdapter(org.apache.ignite.internal.processors.cache.jta.CacheJtaManagerAdapter) GridDiscoveryData(org.apache.ignite.spi.discovery.DiscoveryDataBag.GridDiscoveryData) TreeMap(java.util.TreeMap) GridCacheLocalQueryManager(org.apache.ignite.internal.processors.cache.query.GridCacheLocalQueryManager) CacheConfiguration(org.apache.ignite.configuration.CacheConfiguration) CacheGroupIoViewWalker(org.apache.ignite.internal.managers.systemview.walker.CacheGroupIoViewWalker) IgniteCacheSnapshotManager(org.apache.ignite.internal.processors.cache.persistence.snapshot.IgniteCacheSnapshotManager) GridPerformanceSuggestions(org.apache.ignite.internal.suggestions.GridPerformanceSuggestions) GridDhtCache(org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtCache) DatabaseLifecycleListener(org.apache.ignite.internal.processors.cache.persistence.DatabaseLifecycleListener) CacheMode(org.apache.ignite.cache.CacheMode) IgniteInternalFuture(org.apache.ignite.internal.IgniteInternalFuture) IgniteSystemProperties.getBoolean(org.apache.ignite.IgniteSystemProperties.getBoolean) DataRegion(org.apache.ignite.internal.processors.cache.persistence.DataRegion) SortedSet(java.util.SortedSet) ListIterator(java.util.ListIterator) GridCacheQueryManager(org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager) PartitionDefferedDeleteQueueCleanupTask(org.apache.ignite.internal.processors.cache.distributed.dht.topology.PartitionDefferedDeleteQueueCleanupTask) SchemaExchangeWorkerTask(org.apache.ignite.internal.processors.query.schema.SchemaExchangeWorkerTask) StopCachesOnClientReconnectExchangeTask(org.apache.ignite.internal.processors.cache.distributed.dht.preloader.StopCachesOnClientReconnectExchangeTask) QueryEntity(org.apache.ignite.cache.QueryEntity) PartitionsEvictManager(org.apache.ignite.internal.processors.cache.distributed.dht.topology.PartitionsEvictManager) IgniteMBeanAware(org.apache.ignite.mxbean.IgniteMBeanAware) IgniteOutClosure(org.apache.ignite.lang.IgniteOutClosure) Collection(java.util.Collection) ConcurrentHashMap(java.util.concurrent.ConcurrentHashMap) MetaStorage(org.apache.ignite.internal.processors.cache.persistence.metastorage.MetaStorage) UUID(java.util.UUID) Collectors(java.util.stream.Collectors) WarmUpConfiguration(org.apache.ignite.configuration.WarmUpConfiguration) IgniteBiTuple(org.apache.ignite.lang.IgniteBiTuple) Nullable(org.jetbrains.annotations.Nullable) DataStructuresProcessor(org.apache.ignite.internal.processors.datastructures.DataStructuresProcessor) CU(org.apache.ignite.internal.util.typedef.internal.CU) Objects.nonNull(java.util.Objects.nonNull) IntStream(java.util.stream.IntStream) FileWriteAheadLogManager(org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager) MarshallerUtils(org.apache.ignite.marshaller.MarshallerUtils) GridNearTransactionalCache(org.apache.ignite.internal.processors.cache.distributed.near.GridNearTransactionalCache) AtomicBoolean(java.util.concurrent.atomic.AtomicBoolean) IgniteFeatures(org.apache.ignite.internal.IgniteFeatures) Function(java.util.function.Function) NearCacheConfiguration(org.apache.ignite.configuration.NearCacheConfiguration) ConcurrentMap(java.util.concurrent.ConcurrentMap) HashSet(java.util.HashSet) SchemaNodeLeaveExchangeWorkerTask(org.apache.ignite.internal.processors.query.schema.SchemaNodeLeaveExchangeWorkerTask) IgniteClosure(org.apache.ignite.lang.IgniteClosure) IgnitePredicate(org.apache.ignite.lang.IgnitePredicate) MBeanServer(javax.management.MBeanServer) Collectors.mapping(java.util.stream.Collectors.mapping) DataStorageConfiguration(org.apache.ignite.configuration.DataStorageConfiguration) PlatformCacheManager(org.apache.ignite.internal.processors.platform.cache.PlatformCacheManager) IgniteSecurity(org.apache.ignite.internal.processors.security.IgniteSecurity) ExecutorService(java.util.concurrent.ExecutorService) SHARED(org.apache.ignite.configuration.DeploymentMode.SHARED) JTA(org.apache.ignite.internal.IgniteComponentType.JTA) GridLocalAtomicCache(org.apache.ignite.internal.processors.cache.local.atomic.GridLocalAtomicCache) GroupPartitionId(org.apache.ignite.internal.processors.cache.persistence.partstate.GroupPartitionId) QuerySchemaPatch(org.apache.ignite.internal.processors.query.QuerySchemaPatch) GridAffinityAssignmentCache(org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache) GridPlainClosure2(org.apache.ignite.internal.util.lang.GridPlainClosure2) Collectors.toList(java.util.stream.Collectors.toList) DiscoveryDataClusterState(org.apache.ignite.internal.processors.cluster.DiscoveryDataClusterState) StringJoiner(java.util.StringJoiner) IgniteTransactionsEx(org.apache.ignite.internal.IgniteTransactionsEx) ATOMIC(org.apache.ignite.cache.CacheAtomicityMode.ATOMIC) Comparator(java.util.Comparator) DataRegionConfiguration(org.apache.ignite.configuration.DataRegionConfiguration) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) QueryUtils(org.apache.ignite.internal.processors.query.QueryUtils) SYNC(org.apache.ignite.cache.CacheRebalanceMode.SYNC) IgniteCacheObjectProcessor(org.apache.ignite.internal.processors.cacheobject.IgniteCacheObjectProcessor) GridCacheUtils.isNearEnabled(org.apache.ignite.internal.processors.cache.GridCacheUtils.isNearEnabled) DeadlockDetectionManager(org.apache.ignite.internal.processors.cache.mvcc.DeadlockDetectionManager) GridDhtColocatedCache(org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedCache) ReuseList(org.apache.ignite.internal.processors.cache.persistence.tree.reuse.ReuseList) FinishPreloadingTask(org.apache.ignite.internal.processors.cache.distributed.dht.preloader.FinishPreloadingTask) QuerySchema(org.apache.ignite.internal.processors.query.QuerySchema) LOCAL(org.apache.ignite.cache.CacheMode.LOCAL) BinaryContext(org.apache.ignite.internal.binary.BinaryContext) IgniteCheckedException(org.apache.ignite.IgniteCheckedException) Set(java.util.Set) IgniteCollectors(org.apache.ignite.internal.util.IgniteCollectors) IgniteClusterReadOnlyException(org.apache.ignite.internal.processors.cache.distributed.dht.IgniteClusterReadOnlyException) IgnitePageStoreManager(org.apache.ignite.internal.pagemem.store.IgnitePageStoreManager) FreeList(org.apache.ignite.internal.processors.cache.persistence.freelist.FreeList) ClusterState(org.apache.ignite.cluster.ClusterState) Collectors.groupingBy(java.util.stream.Collectors.groupingBy) GridCompoundFuture(org.apache.ignite.internal.util.future.GridCompoundFuture) TreeSet(java.util.TreeSet) GridBinaryMarshaller(org.apache.ignite.internal.binary.GridBinaryMarshaller) ArrayList(java.util.ArrayList) GridKernalContext(org.apache.ignite.internal.GridKernalContext) GridCacheOffheapManager(org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager) IgniteTransactionsImpl(org.apache.ignite.internal.processors.cache.transactions.IgniteTransactionsImpl) ClusterNode(org.apache.ignite.cluster.ClusterNode) DiscoveryCustomMessage(org.apache.ignite.internal.managers.discovery.DiscoveryCustomMessage) IgniteInterruptedException(org.apache.ignite.IgniteInterruptedException) IgniteInterruptedCheckedException(org.apache.ignite.internal.IgniteInterruptedCheckedException) CheckpointListener(org.apache.ignite.internal.processors.cache.persistence.checkpoint.CheckpointListener) CacheStoreManager(org.apache.ignite.internal.processors.cache.store.CacheStoreManager) IgniteTxManager(org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager) GridCacheDrManager(org.apache.ignite.internal.processors.cache.dr.GridCacheDrManager) ExpiryPolicy(javax.cache.expiry.ExpiryPolicy) AtomicLongFieldUpdater(java.util.concurrent.atomic.AtomicLongFieldUpdater) IgniteSnapshotManager(org.apache.ignite.internal.processors.cache.persistence.snapshot.IgniteSnapshotManager) CacheGroupIoView(org.apache.ignite.spi.systemview.view.CacheGroupIoView) Marshaller(org.apache.ignite.marshaller.Marshaller) WarmUpStrategy(org.apache.ignite.internal.processors.cache.warmup.WarmUpStrategy) DetachedClusterNode(org.apache.ignite.internal.cluster.DetachedClusterNode) GridDhtCacheAdapter(org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtCacheAdapter) GridCacheVersionManager(org.apache.ignite.internal.processors.cache.version.GridCacheVersionManager) CachePluginManager(org.apache.ignite.internal.processors.plugin.CachePluginManager) CACHE_PROC(org.apache.ignite.internal.GridComponent.DiscoveryDataExchangeType.CACHE_PROC) CachePagesListViewWalker(org.apache.ignite.internal.managers.systemview.walker.CachePagesListViewWalker) GridProcessorAdapter(org.apache.ignite.internal.processors.GridProcessorAdapter) GridLocalCache(org.apache.ignite.internal.processors.cache.local.GridLocalCache) IgniteUuid(org.apache.ignite.lang.IgniteUuid) BinaryMarshaller(org.apache.ignite.internal.binary.BinaryMarshaller) LifecycleAware(org.apache.ignite.lifecycle.LifecycleAware) DiscoveryDataBag(org.apache.ignite.spi.discovery.DiscoveryDataBag) JoiningNodeDiscoveryData(org.apache.ignite.spi.discovery.DiscoveryDataBag.JoiningNodeDiscoveryData) CacheGroupMetricsMXBean(org.apache.ignite.mxbean.CacheGroupMetricsMXBean) CacheContinuousQueryManager(org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryManager) TRANSACTIONAL_SNAPSHOT(org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL_SNAPSHOT) CacheStoreSessionListener(org.apache.ignite.cache.store.CacheStoreSessionListener) DFLT_CACHE_REMOVE_ENTRIES_TTL(org.apache.ignite.internal.processors.cache.distributed.dht.topology.GridDhtLocalPartition.DFLT_CACHE_REMOVE_ENTRIES_TTL) IgniteSystemProperties(org.apache.ignite.IgniteSystemProperties) X(org.apache.ignite.internal.util.typedef.X) DeploymentMode(org.apache.ignite.configuration.DeploymentMode) PARTITIONED(org.apache.ignite.cache.CacheMode.PARTITIONED) SecurityException(org.apache.ignite.plugin.security.SecurityException) MetricUtils.metricName(org.apache.ignite.internal.processors.metric.impl.MetricUtils.metricName) MvccCachingManager(org.apache.ignite.internal.processors.cache.mvcc.MvccCachingManager) Collectors.toSet(java.util.stream.Collectors.toSet) IgniteFuture(org.apache.ignite.lang.IgniteFuture) IdentityHashMap(java.util.IdentityHashMap) IgniteClientDisconnectedCheckedException(org.apache.ignite.internal.IgniteClientDisconnectedCheckedException) EventType(org.apache.ignite.events.EventType) PartitionStateView(org.apache.ignite.spi.systemview.view.PartitionStateView) IgniteException(org.apache.ignite.IgniteException) FilePageStoreManager(org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager) String.format(java.lang.String.format) GridNearAtomicCache(org.apache.ignite.internal.processors.cache.distributed.near.GridNearAtomicCache) List(java.util.List) IGNITE_CACHE_REMOVED_ENTRIES_TTL(org.apache.ignite.IgniteSystemProperties.IGNITE_CACHE_REMOVED_ENTRIES_TTL) Optional(java.util.Optional) NotNull(org.jetbrains.annotations.NotNull) HashMap(java.util.HashMap) CONTINUOUS(org.apache.ignite.configuration.DeploymentMode.CONTINUOUS) CacheExistsException(org.apache.ignite.cache.CacheExistsException) AtomicReference(java.util.concurrent.atomic.AtomicReference) CacheDataStructuresManager(org.apache.ignite.internal.processors.cache.datastructures.CacheDataStructuresManager) IgniteNodeValidationResult(org.apache.ignite.spi.IgniteNodeValidationResult) IgniteUtils.doInParallel(org.apache.ignite.internal.util.IgniteUtils.doInParallel) CacheException(javax.cache.CacheException) IgniteThrowableFunction(org.apache.ignite.internal.util.lang.IgniteThrowableFunction) F(org.apache.ignite.internal.util.typedef.F) SchemaProposeDiscoveryMessage(org.apache.ignite.internal.processors.query.schema.message.SchemaProposeDiscoveryMessage) Iterator(java.util.Iterator) AffinityTopologyVersion(org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion) ClusterTopologyCheckedException(org.apache.ignite.internal.cluster.ClusterTopologyCheckedException) FULL_SYNC(org.apache.ignite.cache.CacheWriteSynchronizationMode.FULL_SYNC) CacheObjectBinaryProcessorImpl(org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl) GridToStringInclude(org.apache.ignite.internal.util.tostring.GridToStringInclude) TimeUnit(java.util.concurrent.TimeUnit) IgniteCacheDatabaseSharedManager(org.apache.ignite.internal.processors.cache.persistence.IgniteCacheDatabaseSharedManager) ChangeGlobalStateMessage(org.apache.ignite.internal.processors.cluster.ChangeGlobalStateMessage) Collections(java.util.Collections) CacheGroupIoViewWalker(org.apache.ignite.internal.managers.systemview.walker.CacheGroupIoViewWalker) CachePagesListViewWalker(org.apache.ignite.internal.managers.systemview.walker.CachePagesListViewWalker) IgniteTransactionsImpl(org.apache.ignite.internal.processors.cache.transactions.IgniteTransactionsImpl) CacheGroupIoView(org.apache.ignite.spi.systemview.view.CacheGroupIoView) MetricRegistry(org.apache.ignite.internal.processors.metric.MetricRegistry) CacheStoreSessionListener(org.apache.ignite.cache.store.CacheStoreSessionListener) DeploymentMode(org.apache.ignite.configuration.DeploymentMode) PartitionStateViewWalker(org.apache.ignite.internal.managers.systemview.walker.PartitionStateViewWalker)

Example 5 with CacheStoreSessionListener

use of org.apache.ignite.cache.store.CacheStoreSessionListener in project ignite by apache.

the class GridCacheUtils method startStoreSessionListeners.

/**
 * Creates and starts store session listeners.
 *
 * @param ctx Kernal context.
 * @param factories Factories.
 * @return Listeners.
 * @throws IgniteCheckedException In case of error.
 */
public static Collection<CacheStoreSessionListener> startStoreSessionListeners(GridKernalContext ctx, Factory<CacheStoreSessionListener>[] factories) throws IgniteCheckedException {
    if (factories == null)
        return null;
    Collection<CacheStoreSessionListener> lsnrs = new ArrayList<>(factories.length);
    for (Factory<CacheStoreSessionListener> factory : factories) {
        CacheStoreSessionListener lsnr = factory.create();
        if (lsnr != null) {
            ctx.resource().injectGeneric(lsnr);
            if (lsnr instanceof LifecycleAware)
                ((LifecycleAware) lsnr).start();
            lsnrs.add(lsnr);
        }
    }
    return lsnrs;
}
Also used : LifecycleAware(org.apache.ignite.lifecycle.LifecycleAware) ArrayList(java.util.ArrayList) CacheStoreSessionListener(org.apache.ignite.cache.store.CacheStoreSessionListener)

Aggregations

CacheStoreSessionListener (org.apache.ignite.cache.store.CacheStoreSessionListener)7 CacheConfiguration (org.apache.ignite.configuration.CacheConfiguration)4 ArrayList (java.util.ArrayList)2 Ignite (org.apache.ignite.Ignite)2 Person (org.apache.ignite.examples.model.Person)2 LifecycleAware (org.apache.ignite.lifecycle.LifecycleAware)2 String.format (java.lang.String.format)1 Arrays.asList (java.util.Arrays.asList)1 Collection (java.util.Collection)1 Collections (java.util.Collections)1 Comparator (java.util.Comparator)1 HashMap (java.util.HashMap)1 HashSet (java.util.HashSet)1 IdentityHashMap (java.util.IdentityHashMap)1 Iterator (java.util.Iterator)1 List (java.util.List)1 ListIterator (java.util.ListIterator)1 Map (java.util.Map)1 NoSuchElementException (java.util.NoSuchElementException)1 Objects.isNull (java.util.Objects.isNull)1