001 002package org.cache2k; 003 004/* 005 * #%L 006 * cache2k API only package 007 * %% 008 * Copyright (C) 2000 - 2016 headissue GmbH, Munich 009 * %% 010 * Licensed under the Apache License, Version 2.0 (the "License"); 011 * you may not use this file except in compliance with the License. 012 * You may obtain a copy of the License at 013 * 014 * http://www.apache.org/licenses/LICENSE-2.0 015 * 016 * Unless required by applicable law or agreed to in writing, software 017 * distributed under the License is distributed on an "AS IS" BASIS, 018 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 019 * See the License for the specific language governing permissions and 020 * limitations under the License. 021 * #L% 022 */ 023 024import java.util.BitSet; 025 026/** 027 * Interface for requesting a bulk of data. The idea of this interface is 028 * that no object allocations need to be done in the callee to suport the interface 029 * and that it is possible to retrieve a subset of entries. The current interface 030 * works, but is quite difficult to implement. Will be changed for 1.0. 031 * 032 * @author Jens Wilke 033 */ 034@Deprecated 035public interface ExperimentalBulkCacheSource<K, T> { 036 037 /** 038 * Retrieves the objects associated with the given keys in the result array. 039 * The two arrays must be of identical size. 040 * 041 * @param keys keys of the elements 042 * @param result result objects, a non-null value in the result array means 043 * that this object may not be retrieved. 044 * @param s start index 045 * @param e end index, exclusive 046 */ 047 void getBulk(K[] keys, T[] result, BitSet _fetched, int s, int e); 048 049}