Revision: 5868
          http://jnode.svn.sourceforge.net/jnode/?rev=5868&view=rev
Author:   galatnm
Date:     2011-11-30 20:48:12 +0000 (Wed, 30 Nov 2011)
Log Message:
-----------
Clean up HFS+

Modified Paths:
--------------
    trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java
    trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/CatalogLeafNode.java

Modified: trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java
===================================================================
--- trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java   2011-10-25 
14:21:29 UTC (rev 5867)
+++ trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java   2011-11-30 
20:48:12 UTC (rev 5868)
@@ -249,9 +249,10 @@
             int nodeSize = getBTHeaderRecord().getNodeSize();
             ByteBuffer nodeData = ByteBuffer.allocate(nodeSize);
             fs.getApi().read(catalogHeaderNodeOffset + (currentNodeNumber * 
nodeSize), nodeData);
-            NodeDescriptor nd = new NodeDescriptor(nodeData.array(), 0);
+            byte[] datas = nodeData.array();
+            NodeDescriptor nd = new NodeDescriptor(datas, 0);
             if (nd.isIndexNode()) {
-                CatalogIndexNode node = new CatalogIndexNode(nodeData.array(), 
nodeSize);
+                CatalogIndexNode node = new CatalogIndexNode(datas, nodeSize);
                 IndexRecord[] records = (IndexRecord[]) node.findAll(parentID);
                 List<LeafRecord> lfList = new LinkedList<LeafRecord>();
                 for (IndexRecord rec : records) {
@@ -291,7 +292,7 @@
         CatalogKey cKey = new CatalogKey(parentID, nodeName);
         while (nd.isIndexNode()) {
             CatalogIndexNode node = new CatalogIndexNode(nodeData.array(), 
nodeSize);
-            IndexRecord record = (IndexRecord) node.find(cKey);
+            IndexRecord record = node.find(cKey);
             currentNodeNumber = record.getIndex();
             currentOffset = catalogHeaderNodeOffset + record.getIndex() * 
nodeSize;
             nodeData = ByteBuffer.allocate(nodeSize);
@@ -301,7 +302,7 @@
         LeafRecord lr = null;
         if (nd.isLeafNode()) {
             CatalogLeafNode node = new CatalogLeafNode(nodeData.array(), 
nodeSize);
-            lr = (LeafRecord) node.find(parentID);
+            lr = node.find(parentID);
         }
         return lr;
     }

Modified: trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/CatalogLeafNode.java
===================================================================
--- trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/CatalogLeafNode.java   
2011-10-25 14:21:29 UTC (rev 5867)
+++ trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/CatalogLeafNode.java   
2011-11-30 20:48:12 UTC (rev 5868)
@@ -3,77 +3,78 @@
 import java.util.LinkedList;
 import java.util.List;
 
+import org.apache.log4j.Logger;
 import org.jnode.fs.hfsplus.tree.AbstractNode;
-import org.jnode.fs.hfsplus.tree.Key;
 import org.jnode.fs.hfsplus.tree.LeafRecord;
 import org.jnode.fs.hfsplus.tree.NodeDescriptor;
-import org.jnode.fs.hfsplus.tree.NodeRecord;
 
 public class CatalogLeafNode extends AbstractNode<LeafRecord> {
-    /**
-     * Create a new node.
-     * 
-     * @param descriptor
-     * @param nodeSize
-     */
-    public CatalogLeafNode(NodeDescriptor descriptor, final int nodeSize) {
-        super(descriptor, nodeSize);
-    }
 
-    /**
-     * Create node from existing data.
-     * 
-     * @param nodeData
-     * @param nodeSize
-     */
-    public CatalogLeafNode(final byte[] nodeData, final int nodeSize) {
-        super(nodeData, nodeSize);
+       private final Logger log = Logger.getLogger(getClass());
 
-    }
+       /**
+        * Create a new node.
+        * 
+        * @param descriptor
+        * @param nodeSize
+        */
+       public CatalogLeafNode(NodeDescriptor descriptor, final int nodeSize) {
+               super(descriptor, nodeSize);
+       }
 
-    @Override
-    protected void loadRecords(byte[] nodeData) {
-        CatalogKey key;
-        int offset;
-        for (int i = 0; i < this.descriptor.getNumRecords(); i++) {
-            offset = offsets.get(i);
-            key = new CatalogKey(nodeData, offset);
-            int recordSize = offsets.get(i + 1) - offset;
-            records.add(new LeafRecord(key, nodeData, offset, recordSize));
-        }
-    }
+       /**
+        * Create node from existing data.
+        * 
+        * @param nodeData
+        * @param nodeSize
+        */
+       public CatalogLeafNode(final byte[] nodeData, final int nodeSize) {
+               super(nodeData, nodeSize);
 
-    /**
-     * @param parentId
-     * @return a NodeRecord or {@code null}
-     */
-    public final LeafRecord find(final CatalogNodeId parentId) {
-        for (LeafRecord record : records) {
-            Key key = record.getKey();
-            if (key instanceof CatalogKey) {
-                if (((CatalogKey) key).getParentId().getId() == 
parentId.getId()) {
-                    return record;
-                }
-            }
-        }
-        return null;
-    }
+       }
 
-    /**
-     * @param parentId
-     * @return an array of NodeRecords
-     */
-    public final LeafRecord[] findAll(final CatalogNodeId parentId) {
-        List<NodeRecord> list = new LinkedList<NodeRecord>();
-        for (int index = 0; index < this.getNodeDescriptor().getNumRecords(); 
index++) {
-            NodeRecord record = this.getNodeRecord(index);
-            Key key = record.getKey();
-            if (key instanceof CatalogKey &&
-                    ((CatalogKey) key).getParentId().getId() == 
parentId.getId()) {
-                list.add(record);
-            }
-        }
-        return list.toArray(new LeafRecord[list.size()]);
-    }
+       @Override
+       protected void loadRecords(byte[] nodeData) {
+               CatalogKey key;
+               int offset;
+               for (int i = 0; i < this.descriptor.getNumRecords(); i++) {
+                       offset = offsets.get(i);
+                       key = new CatalogKey(nodeData, offset);
+                       int recordSize = offsets.get(i + 1) - offset;
+                       records.add(new LeafRecord(key, nodeData, offset, 
recordSize));
+               }
+       }
 
+       /**
+        * @param parentId
+        * @return a NodeRecord or {@code null}
+        */
+       public final LeafRecord find(final CatalogNodeId parentId) {
+               for (LeafRecord record : records) {
+                       log.debug("Record : " + record.toString() + " Parent ID 
: " + parentId.getId());
+                       CatalogKey key = (CatalogKey) record.getKey();
+                       if (key.getParentId().getId() == parentId.getId()) {
+                               return record;
+                       }
+               }
+               return null;
+       }
+
+       /**
+        * @param parentId
+        * @return an array of NodeRecords
+        */
+       public final LeafRecord[] findAll(final CatalogNodeId parentId) {
+               List<LeafRecord> list = new LinkedList<LeafRecord>();
+               for (int index = 0; index < 
this.getNodeDescriptor().getNumRecords(); index++) {
+                       LeafRecord record = this.getNodeRecord(index);
+                       log.debug("Record : " + record.toString() + " Parent ID 
: " + parentId.getId());
+                       CatalogKey key = (CatalogKey) record.getKey();
+                       if (key.getParentId().getId() == parentId.getId()) {
+                               list.add(record);
+                       }
+               }
+               return list.toArray(new LeafRecord[list.size()]);
+       }
+
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure 
contains a definitive record of customers, application performance, 
security threats, fraudulent activity, and more. Splunk takes this 
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Jnode-svn-commits mailing list
Jnode-svn-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jnode-svn-commits

Reply via email to