KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > poi > poifs > storage > BlockList


1
2 /* ====================================================================
3    Copyright 2002-2004 Apache Software Foundation
4
5    Licensed under the Apache License, Version 2.0 (the "License");
6    you may not use this file except in compliance with the License.
7    You may obtain a copy of the License at
8
9        http://www.apache.org/licenses/LICENSE-2.0
10
11    Unless required by applicable law or agreed to in writing, software
12    distributed under the License is distributed on an "AS IS" BASIS,
13    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14    See the License for the specific language governing permissions and
15    limitations under the License.
16 ==================================================================== */

17         
18
19 package org.apache.poi.poifs.storage;
20
21 import java.io.IOException JavaDoc;
22
23 /**
24  * Interface for lists of blocks that are mapped by block allocation
25  * tables
26  *
27  * @author Marc Johnson (mjohnson at apache dot org
28  */

29
30 public interface BlockList
31 {
32
33     /**
34      * remove the specified block from the list
35      *
36      * @param index the index of the specified block; if the index is
37      * out of range, that's ok
38      */

39
40     public void zap(final int index);
41
42     /**
43      * remove and return the specified block from the list
44      *
45      * @param index the index of the specified block
46      *
47      * @return the specified block
48      *
49      * @exception IOException if the index is out of range or has
50      * already been removed
51      */

52
53     public ListManagedBlock remove(final int index)
54         throws IOException JavaDoc;
55
56     /**
57      * get the blocks making up a particular stream in the list. The
58      * blocks are removed from the list.
59      *
60      * @param startBlock the index of the first block in the stream
61      *
62      * @return the stream as an array of correctly ordered blocks
63      *
64      * @exception IOException if blocks are missing
65      */

66
67     public ListManagedBlock [] fetchBlocks(final int startBlock)
68         throws IOException JavaDoc;
69
70     /**
71      * set the associated BlockAllocationTable
72      *
73      * @param bat the associated BlockAllocationTable
74      *
75      * @exception IOException
76      */

77
78     public void setBAT(final BlockAllocationTableReader bat)
79         throws IOException JavaDoc;
80 } // end public interface BlockList
81

82
Popular Tags