|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.cvsclient.commands.log; import java.io.File; import java.util.*; import org.netbeans.modules.cvsclient.FsCommandFactory; import org.netbeans.lib.cvsclient.command.log.LogCommand; import org.netbeans.lib.cvsclient.command.log.LogInformation; import org.netbeans.modules.javacvs.commands.CvsLog; /** * * @author Milos Kleint */ public class LogDisplayer extends org.netbeans.modules.javacvs.events.CommandDisplayerAdapter { private CvsLog command; private boolean isDir = false; private File[] files; private LinkedList resultList; /** Creates new StatusDisplayer */ public LogDisplayer(CvsLog comm) { command = comm; } /** * this method is called after library's commands execution */ public void showAfterEachExecute() { if (isDir) { LogTreeInfoPanel treePanel = (LogTreeInfoPanel)FsCommandFactory.findOpenDisplayer( files[0], LogTreeInfoPanel.class, null); if (treePanel == null) { treePanel = new LogTreeInfoPanel(files[0], command); } else { treePanel.setCommand(command); } treePanel.setDataToDisplay(resultList); treePanel.displayOutputData(); resultList = null; // clearing reference.. } } /** * this method is called before any of the library's commands * that is stored in the queue in FileSystemCommand, is run. * @param currentCommand shows the command that will be executed. */ public void showBeforeEachExecute(org.netbeans.lib.cvsclient.command.Command currentCommand) { LogCommand statCom = (LogCommand)currentCommand; resultList = new LinkedList(); files = statCom.getFiles(); if (files[0].isDirectory()) { isDir = true; } else { isDir = false; } } /** * this one is called when the command's execution fails for any reason. */ public void showExecutionFailed(Exception exception) { command = null; } /** * When the library command's builder generates a FileInfoContainer object, the * Displayer is notified. * @param info - the generated information object */ public void showFileInfoGenerated(org.netbeans.lib.cvsclient.command.FileInfoContainer info) { if (info == null) return; if (isDir) { resultList.add(info); } else { File fl = info.getFile(); // find or create statusInfoPanel LogInfoPanel panel = (LogInfoPanel)FsCommandFactory.findOpenDisplayer( fl, LogInfoPanel.class, null); if (panel == null) { panel = new LogInfoPanel(command); } LogInformation infoSt = (LogInformation)info; panel.setData(infoSt); panel.displayOutputData(); } } /** * This is the last method to be called in the displayer. * Is called when the execution finishes. Any filan touchups can be made here. */ public void showFinishedCommand() { command = null; } /** * This method is the first one that is called during execution. * Here any initial setup of the displayer can be made. */ public void showStartCommand() { } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.