All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.geode.internal.cache.persistence.DiskRegionView Maven / Gradle / Ivy

/*
 * 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.geode.internal.cache.persistence;

import java.util.EnumSet;

import org.apache.geode.CancelCriterion;
import org.apache.geode.compression.Compressor;
import org.apache.geode.internal.cache.DiskId;
import org.apache.geode.internal.cache.DiskInitFile.DiskRegionFlag;
import org.apache.geode.internal.cache.DiskStoreImpl;
import org.apache.geode.internal.cache.LocalRegion;
import org.apache.geode.internal.cache.RegionEntryContext;
import org.apache.geode.internal.cache.RegionMap;
import org.apache.geode.internal.cache.versions.RegionVersionVector;

/**
 * Contract DiskInitFile needs a DiskRegion to provide.
 */
public interface DiskRegionView extends PersistentMemberView, RegionEntryContext {
  public DiskStoreImpl getDiskStore();

  public String getName();

  public long getId();

  public long getClearOplogEntryId();

  public void setClearOplogEntryId(long v);

  public RegionVersionVector getClearRVV();

  public void setClearRVV(RegionVersionVector clearRVV);

  public PersistentMemberID addMyInitializingPMID(PersistentMemberID pmid);

  public void markInitialized();

  public boolean addOnlineMember(PersistentMemberID pmid);

  public boolean addOfflineMember(PersistentMemberID pmid);

  public boolean addOfflineAndEqualMember(PersistentMemberID pmid);

  public boolean rmOnlineMember(PersistentMemberID pmid);

  public boolean rmEqualMember(PersistentMemberID pmid);

  public boolean rmOfflineMember(PersistentMemberID pmid);

  public void markBeginDestroyRegion();

  public void markBeginDestroyDataStorage();

  public void markEndDestroyDataStorage();

  public void markEndDestroyRegion();

  public boolean isBackup();

  public boolean hasConfigChanged();

  public void setConfigChanged(boolean v);

  public void setConfig(byte lruAlgorithm, byte lruAction, int lruLimit, int concurrencyLevel,
      int initialCapacity, float loadFactor, boolean statisticsEnabled, boolean isBucket,
      EnumSet flags, String partitionName, int startingBucketId,
      String compressorClassName, boolean offHeap);

  public byte getLruAlgorithm();

  public byte getLruAction();

  public int getLruLimit();

  public int getConcurrencyLevel();

  public int getInitialCapacity();

  public float getLoadFactor();

  public boolean getStatisticsEnabled();

  public boolean isBucket();

  public EnumSet getFlags();

  public String getPartitionName();

  public int getStartingBucketId();

  /**
   * Return true if this region has data in disk to allow it be be recovered. Return false if it is
   * a brand new region that has not yet written data to disk.
   */
  public boolean isRecreated();

  public void prepareForRecovery();

  public RegionMap getRecoveredEntryMap();

  public boolean isReadyForRecovery();

  public int getRecoveredEntryCount();

  public void incRecoveredEntryCount();

  public void initRecoveredEntryCount();

  public void copyExistingRegionMap(LocalRegion drs);

  public void incNumOverflowOnDisk(long delta);

  public void incNumEntriesInVM(long delta);

  public long getNumOverflowOnDisk();

  public long getNumOverflowBytesOnDisk();

  public long getNumEntriesInVM();

  public void acquireReadLock();

  public Object getRaw(DiskId did);

  public void releaseReadLock();

  public boolean didClearCountChange();

  public CancelCriterion getCancelCriterion();

  public boolean isSync();

  /** Update stats */
  public void endRead(long start, long end, long bytesRead);

  public boolean isRegionClosed();

  public void incNumOverflowBytesOnDisk(long overflowBytesOnDiskDelta);

  public RegionVersionVector getRegionVersionVector();

  public boolean isEntriesMapIncompatible();

  public String getCompressorClassName();

  public void oplogRecovered(long oplogId);

  public boolean getOffHeap();

  public void close();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy