|
What this is
Other links
The source codepackage com.ice.syslogd; import com.ice.syslog.SyslogDefs; import com.ice.util.UserProperties; import com.ice.util.AWTUtilities; import com.ice.widget.BorderPanel; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.util.*; public class StdDisplayFrame extends Frame implements ActionListener, ItemListener, SyslogDisplayInterface, WindowListener { public static final String RCS_ID = "$Id: StdDisplayFrame.java,v 1.1.1.1 1998/02/22 05:47:54 time Exp $"; public static final String RCS_REV = "$Revision: 1.1.1.1 $"; public static final String RCS_NAME = "$Name: $"; private static final String DEFAULT_FIELD_LIST = "TFPHNIM"; protected Vector logBuffer; protected int logBufferSize; protected MenuBar mBar; protected Menu mFile; protected List msgList; protected String fieldList; protected boolean showFacility; protected boolean showPriority; protected boolean showTimestamp; protected boolean showHostname; protected boolean showProcessName; protected boolean showProcessId; protected boolean showMessage; protected CheckboxMenuItem menuItemF; protected CheckboxMenuItem menuItemP; protected CheckboxMenuItem menuItemT; protected CheckboxMenuItem menuItemH; protected CheckboxMenuItem menuItemN; protected CheckboxMenuItem menuItemI; protected CheckboxMenuItem menuItemM; public StdDisplayFrame() { super(); this.logBufferSize = 0; this.logBuffer = null; this.showFacility = true; this.showPriority = true; this.showTimestamp = true; this.showHostname = true; this.showProcessName = true; this.showProcessId = true; this.showMessage = true; this.fieldList = StdDisplayFrame.DEFAULT_FIELD_LIST; } public void itemStateChanged( ItemEvent event ) { boolean redisplay = false; if ( event.getItemSelectable() == this.menuItemM ) { redisplay = true; this.showMessage = this.menuItemM.getState(); } else if ( event.getItemSelectable() == this.menuItemF ) { redisplay = true; this.showFacility = this.menuItemF.getState(); } else if ( event.getItemSelectable() == this.menuItemP ) { redisplay = true; this.showPriority = this.menuItemP.getState(); } else if ( event.getItemSelectable() == this.menuItemT ) { redisplay = true; this.showTimestamp = this.menuItemT.getState(); } else if ( event.getItemSelectable() == this.menuItemN ) { redisplay = true; this.showProcessName = this.menuItemN.getState(); } else if ( event.getItemSelectable() == this.menuItemI ) { redisplay = true; this.showProcessId = this.menuItemI.getState(); } else if ( event.getItemSelectable() == this.menuItemH ) { redisplay = true; this.showHostname = this.menuItemH.getState(); } if ( redisplay ) { this.redisplayList(); } } public void redisplayList() { this.msgList.setVisible( false ); this.msgList.removeAll(); int size = this.logBuffer.size(); for ( int i = 0 ; i < size ; ++i ) { String itemStr = this.getLogMessage( i ); this.msgList.addItem( itemStr, i ); } this.msgList.setVisible( true ); } public void actionPerformed( ActionEvent event ) { String command = event.getActionCommand(); if ( command.equals( "HIDE" ) ) { this.hideDisplay(); } } private void establishMenuBar() { MenuItem mItem; this.mBar = new MenuBar(); this.mFile = new Menu( "File", true ); this.mBar.add( this.mFile ); mItem = new MenuItem( "Hide Display" ); mItem.setActionCommand( "HIDE" ); mItem.addActionListener( this ); this.mFile.add( mItem ); this.addAdditionalMenus( mBar ); this.setMenuBar( this.mBar ); } public void addAdditionalMenus( MenuBar menuBar ) { CheckboxMenuItem mItem; Menu methodMenu = new Menu( "Fields", true ); this.mBar.add( methodMenu ); this.fieldList = fieldList; int len = fieldList.length(); for ( int fIdx = 0 ; fIdx < len ; ++fIdx ) { mItem = null; char ch = this.fieldList.charAt( fIdx ); switch ( ch ) { case 'F': case 'f': mItem = new CheckboxMenuItem( "Facility" ); mItem.setActionCommand( "FAC" ); this.menuItemF = mItem; break; case 'P': case 'p': mItem = new CheckboxMenuItem( "Priority" ); mItem.setActionCommand( "PRI" ); this.menuItemP = mItem; break; case 'T': case 't': mItem = new CheckboxMenuItem( "Timestamp" ); mItem.setActionCommand( "STAMP" ); this.menuItemT = mItem; break; case 'H': case 'h': mItem = new CheckboxMenuItem( "Hostname" ); mItem.setActionCommand( "HOST" ); this.menuItemH = mItem; break; case 'N': case 'n': mItem = new CheckboxMenuItem( "ProcessName" ); mItem.setActionCommand( "NAME" ); this.menuItemN = mItem; break; case 'I': case 'i': mItem = new CheckboxMenuItem( "ProcessID" ); mItem.setActionCommand( "ID" ); this.menuItemI = mItem; break; case 'M': case 'm': mItem = new CheckboxMenuItem( "Message" ); mItem.setActionCommand( "MSG" ); this.menuItemM = mItem; break; } if ( mItem != null ) { mItem.setState( Character.isUpperCase( ch ) ); mItem.addItemListener( this ); methodMenu.add( mItem ); } } } public void setFieldList( String fieldList ) { if ( fieldList == null || fieldList.equals( "*" ) ) this.fieldList = StdDisplayFrame.DEFAULT_FIELD_LIST; else this.fieldList = fieldList; int len = fieldList.length(); for ( int fIdx = 0 ; fIdx < len ; ++fIdx ) { char ch = this.fieldList.charAt( fIdx ); switch ( ch ) { case 'F': case 'f': this.showFacility = Character.isUpperCase( ch ); break; case 'P': case 'p': this.showPriority = Character.isUpperCase( ch ); break; case 'T': case 't': this.showTimestamp = Character.isUpperCase( ch ); break; case 'H': case 'h': this.showHostname = Character.isUpperCase( ch ); break; case 'N': case 'n': this.showProcessName = Character.isUpperCase( ch ); break; case 'I': case 'i': this.showProcessId = Character.isUpperCase( ch ); break; case 'M': case 'm': this.showMessage = Character.isUpperCase( ch ); break; } } } public void openDisplay( String title, int bufLength, int x, int y, int w, int h, String[] parameters ) { this.logBufferSize = bufLength; this.logBuffer = new Vector( this.logBufferSize ); if ( parameters != null && parameters.length > 0 ) this.setFieldList( parameters[0] ); this.setTitle( title ); this.establishMenuBar(); this.setMenuBar( this.mBar ); this.establishMenuBar(); this.establishContents(); if ( parameters != null && parameters.length > 2 ) { Font listFont = com.ice.util.AWTUtilities.getFont( parameters[2] ); if ( listFont != null ) { this.msgList.setFont( listFont ); } } this.setLocation( x, y ); this.setSize( w, h ); if ( parameters != null ) { if ( parameters.length < 2 ) { this.show(); } else if ( parameters[1].equalsIgnoreCase( "visible" ) ) { this.show(); } } this.addWindowListener( this ); } public void closeDisplay() { this.dispose(); } public void bringToFront() { this.show(); this.toFront(); } public void sendToBack() { this.show(); this.toBack(); } public void hideDisplay() { this.setVisible( false ); } public void showDisplay() { this.setVisible( true ); } public void restart() { } private String getLogMessage( int index ) { SyslogMessage logMsg = (SyslogMessage) this.logBuffer.elementAt( index ); if ( logMsg != null ) { StringBuffer buf = new StringBuffer(); int length = this.fieldList.length(); for ( int fIdx = 0 ; fIdx < length ; ++fIdx ) { String seper = ""; char ch = this.fieldList.charAt( fIdx ); switch ( ch ) { case 'F': case 'f': if ( this.showFacility ) { seper = " "; buf.append( SyslogDefs.getFacilityName ( logMsg.facility ) ); } break; case 'P': case 'p': if ( this.showPriority ) { seper = " "; buf.append( SyslogDefs.getPriorityName ( logMsg.priority ) ); } break; case 'H': case 'h': if ( this.showHostname ) { seper = " "; buf.append( logMsg.hostName ); } break; case 'M': case 'm': if ( this.showMessage ) { seper = " "; buf.append( logMsg.message ); } break; case 'N': case 'n': if ( this.showProcessName ) { seper = " "; buf.append( logMsg.processName ); } break; case 'I': case 'i': if ( this.showProcessId ) { seper = " "; buf.append( "[" ); buf.append( logMsg.processId ); buf.append( "]" ); } break; case 'T': case 't': if ( this.showTimestamp ) { seper = " "; buf.append( logMsg.timestamp ); } break; } buf.append( seper ); } return buf.toString(); } else { return "ERROR null logMsg at '" + index + "'"; } } public void processMessage( SyslogMessage logMsg ) { this.logBuffer.insertElementAt( logMsg, 0 ); String itemStr = this.getLogMessage( 0 ); this.msgList.addItem( itemStr, 0 ); if ( this.logBuffer.size() > this.logBufferSize ) { this.logBuffer.removeElementAt ( this.logBuffer.size() - 1 ); } if ( this.msgList.getItemCount() > this.logBufferSize ) { this.msgList.delItem ( this.msgList.getItemCount() - 1 ); } } public void windowOpened(WindowEvent e) { } public void windowClosing(WindowEvent e) { this.hideDisplay(); } public void windowClosed(WindowEvent e) { } public void windowActivated(WindowEvent e) { } public void windowDeactivated(WindowEvent e) { } public void windowIconified(WindowEvent e) { } public void windowDeiconified(WindowEvent e) { } public void establishContents() { int row; Label lbl; Panel pan; int cols, rows; String title; Color backColor = UserProperties.getColor( "stdDisplayWindow.bg", new Color( 200, 215, 250 ) ); this.setBackground( backColor ); Font textFont = UserProperties.getFont( "stdDisplayWindow.text.font", new Font( "Serif", Font.PLAIN, 14 ) ); Font labelFont = UserProperties.getFont( "stdDisplayWindow.labels.font", new Font( "Serif", Font.BOLD, 14 ) ); Font listFont = UserProperties.getFont( "stdDisplayWindow.list.font", new Font( "Serif", Font.PLAIN, 14 ) ); this.setLayout( new GridBagLayout() ); pan = new BorderPanel( 5, 2, 2, BorderPanel.RIDGE ); pan.setLayout( new GridBagLayout() ); AWTUtilities.constrain( this, pan, GridBagConstraints.BOTH, GridBagConstraints.CENTER, 0, 0, 1, 1, 1.0, 1.0 ); this.msgList = new List(); this.msgList.setFont( listFont ); AWTUtilities.constrain( pan, this.msgList, GridBagConstraints.BOTH, GridBagConstraints.CENTER, 0, 0, 1, 1, 1.0, 1.0 ); } } |
... 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.