code: public static MutableInodeDirectory fromJournalEntry(InodeDirectoryEntry entry) {
      // If journal entry has no mode set, set default mode for backwards-compatibility.
      MutableInodeDirectory ret = new MutableInodeDirectory(entry.getId())
          .setCreationTimeMs(entry.getCreationTimeMs())
          .setName(entry.getName())
          .setParentId(entry.getParentId())
          .setPersistenceState(PersistenceState.valueOf(entry.getPersistenceState()))
          .setPinned(entry.getPinned())
          .setLastModificationTimeMs(entry.getLastModificationTimeMs(), true)
          .setMountPoint(entry.getMountPoint())
          .setTtl(entry.getTtl())
          .setTtlAction(ProtobufUtils.fromProtobuf(entry.getTtlAction()))
          .setDirectChildrenLoaded(entry.getDirectChildrenLoaded());
      if (entry.hasAcl()) {
        ret.mAcl = ProtoUtils.fromProto(entry.getAcl());
      } else {
        // Backward compatibility.
        AccessControlList acl = new AccessControlList();
        acl.setOwningUser(entry.getOwner());
        acl.setOwningGroup(entry.getGroup());
        short mode = entry.hasMode() ? (short) entry.getMode() : Constants.DEFAULT_FILE_SYSTEM_MODE;
        acl.setMode(mode);
        ret.mAcl = acl;
      }
      if (entry.hasDefaultAcl()) {
        ret.mDefaultAcl = (DefaultAccessControlList) ProtoUtils.fromProto(entry.getDefaultAcl());
      } else {
        ret.mDefaultAcl = new DefaultAccessControlList();
      }
      return ret;
    }
docs: Converts the entry to an {@link MutableInodeDirectory}.
  
  @param entry the entry to convert
  @return the {@link MutableInodeDirectory} representation