KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > snmp4j > agent > SerializableManagedObject


1 /*_############################################################################
2   _##
3   _## SNMP4J-Agent - SerializableManagedObject.java
4   _##
5   _## Copyright (C) 2005-2007 Frank Fock (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 package org.snmp4j.agent;
23
24 import org.snmp4j.agent.io.MOInput;
25 import org.snmp4j.agent.io.MOOutput;
26 import java.io.IOException JavaDoc;
27 import org.snmp4j.smi.OID;
28
29 /**
30  * The <code>SerializableManagedObject</code> interface is implemented by
31  * <code>ManagedObject</code>s whose (data) content can be serialized
32  * using {@link MOInput} and {@link MOOutput}.
33  *
34  * @author Frank Fock
35  * @version 1.0
36  */

37 public interface SerializableManagedObject {
38
39   /**
40    * Gets the unique object ID of the managed object.
41    * @return
42    * an OID.
43    */

44   OID getID();
45
46   /**
47    * Loads the content of the managed object from the specified input (stream).
48    * @param input
49    * a <code>MOInput</code> instance.
50    * @throws IOException
51    */

52   void load(MOInput input) throws IOException JavaDoc;
53
54   /**
55    * Saves the (non-volatile) content of this managed object to the specified
56    * output (stream).
57    * @param output
58    * a <code>MOOutput</code> instance.
59    * @throws IOException
60    */

61   void save(MOOutput output) throws IOException JavaDoc;
62
63   /**
64    * Tests if this instance of a SerializableManagedObject should be
65    * serialized or deserialized through persistent storage
66    * load or save operation.
67    * @return
68    * <code>true</code> if {@link #load} and {@link #save} should not be
69    * called through a persistent storage operation and <code>false</code>
70    * if these method should be called.
71    */

72   boolean isVolatile();
73
74 }
75
Popular Tags