code: public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
     {
        // reading owner
        byte[] buf;
        int ownLength = in.readInt();
        if (ownLength != 0)
        {
           buf = new byte[ownLength];
           in.readFully(buf);
           this.owner = new String(buf, "UTF-8");
        }
        else
        {
           this.owner = null;
        }
        accessList.clear();
        // reading access control entrys size
        int listSize = in.readInt();
        for (int i = 0; i < listSize; i++)
        {
           // reading access control entrys identity
           buf = new byte[in.readInt()];
           in.readFully(buf);
           String ident = new String(buf, "UTF-8");
           // reading permission
           buf = new byte[in.readInt()];
           in.readFully(buf);
           String perm = new String(buf, "UTF-8");
  
           accessList.add(new AccessControlEntry(ident, perm));
        }
     }
docs: {@inheritDoc}