Java 2 Micro Edition (J2ME)




Соединения coкeтa - часть 8


Thread thread = new Thread (agent);

} catch (lOException ioe)

( System.out.printlnfioe.getMessage!));

ioe.printStackTrace(); break;

)

}

}

}

Листинг 8.7. Агент сервера является объектом, который взаимодействует с клиентом независимо от демона сервера. Он запускает свою собственную нить, позволяя другим экземплярам одновременно взаимодействовать со своими клиентами

import javax .microedition. io._StreamConnectior.;

/**

Данный класс определяет компоненту, которую сервер

создает для взаимодействия с клиентом.

Он действует как «агент» от имени сервера для того, чтобы сервер

был свободен для прослушивания только новых запросов соединения.

Экземпляры данного класса являются частью сервера.

*/

public class ServerAgent implements Runnable

private StreamConnection conn;

/**

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

@param с Объект соединения, который представляет

соединение с клиентом. Класс ServerSocket создает и пересылает

его в данный конструктор.

*/

public ServerAgent(StreamConnection c)

super (); conn = с;

}

/**

Выполняется агент данного сервера. Начинается диалог с клиентом. Этот метод должен быть вызван явно после того, как создан данный объект.

public void run()

}

// Взаимодействует с клиентом. Реализует поведение,

// которое определяет данную службу.

}

}

Листинг 8.8. Клиент имеет отдельно соединение с агентом сервера. Модель состояния взаимодействий, а также синтаксис и семантика взаимодействий определяются сервером, но клиенты должны им подчиняться

import javax.microedition.midlet.MI Diet;

import javax.microedition.io.StreamConnection;

import javax.microedition.io.Connector;

import Java.io.lOException;

/**

Данный класс реализует клиента, который соединяется с сервером.

Для создания экземпляра данного класса вы должны указать сервер

(имя сервера DNS) и известный порт службы, с которой вы хотите

установить соединение.

*/

public class ClientSocket implements Runnable

{

public static final String P.ROTOCOL = "socket";

/'/ Порт известного сокета сервера, private String serverPort;




Содержание  Назад  Вперед