Package org.infinispan.container.versioning

Examples of org.infinispan.container.versioning.EntryVersion


      }
   }

   @Override
   public InternalCacheValue createValue(CacheEntry cacheEntry) {
      EntryVersion version = cacheEntry.getVersion();
      long lifespan = cacheEntry.getLifespan();
      long maxIdle = cacheEntry.getMaxIdle();
      if (version == null) {
         if (lifespan < 0 && maxIdle < 0) return new ImmortalCacheValue(cacheEntry.getValue());
         if (lifespan > -1 && maxIdle < 0) return new MortalCacheValue(cacheEntry.getValue(), -1, lifespan);
View Full Code Here


   }


   @Override
   public InternalCacheEntry update(InternalCacheEntry ice, long lifespan, long maxIdle) {
      EntryVersion version = ice.getVersion();
      if (version == null)
         return updateUnversionedEntry(ice, lifespan, maxIdle);
      else
         return updateVersionedEntry(ice, lifespan, maxIdle, version);
   }
View Full Code Here

                  continue;
               }

               if (!context.isOriginLocal()) {
                  // What version did the transaction originator see??
                  EntryVersion versionSeen = prepareCommand.getVersionsSeen().get(k);
                  if (versionSeen != null) entry.setVersion(versionSeen);
               }

               if (entry.performWriteSkewCheck(dataContainer, context, c.wasPreviousRead())) {
                  IncrementableEntryVersion newVersion = entry.isCreated() ? versionGenerator.generateNew() : versionGenerator.increment((IncrementableEntryVersion) entry.getVersion());
View Full Code Here

               if (entry == null) {
                  continue;
               }

               // What version did the transaction originator see??
               EntryVersion versionSeen = prepareCommand.getVersionsSeen().get(k);
               entry.setVersion(versionSeen);


               if (entry.performWriteSkewCheck(dataContainer, context, c.wasPreviousRead())) {
                  //in total order, it does not care about the version returned. It just need the keys validated
View Full Code Here

      // TODO: This is temporary, as it gets refined, entire metadata object will be passed down the stack
      TimeUnit lifespanUnit = metadata.lifespanUnit();
      TimeUnit maxIdleUnit = metadata.maxIdleUnit();
      long lifespan = metadata.lifespan();
      long maxIdleTime = metadata.maxIdle();
      EntryVersion version = metadata.version();
      if (version == null) {
         if (lifespanUnit != null && maxIdleUnit != null)
            return put(key, value, lifespan, lifespanUnit, maxIdleTime, maxIdleUnit);
         else if (lifespanUnit != null)
            return put(key, value, lifespan, lifespanUnit);
View Full Code Here

      // TODO: This is temporary, as it gets refined, entire metadata object will be passed down the stack
      TimeUnit lifespanUnit = metadata.lifespanUnit();
      TimeUnit maxIdleUnit = metadata.maxIdleUnit();
      long lifespan = metadata.lifespan();
      long maxIdleTime = metadata.maxIdle();
      EntryVersion version = metadata.version();
      if (version == null) {
         if (lifespanUnit != null && maxIdleUnit != null)
            return replace(key, oldValue, value, lifespan, lifespanUnit, maxIdleTime, maxIdleUnit);
         else if (lifespanUnit != null)
            return replace(key, oldValue, value, lifespan, lifespanUnit);
View Full Code Here

      // TODO: This is temporary, as it gets refined, entire metadata object will be passed down the stack
      TimeUnit lifespanUnit = metadata.lifespanUnit();
      TimeUnit maxIdleUnit = metadata.maxIdleUnit();
      long lifespan = metadata.lifespan();
      long maxIdleTime = metadata.maxIdle();
      EntryVersion version = metadata.version();
      if (version == null) {
         if (lifespanUnit != null && maxIdleUnit != null)
            return putIfAbsent(key, value, lifespan, lifespanUnit, maxIdleTime, maxIdleUnit);
         else if (lifespanUnit != null)
            return putIfAbsent(key, value, lifespan, lifespanUnit);
View Full Code Here

   }

   @Override
   protected void commitContextEntry(CacheEntry entry, InvocationContext ctx, FlagAffectedCommand command, EntryVersion userProvidedVersion) {
      if (ctx.isInTxScope() && !isFromStateTransfer(ctx)) {
         EntryVersion version = userProvidedVersion == null
               ? ((TxInvocationContext) ctx).getCacheTransaction().getUpdatedEntryVersions().get(entry.getKey())
               : userProvidedVersion;
         cdl.commitEntry(entry, version, command, ctx);
      } else {
         // This could be a state transfer call!
View Full Code Here

   @Override
   protected void commitContextEntry(CacheEntry entry, InvocationContext ctx, FlagAffectedCommand command, EntryVersion userProvidedVersion) {
      if (ctx.isInTxScope() && !isFromStateTransfer(ctx)) {
         ClusteredRepeatableReadEntry clusterMvccEntry = (ClusteredRepeatableReadEntry) entry;
         EntryVersion existingVersion = clusterMvccEntry.getVersion();

         EntryVersion newVersion;
         if (existingVersion == null) {
            newVersion = versionGenerator.generateNew();
         } else {
            newVersion = versionGenerator.increment((IncrementableEntryVersion) existingVersion);
         }
View Full Code Here

      }

      @Override
      public VersionedImmortalCacheValue readObject(ObjectInput input) throws IOException, ClassNotFoundException {
         Object v = input.readObject();
         EntryVersion version = (EntryVersion) input.readObject();
         return new VersionedImmortalCacheValue(v, version);
      }
View Full Code Here

TOP

Related Classes of org.infinispan.container.versioning.EntryVersion

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.