7 import org.slf4j.Logger;
8 import org.slf4j.LoggerFactory;
9 import org.umu.cops.prpdp.COPSPdpAgent;
10 import org.umu.cops.prpdp.COPSPdpConnection;
11 import org.umu.cops.prpdp.COPSPdpException;
12 import org.umu.cops.stack.COPSHandle;
14 import java.net.Socket;
17 * Core PDP agent for provisioning
19 public class PCMMPdpAgent extends COPSPdpAgent {
21 private static final Logger logger = LoggerFactory.getLogger(PCMMPdpAgent.class);
23 /** Well-known port for PCMM */
24 public static final int WELL_KNOWN_PDP_PORT = 3918;
27 * Policy data processing object
29 private final PCMMPdpDataProcess _thisProcess;
34 * @param clientType - COPS Client-type
35 * @param psHost - Host to connect to
36 * @param psPort - Port to connect to
37 * @param process - Object to perform policy data processing
39 public PCMMPdpAgent(final String psHost, final int psPort, final short clientType,
40 final PCMMPdpDataProcess process) {
41 super(psHost, psPort, clientType, process);
42 _thisProcess = process;
46 protected COPSPdpConnection setputPdpConnection(final Socket conn, final COPSHandle handle) {
47 logger.debug("PDPCOPSConnection");
48 final PCMMPdpConnection pdpConn = new PCMMPdpConnection(_pepId, conn, _thisProcess, _kaTimer, _acctTimer);
49 final PCMMPdpReqStateMan man = new PCMMPdpReqStateMan(_clientType, handle, _thisProcess);
50 pdpConn.addStateMan(handle, man);
52 man.initRequestState(conn);
53 } catch (COPSPdpException unae) {
54 logger.error("Unexpected error initializing state", unae);
56 // XXX - End handleRequestMsg
58 logger.info("Starting PDP connection thread to - " + _host);