function _Cache(oRequestor, sResourcePath, mQueryOptions, bSortExpandSelect,
			sOriginalResourcePath, bSharedRequest) {
		// the number of active usages of this cache (initially 1 because the first usage that
		// creates the cache does not call #setActive)
		this.iActiveUsages = 1;
		this.mChangeListeners = {}; // map from path to an array of change listeners
		this.mChangeRequests = {}; // map from path to an array of DELETE or PATCH promises
		this.sOriginalResourcePath = sOriginalResourcePath || sResourcePath;
		// the point in time when the cache became inactive; active caches have Infinity so that
		// they are always "newer"
		this.iInactiveSince = Infinity;
		this.mEditUrl2PatchPromise = {}; // map from edit URL to a PATCH promise for retry
		// a promise with attached properties $count, $resolve existing while DELETEs or POSTs are
		// being sent
		this.oPendingRequestsPromise = null;
		this.mPostRequests = {}; // map from path to an array of entity data (POST bodies)
		this.sReportedMessagesPath = undefined;
		this.oRequestor = oRequestor;
		// whether a request has been sent and the query options are final
		this.bSentRequest = false;
		this.bSortExpandSelect = bSortExpandSelect;

		this.setResourcePath(sResourcePath);
		this.setQueryOptions(mQueryOptions);
		this.bSharedRequest = bSharedRequest; // must be set after the functions!
	}
******************************************************************************************
	// Cache
	//*********************************************************************************************

	/**
Base class for the various caches.

@param {sap.ui.model.odata.v4.lib._Requestor} oRequestor
  The requestor
@param {string} sResourcePath
  A resource path relative to the service URL
@param {object} [mQueryOptions]
  A map of key-value pairs representing the query string (requires "copy on write"!)
@param {boolean} [bSortExpandSelect]
  Whether the paths in $expand and $select shall be sorted in the cache's query string;
  note that this flag can safely be ignored for all "new" features (after 1.47) which
  should just sort always
@param {string} [sOriginalResourcePath=sResourcePath]
  The cache's original resource path to be used to build the target path for bound messages
@param {boolean} [bSharedRequest]
  If this parameter is set, the cache is read-only and modifying calls lead to an error.

@alias sap.ui.model.odata.v4.lib._Cache
@constructor
@private