⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 folder.java

📁 java 写的一个新闻发布系统
💻 JAVA
字号:
////                                   ____.//                       __/\ ______|    |__/\.     _______//            __   .____|    |       \   |    +----+       \//    _______|  /--|    |    |    -   \  _    |    :    -   \_________//   \\______: :---|    :    :           |    :    |         \________>//           |__\---\_____________:______:    :____|____:_____\//                                      /_____|////                 . . . i n   j a h i a   w e   t r u s t . . .//package org.jahia.services.filemanager;import java.io.*;import java.util.*;import java.sql.*;import org.jahia.tools.files.*;import org.jahia.utils.*;           // JahiaConsoleimport org.jahia.exceptions.*;      // JahiaInitializationExceptionimport org.jahia.services.*;import org.jahia.registries.*;import org.jahia.data.files.*;import java.io.*;import java.util.*;/** * Class Folder. * A folder item * * @author Khue ng * @version 1.0 */public class Folder {    /** the folder identifier **/    private int m_FolderID = -1;    /** the filemanager id **/    private int m_FilemanagerID = -1;    /** the parent folder id **/    private int m_ParentID = -1;    /** the depth , used for quick search purpose **/    private int m_Depth = -1;    /** the folder name **/    private String m_FolderName = "";    /** a reference to an instance of FolderDB class **/    private FolderDB m_FolderDB;    /**      * Constructor      */    protected Folder()    {    }    /**     * Constructor     *     * @param the filemanager id     * @param the parent folder id     * @param the folder name     */    public Folder(                    int filemanagerID,                    int parentID,                    String folderName ){        m_FilemanagerID = filemanagerID;        m_ParentID = parentID;        m_FolderName = folderName;    }    public int getFolderID(){        return m_FolderID;    }    protected void setFolderID(int id){        m_FolderID = id;    }    public int getFilemanagerID(){        return m_FilemanagerID;    }    protected void setFilemanager(int id){        m_FilemanagerID = id;    }    public int getParentID(){        return m_ParentID;    }    public void setParentID(int id){        m_ParentID = id;        this.setDepth( this.getParent().getDepth()+1 );    }    public int getDepth(){        return m_Depth;    }    protected void setDepth(int depth){        m_Depth = depth;    }    public String getFolderName(){        return m_FolderName;    }    public void setFolderName(String folderName){        m_FolderName = folderName;    }    /**     * Method getParent<br>     * @Return parent folder     */    public Folder getParent(){        return m_FolderDB.getInstance().getFolder(this.getParentID());    }    /**     * Method getParents<br>     * get all parent of this folder branch     *     * @parent an Hastable where to store parents id     */    public void getParents(Hashtable parents){        parents.put( new Integer(this.getFolderID()), new Integer(this.getFolderID()) );        Folder parent = m_FolderDB.getInstance().getFolder(this.getParentID());        if ( parent != null ){            toConsole("getParents():" + parent.getFolderID());            //parents.put( new Integer(parent.getFolderID()), new Integer(parent.getFolderID()) );            parent.getParents(parents);        }    }    /**     * Method getFiles<br>     * Return files contained in this folder     */    public Vector getFiles() {        Vector files = null;        // get Files        String orderSql = " order by title_jahia_file";        files = ServicesRegistry.getInstance().getJahiaFilemanagerService().getFilesByFolderDB(this.getFolderID(),orderSql);        return files;    }    /**     * Method deleteFiles<br>     * Delete files from folder.     *     * @param fileIDs String array of file id to delete     * @return false on error     */    public boolean deleteFiles(String[] fileIDs) {      boolean success = true;        // get active folder's files        Vector files = this.getFiles();        if ( files != null ) {            JahiaFile aFile = null;            int nbFile = files.size();            for ( int i=0; i<nbFile ; i++ ) {                aFile = (JahiaFile)files.get(i);                if ( inValues( new String().valueOf(aFile.getFileID()),fileIDs) ){                    if ( !ServicesRegistry.getInstance().getJahiaFilemanagerService().deleteFileDB(aFile.getFileID()) ){                        success = false;                        break;                    }                }            }        }        return success;    }    /**     * Method addFolder<br>     *     * @param folderName     * @return false on any error     */    public boolean addFolder(String folderName){        if (folderName.length()>0)	{            // create new folder            Folder folder = new Folder (	this.getFilemanagerID(),                                                        this.getFolderID(),			// parent folder                                                        folderName                                                     );            if (!m_FolderDB.getInstance().insert(folder)){                toConsole("addFolder, error create new Folder in db");                return false;            }        }        return true;    }    /**     * Method moveFiles<br>     * Move some files in this folder to another destination folder     *     * @param destFolder the destination folder     * @param fileIDs a string array of file ids     * @return false on error     */    public boolean moveFiles(Folder destFolder, String[] fileIDs ){            toConsole(" moveFiles started ");        boolean success = true;        if ( fileIDs != null && destFolder != null ){            // get folder's files            Vector files = this.getFiles();                JahiaFile aFile = null;            if ( files != null ){                    int nbFile = files.size();                for ( int i=0; i<nbFile ; i++ ) {                        aFile = (JahiaFile)files.get(i);                      if ( inValues( new String().valueOf(aFile.getFileID()),fileIDs) ){                            aFile.setFolderID(destFolder.getFolderID());                            if ( !(ServicesRegistry.getInstance().getJahiaFilemanagerService().updateFileDB(aFile)) ) {                                // error moving files                           toConsole("moveFiles, error updating files info");                                success=false;                                break;                            }                       }                   }                }            } else {               success = false;           }          return success;    }    /**     * Method renameFolder<br>     * Rename the folder name     *     * @param folderName the new folder name     * @return false on any error     */    public boolean renameFolder(String folderName){        toConsole(" renameFolder started ");        if (folderName.length()>0)	{            this.setFolderName(folderName);            if (!m_FolderDB.getInstance().update(this)){                    return false ;            }        }        return true;    }    /**     * Method inValues<br>     * Check if a string value is in an array of string     *     * @param aValue a string value     * @param values an array of String     * @return true if value found in array     */     protected boolean inValues(String aValue, String[] values){        if ( values != null ){            for (int i=0 ; i<values.length ; i++){                if (aValue.equals(values[i])){                    return true;                }            }        }        return false;     }   /**     * Method toConsole     * For debugging purpose     *     * @param msg any String message to write to the console     */    public void toConsole(String msg) {        JahiaConsole.println("Folder.toConsole", msg);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -