1 /*_############################################################################ 2 _## 3 _## SNMP4J - PDUFactory.java 4 _## 5 _## Copyright 2003-2007 Frank Fock and Jochen Katz (SNMP4J.org) 6 _## 7 _## Licensed under the Apache License, Version 2.0 (the "License"); 8 _## you may not use this file except in compliance with the License. 9 _## You may obtain a copy of the License at 10 _## 11 _## http://www.apache.org/licenses/LICENSE-2.0 12 _## 13 _## Unless required by applicable law or agreed to in writing, software 14 _## distributed under the License is distributed on an "AS IS" BASIS, 15 _## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 _## See the License for the specific language governing permissions and 17 _## limitations under the License. 18 _## 19 _##########################################################################*/ 20 21 22 23 package org.snmp4j.util; 24 25 import org.snmp4j.Target; 26 import org.snmp4j.PDU; 27 28 /** 29 * <code>PDUFactory</code> defines the interface for PDU factories. 30 * 31 * @author Frank Fock 32 * @version 1.0.2 33 * @since 1.0.2 34 */ 35 public interface PDUFactory { 36 37 /** 38 * Create a <code>PDU</code> instance for the supplied target. The created 39 * PDU has to be compliant to the SNMP version defined by the supplied target. 40 * For example, a SNMPv3 target requires a ScopedPDU instance. 41 * 42 * @param target 43 * the <code>Target</code> where the PDU to be created will be sent. 44 * @return PDU 45 * a PDU instance that is compatible with the supplied target. 46 */ 47 PDU createPDU(Target target); 48 49 } 50