Changeset 6770


Ignore:
Timestamp:
2004-02-10T18:07:32+13:00 (20 years ago)
Author:
kjdon
Message:

fixed all the javadoc errors. (hope I didn't commit anything I wasn't supposed to)

Location:
trunk/gli/src/org/greenstone/gatherer
Files:
34 edited

Legend:

Unmodified
Added
Removed
  • trunk/gli/src/org/greenstone/gatherer/Gatherer.java

    r6634 r6770  
    139139    }
    140140
    141     /** Constructor. Make the three main modules, c_man, f_man and g_man, and any other necessary classes such as Dictionary.
     141    public Gatherer() {
     142    this.self = this;
     143    }
     144
     145    /** Run method. Make the three main modules, c_man, f_man and g_man, and any other necessary classes such as Dictionary.
    142146     * @param size The desired size of the Gatherer window as a <strong>Dimension</strong>.
    143147     * @param gsdl_path The path to the gsdl directory, gathered from the startup arguments, and presented as a <strong>String</strong>.
     
    145149     * @param debug_enabled <i>true</i> to print verbose debug messages to "debug.txt", <i>false</i> otherwise.
    146150     * @param perl_path The path to the PERL compiler as a <strong>String</strong>. Necessary for windows platform versions.
     151     * @param no_load <i>true</i> to prevent the previously opened collection from reopening.
    147152     * @param splash A reference to the splash screen.
    148      * @param no_load <i>true</i> to prevent the previously opened collection from reopening.
     153     * @param open_collection
     154     * @param mirroring_enabled
     155     * @param wget_version_str
     156     * @param wget_path
    149157     * @see java.io.FileOutputStream
    150158     * @see java.io.PrintStream
     
    161169     * @see org.greenstone.gatherer.gui.Splash
    162170     */
    163     public Gatherer() {
    164     this.self = this;
    165     }
    166 
    167171    public void run(Dimension size, String gsdl_path, String exec_path, boolean debug_enabled, String perl_path, boolean no_load, Splash splash, String open_collection, boolean mirroring_enabled, String wget_version_str, String wget_path) {
    168172
     
    441445
    442446    /** Used to 'spawn' a new child application when a file is double clicked.
    443      * @param command The command to run in the child process to start the application, garnered from the registry of a default associations file, and presented as a <strong>String</strong>.
    444      * @see java.util.Vector
     447     * @param file The file to open
    445448     * @see org.greenstone.gatherer.Gatherer.ExternalApplication
    446449     */
     
    457460    }
    458461   
     462    /** Used to 'spawn' a new  browser application or reset an existing one when the preview button is clicked
     463     * @param url The url to open the browser at
     464     * @see org.greenstone.gatherer.Gatherer.BrowserApplication
     465     */   
    459466    public void spawnBrowser(String url) {
    460467    String command = assoc_man.getBrowserCommand(url);
     
    775782
    776783    /** Loads the configuration file if one exists. Otherwise it creates a new one. Currently uses serialization.
    777      * @param size The desired size of the Gatherer window as a <strong>Dimension</strong>.
    778784     * @param gsdl_path The path to the gsdl directory, gathered from the startup arguments, and presented as a <strong>String</strong>.
    779785     * @param exec_path The path to the library executable, gathered from the startup arguments, and presented as a <strong>String</strong>.
    780786     * @param perl_path The path to the PERL compiler as a <strong>String</strong>. Necessary for windows platform versions.
     787     * @param mirroring_enabled
     788     * @param wget_version_str
     789     * @param wget_path
    781790     * @see java.io.FileInputStream
    782791     * @see java.io.ObjectInputStream
  • trunk/gli/src/org/greenstone/gatherer/WGet.java

    r6637 r6770  
    245245
    246246    /** Creates a new mirroring job on the queue given the target url and the destination (private, public). All other details are harvested from the config file, but these two must be  captured from the GUI's current state.
     247     * @param no_parents
     248     * @param other_hosts
     249     * @param page_requisites
    247250     * @param url a URL which points to the root url for the mirroring
    248      * @param model the GTreeModel that any new records should be added to
     251     * @param depth
    249252     * @param destination the destination file as a String
    250253     * @see org.greenstone.gatherer.Configuration
  • trunk/gli/src/org/greenstone/gatherer/cdm/Argument.java

    r6389 r6770  
    246246     * @see org.greenstone.gatherer.msm.ElementWrapper
    247247     * @see org.greenstone.gatherer.msm.MetadataSetManager#getElement(String)
    248      * @see org.greenstone.gatherer.msm.MSMUtils#getValue(Element)
     248     * @see org.greenstone.gatherer.msm.MSMUtils#getValue(Node)
    249249     */
    250250    public String getValue() {
     
    271271     * @see org.greenstone.gatherer.msm.ElementWrapper
    272272     * @see org.greenstone.gatherer.msm.MetadataSetManager#getElement(String)
    273      * @see org.greenstone.gatherer.msm.MSMUtils#getValue(Element)
     273     * @see org.greenstone.gatherer.msm.MSMUtils#getValue(Node)
    274274     */
    275275    public ArrayList getValues() {
  • trunk/gli/src/org/greenstone/gatherer/cdm/ArgumentConfiguration.java

    r6389 r6770  
    835835         * @param two A <strong>JButton</strong> whose enabled state is determined by the listener, or <i>null</i> if no button.
    836836         * @param list A <strong>JList</strong> whose enabled state is determined by the listener, or <i>null</i> if no list.
    837          * @param list A <strong>JComponent</strong> whose enabled state is determined by the listener, or <i>null</i> if no component.
     837         * @param target A <strong>JComponent</strong> whose enabled state is determined by the listener, or <i>null</i> if no component.
    838838         */
    839839        public EnabledListener(JButton one, JButton two, JList list, JComponent target) {
     
    943943        }
    944944        /** Tests two possible ListOption objects for equality. Uses the result from compareTo().
    945          * @param The <strong>Object</strong> which may be equal.
     945         * @param object The <strong>Object</strong> which may be equal.
    946946         * @return <i>true</i> if the objects are equal, <i>false</i> otherwise.
    947947         */
  • trunk/gli/src/org/greenstone/gatherer/cdm/Classifier.java

    r5863 r6770  
    133133    /** Constructor.
    134134     * @param name The name of this classifier as a <strong>String</strong>.
    135      * @param desc A description of this classifier as a <strong>String</strong>.
     135     * @param description A description of this classifier as a <strong>String</strong>.
    136136     * @param super_classifier The super class of this classifier, as a <strong>Classifier</strong>.
    137137     */
     
    167167    /** The assigned classifier constructor.
    168168     * @param element the DOM Element this classifier is based upon
    169      * @param base_classifier the Classifier from the stored library showing details about this classifier, may be null
    170169     */
    171170    public DOMProxyListEntry create(Element element) {
     
    360359
    361360    /** Method to set the value of desc.
    362      * @param desc The new value of desc as a <strong>String</strong>.
     361     * @param description The new value of desc as a <strong>String</strong>.
    363362     */
    364363    public void setDescription(String description) {
  • trunk/gli/src/org/greenstone/gatherer/cdm/CollectionConfiguration.java

    r6539 r6770  
    6767
    6868    /** Find the best insertion position for the given DOM Element. This should try to match command tag, and if found should then try to group by name or type (eg CollectionMeta), or append to end is no such grouping exists (eg PlugIns). Failing a command match it will check against the command order for the best insertion location.
    69      * @param element the command Element to be inserted
     69     * @param target_element the command Element to be inserted
    7070     * @return the Element which the given command should be inserted before, or null to append to end of list
    7171     */
  • trunk/gli/src/org/greenstone/gatherer/cdm/CollectionMeta.java

    r6539 r6770  
    166166
    167167    /** Change the value of value.
    168      * @param value the new value as a String.
     168     * @param raw_value the new value as a String.
    169169     */
    170170    public void setValue(String raw_value) {
  • trunk/gli/src/org/greenstone/gatherer/cdm/DOMProxyListModel.java

    r5756 r6770  
    7575    /** Used to add an element into the underlying dom, and fire the appropriate repaint events.
    7676     * @param index the index where the element should be inserted (relative of the other elements in this proxy list)
    77      * @param element the Element to be inserted
     77     * @param entry the <strong>DOMProxyListEntry</strong> to be inserted
    7878     */
    7979    public synchronized void add(int index, DOMProxyListEntry entry) {
  • trunk/gli/src/org/greenstone/gatherer/cdm/Index.java

    r6539 r6770  
    244244
    245245    /** Method to set the level of this index which can only be used for the default index.
    246      * @param level the new level as an int
     246     * @param new_level the new level as an int
    247247     */
    248248    public void setLevel(int new_level) {
  • trunk/gli/src/org/greenstone/gatherer/cdm/IndexManager.java

    r6539 r6770  
    13911391         * @param  event a DocumentEvent containing information about the text removed
    13921392         */
    1393         public void removeUpdate(DocumentEvent e) {
     1393        public void removeUpdate(DocumentEvent event) {
    13941394        validateAddButton();
    13951395        }
     
    14531453         * @param  event a DocumentEvent containing information about the text removed
    14541454         */
    1455         public void removeUpdate(DocumentEvent e) {
     1455        public void removeUpdate(DocumentEvent event) {
    14561456        validateAddButton();
    14571457        }
  • trunk/gli/src/org/greenstone/gatherer/cdm/LanguageManager.java

    r6539 r6770  
    168168    /** Method to retrieve a certain language object by its code.
    169169     * @param code The two letter code of a language, as a <strong>String</strong>.
    170      * @param assigned_only If <i>true</i> only those languages currently having indexes built for them are checked, otherwise the known languages buffer is checked.
    171170     * @return The <strong>Language</strong> that matches the given code, or <i>null</i> if no such language exists.
    172171     */
  • trunk/gli/src/org/greenstone/gatherer/cdm/PlugIn.java

    r5863 r6770  
    135135    /** The assigned plugin constructor.
    136136     * @param element the DOM Element this plugin is based upon
    137      * @param base_plugin the PlugIn from the stored library showing details about this plugin, may be null
    138137     */
    139138    public DOMProxyListEntry create(Element element) {
     
    315314
    316315    /** Method to set the value of desc.
    317      * @param desc The new value of desc as a <strong>String</strong>.
     316     * @param description The new value of desc as a <strong>String</strong>.
    318317     */
    319318    public void setDescription(String description) {
  • trunk/gli/src/org/greenstone/gatherer/cdm/SearchTypeManager.java

    r6318 r6770  
    443443         * @param  event a DocumentEvent containing information about the text removed
    444444         */
    445         public void removeUpdate(DocumentEvent e) {
     445        public void removeUpdate(DocumentEvent event) {
    446446        validateAddButton();
    447447        }
  • trunk/gli/src/org/greenstone/gatherer/cdm/Subcollection.java

    r5590 r6770  
    142142
    143143    /** Method to get the value of name.
    144      * @param String The value of name as a <strong>String</string>.
     144     * @return String The value of name as a <strong>String</string>.
    145145     */
    146146    public String getName() {
     
    180180
    181181    /** Method to get the value of include.
    182      * @param boolean true if this is an inclusion filter, false otherwise
     182     * @return boolean true if this is an inclusion filter, false otherwise
    183183     */
    184184    public boolean isInclusive() {
  • trunk/gli/src/org/greenstone/gatherer/cdm/SubcollectionIndexManager.java

    r6389 r6770  
    152152
    153153    /** Method to remove all of the subindexes that contain a certain subcollection.
    154      * @param sub the Subcollection that has been removed
     154     * @param subcollection the Subcollection that has been removed
    155155     * @see org.greenstone.gatherer.cdm.Subcollection
    156156     * @see org.greenstone.gatherer.cdm.SubcollectionIndex
     
    170170
    171171    /** Method to set the default subcollection index.
    172      * @param subcollection The <strong>Subcollection</strong> to use as the default index.
     172     * @param index The <strong>SubcollectionIndex</strong> to use as the default index.
    173173     * @see org.greenstone.gatherer.Gatherer
    174174     * @see org.greenstone.gatherer.collection.CollectionManager
     175     * @see org.greenstone.gatherer.cdm.SubcollectionIndex
    175176     */
    176177    public void setDefaultSubcollectionIndex(SubcollectionIndex index) {
  • trunk/gli/src/org/greenstone/gatherer/collection/CollectionManager.java

    r6662 r6770  
    11691169    }
    11701170    /** Remove a previously assigned special directory mapping.
    1171      * @param name The symbolic name of the special directory mapping to remove as a <strong>String</strong>.
     1171     * @param target The <string>FileNode</strong> representing the special directory mapping to remove as a <strong>String</strong>.
    11721172     * @return The <strong>File</strong> of the mapping removed.
     1173     * @see org.greenstone.gatherer.file.FileNode
    11731174     */
    11741175    public File removeDirectoryMapping(FileNode target) {
  • trunk/gli/src/org/greenstone/gatherer/collection/Job.java

    r6637 r6770  
    161161
    162162    /** Called by the WGet native code to inform us of a new download starting.
    163      * @param url The url that is being downloaded, as a String.
     163     * @param raw_url The url that is being downloaded, as a String.
    164164     */
    165165    public void addDownload(String raw_url) {
     
    176176     * to decide if it already knows about this url, and if not to
    177177     * update its progress bar.
    178      * @param url The url in question as a String.
     178     * @param raw_url The url in question as a String.
    179179     * @param type Whether the link is an internal or external link.
    180180     * @return A boolean indicating if the url was added.
  • trunk/gli/src/org/greenstone/gatherer/collection/SaveCollectionTask.java

    r6385 r6770  
    7070    static final private int RESTORE_COLLECTION   = 9;
    7171    /** Constructor.
    72      * @param name The filename of the collection we are saving as.
     72     * @param collection The <strong>Collection</strong> we are saving.
     73     * @see org.greenstone.gatherer.collection.Collection
    7374     */
    7475    public SaveCollectionTask(Collection collection) {
  • trunk/gli/src/org/greenstone/gatherer/file/FileQueue.java

    r6539 r6770  
    667667   
    668668    /** Register the button that will be responsible for stopping executing file actions.
    669      * @param button a JButton
     669     * @param stop_button a JButton
    670670     */
    671671    public void registerStopButton(JButton stop_button) {
  • trunk/gli/src/org/greenstone/gatherer/gui/FileAssociationDialog.java

    r6748 r6770  
    8282
    8383    /** Create a new file association dialog.
    84      * @param manager A reference to the <strong>FileAssociationManager</strong> so we can determine what extensions are already associated.
     84     * @param file_association_manager A reference to the <strong>FileAssociationManager</strong> so we can determine what extensions are already associated.
    8585     */
    8686    public FileAssociationDialog(FileAssociationManager file_association_manager) {
  • trunk/gli/src/org/greenstone/gatherer/gui/GProgressBar.java

    r6637 r6770  
    194194     * assigned to track the download.
    195195     * @param url The url String of the file that is being downloaded.
    196      * @param size The size of the file as an Int.
    197196     */
    198197    public void addDownload(String url) {
  • trunk/gli/src/org/greenstone/gatherer/gui/GUIManager.java

    r6665 r6770  
    136136    /**Constructor. Enable window events and arranges all other components.
    137137      * @param size The intial <strong>Dimension</strong> of the screen.
    138       * @param graphic The default <strong>GraphicsConfiguration</strong> for this platform.
    139138      */
    140139    public GUIManager(Dimension size) {
  • trunk/gli/src/org/greenstone/gatherer/gui/ModalDialog.java

    r6666 r6770  
    9595    /** Constructor.
    9696     * @param parent the Frame which is the owener of this dialog.
    97      * @param title the String to use as the title for this dialog.
     97     * @param modal whether this dialog is modal or not
    9898     */
    9999    public ModalDialog(Frame parent, boolean modal) {
  • trunk/gli/src/org/greenstone/gatherer/msm/LegacyCollectionImporter.java

    r6093 r6770  
    108108
    109109    /** Processes the files in the import tree, editing metadata.xml files so they contain namespaced element names.
    110      * @param collection_folder the base folder of this collection, needed for storing importing profiles
    111110     * @param file the current file we are inspecting
    112111     */
  • trunk/gli/src/org/greenstone/gatherer/msm/MSMAction.java

    r5785 r6770  
    6060     * @param action An <i>int</i> representing what action needs to be taken in subsequent access of the given set and source element.
    6161     * @param target A <strong>String</strong> representing the fully qualified name of the target element.
    62      * @param hfile If this action was created from the hfile parsing stage, does the element require a replacement to change its alias value into a real one. Note that this profile item may be created for fully namespaced elements as well, to ensure aliases are always remapped.
    6362     */
    6463    public MSMAction(int action, String target) {
  • trunk/gli/src/org/greenstone/gatherer/msm/MSMPrompt.java

    r6539 r6770  
    659659    /** Prompts the user to choose how to import a metadata element. Gives the option of renaming the element to a certain value of a certain set, or adding to a selected set.
    660660     * @param name The name of the original metadata as a String.
    661      * @param set The set previously choosen as the default set for this metadata (which it doesn't match somehow).
    662661     * @return An ElementWrapper around the element that it has been matched to.
    663662     * @see org.greenstone.gatherer.msm.MSMPrompt.MSMDialog
  • trunk/gli/src/org/greenstone/gatherer/msm/MSMUtils.java

    r6622 r6770  
    224224    /** Method to compare two metadata elements (of type Element, which is bound to get more than a bit confusing) for equality. This test may only check the structural (ie pretty much unchanging) consistancy, or may include the AssignedValue tree as well (which will be different for each collection I'd imagine).
    225225     * @param a_set The <strong>MetadataSet</strong> a comes from.
    226      * @param a An <strong>Element</strong>.
     226     * @param ae An <strong>Element</strong>.
    227227     * @param b_set The <strong>MetadataSet</strong> b comes from.
    228      * @param b The <strong>Element</strong> to compare it to.
     228     * @param be The <strong>Element</strong> to compare it to.
    229229     * @param values <i>true</i> if the AssignedValues tree should also be compared, <i>false</i> otherwise.
    230230     * @return <i>true</i> if the elements are equal, <i>false</i> otherwise.
  • trunk/gli/src/org/greenstone/gatherer/msm/MetadataComboBoxModel.java

    r5589 r6770  
    4444import org.w3c.dom.*;
    4545
    46 /** A combobox model that contains information from an array of NodeLists. */
     46/** A combobox model that contains information from the metadata set manager.
     47 * @see org.greenstone.gatherer.msm.MetadataSetManager*/
    4748public class MetadataComboBoxModel
    4849    extends DefaultComboBoxModel
     
    5051    private MetadataSetManager msm = null;
    5152    /** Constructor.
    52      * @param nodelists The <strong>NodeList[]</strong> this model is proxied to.
     53     * @param msm The <strong>MetadataSetManager</strong> this model is proxied to.
    5354     */
    5455    public MetadataComboBoxModel(MetadataSetManager msm) {
  • trunk/gli/src/org/greenstone/gatherer/msm/MetadataSet.java

    r6568 r6770  
    552552     * @see org.greenstone.gatherer.Configuration#getLanguage()
    553553     * @see org.greenstone.gatherer.Gatherer#config
    554      * @see org.greenstone.gatherer.msm.MSMUtils#getValue(Element)
     554     * @see org.greenstone.gatherer.msm.MSMUtils#getValue(Node)
    555555     * @see org.greenstone.gatherer.util.StaticStrings#CODE_ATTRIBUTE
    556556     * @see org.greenstone.gatherer.util.StaticStrings#SETLANGUAGE_ELEMENT
  • trunk/gli/src/org/greenstone/gatherer/msm/MetadataSetManager.java

    r6394 r6770  
    100100
    101101    /** Attach a piece of metadata to a record or records, ensuring the value tree is built properly, and correct messaging fired.
     102     * @param id
    102103     * @param records A FileNode[] of records, or directories, to add the specified metadata to.
    103104     * @param element The metadata element, contained within an ElementWrapper to base metadata on.
    104      * @param value The value to assign to the metadata as a String.
     105     * @param value_str The value to assign to the metadata as a String.
    105106     */
    106107    public Metadata addMetadata(long id, FileNode records[], ElementWrapper element, String value_str) {
     
    169170    }
    170171
    171     /** Add a value tree to a given metadata element.
    172      * @param element The ElementWrapper containing the element you wish to add a value tree for.
    173      * @param value_tree The root Element of the value tree.
     172    /** Add a value tree to a given metadata element represented as a GValueModel
     173     * @param model The <strong>GValueTree</strong> model
    174174     */
    175175    public void addValueTree(GValueModel model) {
     
    686686    }
    687687    /** This method takes two metadata sets, the current one and a new one, and merges them. This merge takes place at an element level falling to lower levels as necessary (using <i>mergeMDE()</i> to merge elements and <i>mergeMDV()</i> to merge value trees.
    688      * @param mds_current The currently loaded MetadataSet.
     688     * @param mds_cur The currently loaded MetadataSet.
    689689     * @param mds_new A new MetadataSet you wish to merge in.
    690690     * @return A boolean with value <i>true</i> indicating if the merge was successful, otherwise <i>false</i> if errors were detected.
     
    10411041
    10421042    /** Update a piece of metadata connected to a record or records, ensuring the value tree is built properly, and correct messaging fired.
     1043     * @param id
     1044     * @param old_metadata The metadata element,
    10431045     * @param records A FileNode[] of records, or directories, to add the specified metadata to.
    1044      * @param element The metadata element, contained within an ElementWrapper to base metadata on.
    1045      * @param value The value to assign to the metadata as a String.
     1046     * @param value_str The value to assign to the metadata as a String.
    10461047     * @param action The default action to take in the prompt.
    10471048     * @param file_level If true then the metadata can be replaced normally, if false then we should actually use an add method instead.
     
    10921093     * @param data the new Metadata.
    10931094     * @param action the default action as an int. May require user interaction.
    1094      * @param fire_event <i>true</i> if this action should fire a metadata changed event, <i>false</i> if we are calling this as an affect of a previous event. (Don't want an infinitely recursive loop, do we).
    10951095     * @param multiple_selection <i>true</i> if more than one file or folder was selected.
    10961096     * @return an int specifying the current action. Thus changes in lower parts of the tree continue to effect other disjoint subtrees.
     
    11941194     * @param data the <strong>Metadata</strong> you wish removed from the tree.
    11951195     * @param action an <i>int</i> specifying the wanted prompting action.
    1196      * @param fire_event <i>true</i> if this action should fire metadata changed events.
    11971196     * @param multiple_selection the number of records in the selection, as an <i>int</i>. Used to determine prompt controls.
    11981197     * @return an <i>int</i> specifying the current action. Thus changes in lower parts of the tree continue to effect other disjoint subtrees.
  • trunk/gli/src/org/greenstone/gatherer/msm/parsers/GreenstoneMetadataParser.java

    r6539 r6770  
    688688    extends LinkedHashMap {
    689689    /** Retrieve the CollectCFG object that matches the given collection file path.
    690      * @param collection_file The <strong>File</strong> that references the collection's directory.
     690     * @param collect_cfg_file The <strong>File</strong> that references the collection's directory.
    691691     * @return The <strong>CollectCFG</strong> that belongs to this collection, or <i>null</i> if no such file exists (so we probably aren't in a collection!).
    692692     */
  • trunk/gli/src/org/greenstone/gatherer/util/ArrayTools.java

    r6171 r6770  
    458458    }
    459459    /** Compare two files for equality, in terms of their file paths.
    460      * @param object The <strong>Object</strong> representing the file we are about to compare ourselves to.
     460     * @param obj The <strong>Object</strong> representing the file we are about to compare ourselves to.
    461461     * @return <i>true</i> if we equal the given file, <i>false</i> otherwise.
    462462     */
  • trunk/gli/src/org/greenstone/gatherer/util/Utility.java

    r6637 r6770  
    465465
    466466    /** Method which constructs the archive directory given a certain collection.
    467      * @param col_dir The location of the collection directory as a <strong>String</strong>.
     467     * @param gsdl_path The location of the greenstone installation  as a <strong>String</strong>.
     468     * @param col_name The collection name
    468469     * @return The location of the given collections archive directory, also as a <strong>String</strong>.
    469470     */
     
    884885    }
    885886    /** Method to strip new lines and extra spaces from a string. Used to restore text that has been mangled into width formatted blocks by the DOM parser.
    886      * @param raw The <strong>Strong</strong> containing the mangled text.
     887     * @param raw_str The <strong>Strong</strong> containing the mangled text.
    887888     * @return A <strong>String</strong> with new lines and extra spaces removed.
    888889     */
  • trunk/gli/src/org/greenstone/gatherer/valuetree/GValueModel.java

    r6069 r6770  
    147147
    148148    /** Retrieve a value node given its hierarchical reference or value.
    149      * @param index The hierarchy index or value as a <strong>String</strong>.
     149     * @param index_str The hierarchy index or value as a <strong>String</strong>.
    150150     */
    151151    public GValueNode getValue(String index_str) {
Note: See TracChangeset for help on using the changeset viewer.