Package org.jacorb.poa.gui.poa

Source Code of org.jacorb.poa.gui.poa.POAFrame

package org.jacorb.poa.gui.poa;

/*
*        JacORB - a free Java ORB
*
*   Copyright (C) 1997-2004 Gerald Brose.
*
*   This library is free software; you can redistribute it and/or
*   modify it under the terms of the GNU Library General Public
*   License as published by the Free Software Foundation; either
*   version 2 of the License, or (at your option) any later version.
*
*   This library is distributed in the hope that it will be useful,
*   but WITHOUT ANY WARRANTY; without even the implied warranty of
*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
*   Library General Public License for more details.
*
*   You should have received a copy of the GNU Library General Public
*   License along with this library; if not, write to the Free
*   Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/

import java.awt.Color;
import java.awt.Label;
import org.jacorb.poa.gui.POAMonitorController;
import org.jacorb.poa.gui.beans.DoubleListDialog;
import org.jacorb.poa.gui.beans.FillLevelBar;
import org.jacorb.poa.gui.beans.MessageDialog;
import org.jacorb.poa.util.POAUtil;
import org.jacorb.poa.util.StringPair;

/**
* Implements the org.jacorb.poa.gui.POAView interface
*
* @author Reimo Tiedemann, FU Berlin
* @version 1.01, 06/11/99, RT
*/
public class POAFrame
    extends java.awt.Frame
    implements   org.jacorb.poa.gui.beans.CloseButtonPanelController,
                DetailsButtonController, ObjectListItemController,
                QueueListItemController,
                org.jacorb.poa.gui.POAMonitorView, java.awt.event.WindowListener
{

    private POAMonitorController controller = null;
    private static Color aomBarColor = new java.awt.Color(196,196,0);
    private static Color queueBarColor = new java.awt.Color(0,128,128);
    private static Color activeRequestsBarColor1 = new java.awt.Color(0,128,0);
    private static Color activeRequestsBarColor2 = new java.awt.Color(128,0,0);
    private static Color threadPoolBarColor = new java.awt.Color(0,128,0);
    private String poaName = "";
    private FillLevelBar aomBar = null;
    private FillLevelBar queueBar = null;
    private FillLevelBar activeRequestsBar = null;
    private FillLevelBar threadPoolBar = null;
    private Label stateLabel = null;
    private Label threadLabel = null;
    private Label lifespanLabel = null;
    private Label idUniquenessLabel = null;
    private Label idAssignmentLabel = null;
    private Label servantRetentionLabel = null;
    private Label requestProcessingLabel = null;
    private Label implicitActivationLabel = null;
    private java.awt.FontMetrics fontMetrics1 = null;
    private org.jacorb.poa.gui.beans.CloseButtonPanel ivjButtonPanel = null;
    private org.jacorb.poa.gui.beans.ConsolePanel ivjConsolePanel = null;
    private java.awt.Panel ivjContentsPane = null;
    private POAStatePanel ivjPOAStatePanel = null;
    public void _actionCloseButtonPressed() {
  if (controller != null) {
            controller.actionCloseView();
  }
    }
    public void _actionDeactivateObject(String oidStr) {
  if (controller != null) {
            controller.actionDeactivateObject(oidStr);
  }
    }
    public void _actionDetailsButtonPressed(String source) {
  if (source.equals("aom")) {
            _showAOMDialog();
  } else if (source.equals("queue")) {
            _showQueueDialog();
  } else {
            System.err.println("details unknown source: "+source);
  }
    }
    /**
     * connEtoC1:  (POAFrame.window.windowClosing(java.awt.event.WindowEvent) --> POAFrame.dispose()V)
     * @param arg1 java.awt.event.WindowEvent
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private void connEtoC1(java.awt.event.WindowEvent arg1) {
  try {
            // user code begin {1}
            // user code end
            this._actionCloseButtonPressed();
            // user code begin {2}
            // user code end
  } catch (java.lang.Throwable ivjExc) {
            // user code begin {3}
            // user code end
            handleException(ivjExc);
  }
    }
    public void _destroy() {
  dispose();
    }
    private java.awt.FontMetrics _fontMetrics1() {
  if (fontMetrics1 == null) {
            fontMetrics1 = getPOAStatePanel()._getPolicyPanel()._getThreadLabel().getGraphics().getFontMetrics();
  }
  return fontMetrics1;
    }
    private FillLevelBar _getActiveRequestsBar() {
  if (activeRequestsBar == null) {
            activeRequestsBar = getPOAStatePanel()._getTMPanel()._getActiveRequestsBar();
  }
  return activeRequestsBar;
    }
    private FillLevelBar _getAOMBar() {
  if (aomBar == null) {
            aomBar = getPOAStatePanel()._getAOMPanel()._getAOMBar();
  }
  return aomBar;
    }
    /**
     * Return the ButtonPanel property value.
     * @return org.jacorb.poa.gui.beans.CloseButtonPanel
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private org.jacorb.poa.gui.beans.CloseButtonPanel getButtonPanel() {
  if (ivjButtonPanel == null) {
            try {
                ivjButtonPanel = new org.jacorb.poa.gui.beans.CloseButtonPanel();
                ivjButtonPanel.setName("ButtonPanel");
                // user code begin {1}
                // user code end
            } catch (java.lang.Throwable ivjExc) {
                // user code begin {2}
                // user code end
                handleException(ivjExc);
            }
  };
  return ivjButtonPanel;
    }
    /**
     * Return the ConsolePanel property value.
     * @return org.jacorb.poa.gui.beans.ConsolePanel
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private org.jacorb.poa.gui.beans.ConsolePanel getConsolePanel() {
  if (ivjConsolePanel == null) {
            try {
                ivjConsolePanel = new org.jacorb.poa.gui.beans.ConsolePanel();
                ivjConsolePanel.setName("ConsolePanel");
                // user code begin {1}
                // user code end
            } catch (java.lang.Throwable ivjExc) {
                // user code begin {2}
                // user code end
                handleException(ivjExc);
            }
  };
  return ivjConsolePanel;
    }
    /**
     * Return the ContentsPane property value.
     * @return java.awt.Panel
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private java.awt.Panel getContentsPane() {
  if (ivjContentsPane == null) {
            try {
                ivjContentsPane = new java.awt.Panel();
                ivjContentsPane.setName("ContentsPane");
                ivjContentsPane.setLayout(new java.awt.BorderLayout());
                ivjContentsPane.setBackground(java.awt.SystemColor.control);
                getContentsPane().add(getButtonPanel(), "South");
                getContentsPane().add(getConsolePanel(), "Center");
                getContentsPane().add(getPOAStatePanel(), "North");
                // user code begin {1}
                // user code end
            } catch (java.lang.Throwable ivjExc) {
                // user code begin {2}
                // user code end
                handleException(ivjExc);
            }
  };
  return ivjContentsPane;
    }
    private Label _getIdAssignmentLabel() {
  if (idAssignmentLabel == null) {
            idAssignmentLabel = getPOAStatePanel()._getPolicyPanel()._getIdAssignmentLabel();
  }
  return idAssignmentLabel;
    }
    private Label _getIdUniquenessLabel() {
  if (idUniquenessLabel == null) {
            idUniquenessLabel = getPOAStatePanel()._getPolicyPanel()._getIdUniquenessLabel();
  }
  return idUniquenessLabel;
    }
    private Label _getImplicitActivationLabel() {
  if (implicitActivationLabel == null) {
            implicitActivationLabel = getPOAStatePanel()._getPolicyPanel()._getImplicitActivationLabel();
  }
  return implicitActivationLabel;
    }
    private Label _getLifespanLabel() {
  if (lifespanLabel == null) {
            lifespanLabel = getPOAStatePanel()._getPolicyPanel()._getLifespanLabel();
  }
  return lifespanLabel;
    }
    /**
     * Return the POAStatePanel property value.
     * @return org.jacorb.poa.gui.poa.POAStatePanel
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private POAStatePanel getPOAStatePanel() {
  if (ivjPOAStatePanel == null) {
            try {
                ivjPOAStatePanel = new org.jacorb.poa.gui.poa.POAStatePanel();
                ivjPOAStatePanel.setName("POAStatePanel");
                // user code begin {1}
                // user code end
            } catch (java.lang.Throwable ivjExc) {
                // user code begin {2}
                // user code end
                handleException(ivjExc);
            }
  };
  return ivjPOAStatePanel;
    }
    private FillLevelBar _getQueueBar() {
  if (queueBar == null) {
            queueBar = getPOAStatePanel()._getQueuePanel()._getQueueBar();
  }
  return queueBar;
    }
    private Label _getRequestProcessingLabel() {
  if (requestProcessingLabel == null) {
            requestProcessingLabel = getPOAStatePanel()._getPolicyPanel()._getRequestProcessingLabel();
  }
  return requestProcessingLabel;
    }
    private Label _getServantRetentionLabel() {
  if (servantRetentionLabel == null) {
            servantRetentionLabel = getPOAStatePanel()._getPolicyPanel()._getServantRetentionLabel();
  }
  return servantRetentionLabel;
    }
    private Label _getStateLabel() {
  if (stateLabel == null) {
            stateLabel = getPOAStatePanel()._getStatePanel()._getStateLabel();
  }
  return stateLabel;
    }
    private Label _getThreadLabel() {
  if (threadLabel == null) {
            threadLabel = getPOAStatePanel()._getPolicyPanel()._getThreadLabel();
  }
  return threadLabel;
    }
    private FillLevelBar _getThreadPoolBar() {
  if (threadPoolBar == null) {
            threadPoolBar = getPOAStatePanel()._getTMPanel()._getThreadPoolBar();
  }
  return threadPoolBar;
    }
    /**
     * Called whenever the part throws an exception.
     * @param exception java.lang.Throwable
     */
    private void handleException(Throwable exception) {

  /* Uncomment the following lines to print uncaught exceptions to stdout */
  // System.out.println("--------- UNCAUGHT EXCEPTION ---------");
  // exception.printStackTrace(System.out);
    }
    public void _initActiveRequestsBar(int avg, int max) {
  _getActiveRequestsBar().init(0, avg, max, activeRequestsBarColor1, activeRequestsBarColor2, true, false);
    }
    public void _initAOMBar(int max, boolean isVariable) {
  _getAOMBar().init(0, 0, max, aomBarColor, null, false, isVariable);
    }
    /**
     * Initializes connections
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private void initConnections() {
  // user code begin {1}
  // user code end
  this.addWindowListener(this);
    }
    /**
     * Initialize the class.
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    private void initialize() {
  // user code begin {1}
  // user code end
  setName("POAFrame");
  setLayout(new java.awt.BorderLayout());
  setSize(698, 310);
  setTitle("POA Monitor");
  add(getContentsPane(), "Center");
  initConnections();
  // user code begin {2}
  getButtonPanel()._init(this, "Close");
  getPOAStatePanel()._getAOMPanel()._init(this);
  getPOAStatePanel()._getQueuePanel()._init(this);
  // user code end
    }
    public void _initQueueBar(int max, boolean isVariable) {
  _getQueueBar().init(0, 0, max, queueBarColor, null, false, isVariable);
    }
    public void _initThreadPoolBar(int max) {
  _getThreadPoolBar().init(0, 0, max, threadPoolBarColor, null, false, false);
    }
    public void _inspectRequest(String oidStr) {
  new MessageDialog(this, "Message", "This function is not yet implemented!").setVisible(true);
    }
    public void _inspectServantClass(String oidStr) {
  new MessageDialog(this, "Message", "This function is not yet implemented!").setVisible(true);
    }
    public POAFrame(POAMonitorController _controller) {
  super();
  controller = _controller;
  initialize();
    }
    /**
     * POAFrame constructor comment.
     * @param title java.lang.String
     */
    public POAFrame(String title) {
  super(title);
    }
    /**
     * main entrypoint - starts the part when it is run as an application
     * @param args java.lang.String[]
     */
    public static void main(java.lang.String[] args) {
  try {
            POAFrame aPOAFrame;
            aPOAFrame = new POAFrame();
            try {
                Class aCloserClass = Class.forName("com.ibm.uvm.abt.edit.WindowCloser");
                Class parmTypes[] = { java.awt.Window.class };
                Object parms[] = { aPOAFrame };
                java.lang.reflect.Constructor aCtor = aCloserClass.getConstructor(parmTypes);
                aCtor.newInstance(parms);
            } catch (java.lang.Throwable exc) {};
            aPOAFrame.setVisible(true);
  } catch (Throwable exception) {
            System.err.println("Exception occurred in main() of java.awt.Frame");
            exception.printStackTrace(System.out);
  }
    }
    public void _printMessage(String str) {
  getConsolePanel()._printMessage(str);
    }
    public void _removeRequest(String ridStr) {
  if (controller != null) {
            controller.actionRemoveRequestFromQueue(ridStr);
  }
    }
    public void _setMaxThreadPoolBar(int value) {
  _getThreadPoolBar().setMaxValue(value);
    }
    public void _setName(String str) {
  poaName = str;
  setTitle(poaName+" Monitor ("+_getStateLabel().getText()+")");
    }
    public void _setPolicyIdAssignment(String str) {
  _getIdAssignmentLabel().setText(" "+str);
    }
    public void _setPolicyIdUniqueness(String str) {
  _getIdUniquenessLabel().setText(" "+str);
    }
    public void _setPolicyImplicitActivation(String str) {
  _getImplicitActivationLabel().setText(" "+str);
    }
    public void _setPolicyLifespan(String str) {
  _getLifespanLabel().setText(" "+str);
    }
    public void _setPolicyRequestProcessing(String str) {
  _getRequestProcessingLabel().setText(" "+str);
    }
    public void _setPolicyServantRetention(String str) {
  _getServantRetentionLabel().setText(" "+str);
    }
    public void _setPolicyThread(String str) {
  _getThreadLabel().setText(" "+str);
    }
    public void _setState(String str) {
  _getStateLabel().setText(str);
  setTitle(poaName+" Monitor ("+str+")");
    }
    public void _setValueActiveRequestsBar(int value) {
  _getActiveRequestsBar().setCurrentValue(value);
    }
    public void _setValueAOMBar(int value) {
  _getAOMBar().setCurrentValue(value);
    }
    public void _setValueQueueBar(int value) {
  _getQueueBar().setCurrentValue(value);
    }
    public void _setValueThreadPoolBar(int value) {
  _getThreadPoolBar().setCurrentValue(value);
    }
    public void _setVisible(boolean visible) {
  setVisible(visible);
    }
    private void _showAOMDialog() {

  if (controller == null) return;

  StringPair[] data = controller.actionRetrieveAOMContent();

  DoubleListDialog showDialog = new DoubleListDialog(this, "Active Object Map Snapshot");
  showDialog._setHeaderLabel1("Object ID");
  showDialog._setHeaderLabel2("Servant Class");

  if (data != null) {

            ObjectListItem[] items = new ObjectListItem[data.length];
            String helpStr;
            int firstMax = 100;
            int secondMax = 100;
            int helpInt;
            for (int i=0; i<data.length; i++) {
                items[i] = new ObjectListItem();
                items[i]._init(this, data[i].first);
                helpStr = POAUtil.convert(data[i].first.getBytes());
                items[i]._getFirstLabel().setText(helpStr);
                items[i]._getSecondLabel().setText(data[i].second);

                helpInt = _fontMetrics1().stringWidth(items[i]._getFirstLabel().getText());
                if (helpInt > firstMax) firstMax = helpInt;

                helpInt = _fontMetrics1().stringWidth(items[i]._getSecondLabel().getText());
                if (helpInt > secondMax) secondMax = helpInt;
            }

            showDialog._setSize(firstMax+20, secondMax+20);

            for (int i=0; i<data.length; i++) {
                items[i]._setWidth(firstMax+20, secondMax+20);
                showDialog._addItem(items[i]);
            }
  }

  showDialog.setVisible(true);
    }
    private void _showQueueDialog() {
  if (controller == null) return;

  StringPair[] data = controller.actionRetrieveQueueContent();

  DoubleListDialog showDialog = new DoubleListDialog(this, "Queue Snapshot");
  showDialog._setHeaderLabel1("Request ID");
  showDialog._setHeaderLabel2("Object ID");

  if (data != null) {

            QueueListItem[] items = new QueueListItem[data.length];
            String helpStr;
            int firstMax = 100;
            int secondMax = 100;
            int helpInt;
            for (int i=0; i<data.length; i++) {
                items[i] = new QueueListItem();
                items[i]._init(this, data[i].first);
                items[i]._getFirstLabel().setText(data[i].first);
                helpStr = POAUtil.convert(data[i].second.getBytes());
                items[i]._getSecondLabel().setText(helpStr);

                helpInt = _fontMetrics1().stringWidth(items[i]._getFirstLabel().getText());
                if (helpInt > firstMax) firstMax = helpInt;

                helpInt = _fontMetrics1().stringWidth(items[i]._getSecondLabel().getText());
                if (helpInt > secondMax) secondMax = helpInt;
            }

            showDialog._setSize(firstMax+20, secondMax+20);

            for (int i=0; i<data.length; i++) {
                items[i]._setWidth(firstMax+20, secondMax+20);
                showDialog._addItem(items[i]);
            }
  }

  showDialog.setVisible(true);
    }
    /**
     * Constructor
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    public POAFrame() {
  super();
  initialize();
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    public void windowActivated(java.awt.event.WindowEvent e) {
  // user code begin {1}
  // user code end
  // user code begin {2}
  // user code end
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    public void windowClosed(java.awt.event.WindowEvent e) {
  // user code begin {1}
  // user code end
  // user code begin {2}
  // user code end
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    /* WARNING: THIS METHOD WILL BE REGENERATED. */
    public void windowClosing(java.awt.event.WindowEvent e) {
  // user code begin {1}
  // user code end
  if ((e.getSource() == this) ) {
            connEtoC1(e);
  }
  // user code begin {2}
  // user code end
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    public void windowDeactivated(java.awt.event.WindowEvent e) {
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    public void windowDeiconified(java.awt.event.WindowEvent e) {
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    public void windowIconified(java.awt.event.WindowEvent e) {
    }
    /**
     * Method to handle events for the WindowListener interface.
     * @param e java.awt.event.WindowEvent
     */
    public void windowOpened(java.awt.event.WindowEvent e) {
    }
}







TOP

Related Classes of org.jacorb.poa.gui.poa.POAFrame

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.