*/

public class URIEntry extends Form implements CommandListener

}

private static Command go =

new Command("Go", Command.SCREEN, 1);

private static Command exit =

new CommandCExit", Command. EXIT, 1);

private static URIEntry instance;

// URI, введенный пользователем, private TextField uri;

// Нить, контролирующая выполнение объекта

// ResourceDisplay. private Thread thread;

/**

Конструктор.

@param title заголовок Form.

*/

private URIEntry(String title)

}

super(title); instance = this;

uri = new TextField. ("Connect to: ",

null, 70,

TextField.URL); uri.setStringf'http://"); append (uri);

addCommand(go); addCommand(exit); setCommandListener(this);

}

/**

Выдает один экземпляр данного класса.

@возвращение экземпляра данного класса.

*/

public static URIEntry getlnstance ()

}

if (instance == null)

{

instance = new URIEntry("Enter URL");

}

return instance;

}

/**

Устанавливает этот объект в качестве текущего отображаемого объекта MID-лета.

*/

public void display()

MIDlet га = ConnectionDemo.getInstance();

Display.getDisplay(m). setCurrent(this);

}

public void commandAction(Command c, Displayable d)

}

if (c == go)

}

// Этот экран отображает метаинформацию ресурса,

// указанного с помощью URI.

ResourceDisplay view =

new ResourceDisplay(uri.getString());

MIDlet m = ConnectionDemo.getInstar.ee ();

Display.getDisplay(m). setCurrent(view);

thread = new Thread(view); thread.start();

}

else if (c == e\it)

}

ConnectionDemo.getlnstance(). quit();

}

}

}

Листинг 8.3. Класс ResourceDisplay определяет форму, которая отображает ресурс. Он использует объект helper для получения этого ресурса

import javdx.microedition.lcdui.Command;

import javax.microedition.Icdui.CommandListener;

import javax.microedition.Icdui.Form;

import javax.microedition.Icdui.Displayable;

/**

Данный класс задает Form, которая отображает метаинформацию, описывающую HTTP-ресурс. Она контролируется отдельной нитью, поэтому она реализует Runnable.

Этот объект Form использует объект helper для коммуникации с HTTP-ресурсом через Connection. Он затем забирает данные соединения из объекта helper для отображения на экране для пользователя.

public class ResourceDisplay extends Form

implements CommandListener, Runnable

{

private static Command back =

new Command("Back", Command.BACK, 1);

private static Displayable instance;

// Объект helper создает соединение с ресурсом на исходном

// сервере и извлекает метаинформацию ресурса.

// private HttpResource resource;

Конструктор

Sparam uri URI ресурса для извлечения по запросу HTTP протокола.

*/

public ResourceDisplay(String uri)

{

super("Http Info");

instance = this;

resource = new HttpResource(uri);

addCommand(back);

setCommandListener(this);

}

/**

Запускает выполнение данного объекта: запускает объект helper HttpResource.

@смотри. rtpResource

*/

public void run()

{

resource.run();

append(resource.getResourceMetalnfo());

}

/**

Перейти на страницу:

Похожие книги