View Javadoc

1   ////////////////////////////////////////////////////////////////////////////////
2   // MillScript-Excel: an Open Spice interpreter and batch website creation tool
3   // Copyright (C) 2006 Open World Ltd, Kevin Rogers
4   //
5   // This file is part of MillScript-Excel.
6   //
7   // MillScript-Excel is free software; you can redistribute it and/or modify it under
8   // the terms of the GNU General Public License as published by the Free
9   // Software Foundation; either version 2 of the License, or (at your option)
10  // any later version.
11  //
12  // MillScript-Excel is distributed in the hope that it will be useful, but WITHOUT
13  // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14  // FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
15  // more details.
16  //
17  // You should have received a copy of the GNU General Public License along with
18  // MillScript-Excel; if not, write to the Free Software Foundation, Inc., 59 Temple
19  // Place, Suite 330, Boston, MA  02111-1307  USA
20  ////////////////////////////////////////////////////////////////////////////////
21  package org.millscript.office.compound;
22  
23  import org.millscript.commons.alert.alerts.IOAlert;
24  
25  /**
26   * 
27   */
28  public enum DirectoryEntryType {
29  
30      EMPTY,
31  
32      USER_STORAGE,
33  
34      USER_STREAM,
35  
36      LOCK_BYTES,
37  
38      PROPERTY,
39  
40      ROOT_STORAGE;
41  
42      public static DirectoryEntryType getType( final byte typeByte ) {
43          switch ( typeByte ) {
44              case 0x00:
45                  return EMPTY;
46              case 0x01:
47                  return USER_STORAGE;
48              case 0x02:
49                  return USER_STREAM;
50              case 0x03:
51                  return LOCK_BYTES;
52              case 0x04:
53                  return PROPERTY;
54              case 0x05:
55                  return ROOT_STORAGE;
56              default:
57                  throw new IOAlert(
58                      "Unknown directory entry type"
59                  ).culprit( "raw type", typeByte ).mishap();
60          }
61      }
62  
63  }