import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.File;
import com.ibm.eNetwork.HOD.customizable.*;
import com.ibm.eNetwork.beans.HOD.*;
public class Sample1 extends JFrame {
JMenuBar menuBar = new JMenuBar();
CustomDesktop desktop = null;
HODDisplaySession session = null;
public static void main(String[] args)
{
new Sample1().run();
}
private Sample1()
{
}
void run()
{
HODSessionManager sm = new HODSessionManager();
/*
* For this sample, we are assuming files created by the Deployment Wizard
* are in c:\MyApplication\demo\HODData\sample1 directory
*
* Therefore, I need to create a File object to c:\MyApplication\demo directory.
*/
try {
File file = new File("c:\\MyApplication\\demo");
desktop = sm.createCustomDesktop(this, file, "sample1");
} catch (Exception e) { }
buildMenus();
setJMenuBar(menuBar);
if (desktop != null) createTerminal();
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we) {
myExit();
}
});
Toolkit toolkit = this.getToolkit();
Dimension screenSize = toolkit.getScreenSize();
this.setSize(screenSize.width*2/3, screenSize.height*2/3);
this.setLocation( (screenSize.width-getWidth()) / 2, (screenSize.height-getHeight()) / 2 );
show();
}
void buildMenus()
{
JMenu menu = new JMenu("File");
JMenuItem menuItem = new JMenuItem("Exit");
menu.add(menuItem);
menuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
myExit();
}
});
menuBar.add(menu);
}
void createTerminal()
{
try {
session = desktop.startDisplaySession("3270 Display");
if (session != null) {
this.getContentPane().add(session.getTerminal());
JMenu menu = new JMenu("HOD Session");
menuBar.add(menu);
JMenuBar hodMenuBar = session.getHODMenubar();
MenuElement[] menuElements = hodMenuBar.getSubElements();
int count = hodMenuBar.getMenuCount();
for (int i = 0; i < menuElements.length; i++) {
menu.add((JMenu)menuElements[i]);
}
}
} catch (Exception e) {
}
}
void myExit()
{
if (desktop != null) {
desktop.closeAllSessions();
}
System.exit(0);
}
}
The following explains each statement or group of statements used in this sample program. Only those statements that involve the Programmable Host On-Demand API are explained.
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.File; import com.ibm.eNetwork.HOD.customizable.*; import com.ibm.eNetwork.beans.HOD.*;
public class Sample extends JFrame {
JMenuBar menuBar = new JMenuBar();
CustomDesktop desktop = null;
HODDisplaySession session = null;
HODSessionManager sm = new HODSessionManager();
/*
* For this sample, we are assuming files created by the Deployment Wizard
* are in c:\MyApplication\demo\HODData\sample1 directory
*
* Therefore, I need to create a File object to c:\MyApplication\demo directory
* and when I create the CustomDesktop object, I pass in "sample1" to tell the
* API to look in the "sample1" directory under HODData.
*/
try {
File file = new File("c:\\MyApplication\\demo");
desktop = sm.createCustomDesktop(this, file, "sample1");
} catch (Exception e) { }
void createTerminal()
{
try {
session = desktop.startDisplaySession("3270 Display");
if (session != null) {
this.getContentPane().add(session.getTerminal());
JMenu menu = new JMenu("HOD Session");
menuBar.add(menu);
JMenuBar hodMenuBar = session.getHODMenubar();
MenuElement[] menuElements = hodMenuBar.getSubElements();
int count = hodMenuBar.getMenuCount();
for (int i = 0; i < menuElements.length; i++) {
menu.add((JMenu)menuElements[i]);
}
}
} catch (Exception e) {}
}
To run Sample1, save the sample program in a file called Sample1.java and compile it. You can run the the application by executing the following command:
java -classpath .;hoddbg2.jar;hacp.jar;ha_en.jar;hodimg.jar Sample1
[ Top of Page | Previous Page | Next Page | Table of Contents ]