1 /*------------------------------------------------------------------------------
2 * The contents of this file are subject to the Mozilla Public License Version
3 * 1.1 (the "License"); you may not use this file except in compliance with
4 * the License. You may obtain a copy of the License at
5 * http://www.mozilla.org/MPL/
6 * Software distributed under the License is distributed on an "AS IS" basis,
7 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
8 * the specific language governing rights and limitations under the License.
9 *
10 * The Original Code is levelonelabs.com code.
11 * The Initial Developer of the Original Code is Level One Labs. Portions
12 * created by the Initial Developer are Copyright (C) 2001 the Initial
13 * Developer. All Rights Reserved.
14 *
15 * Contributor(s):
16 * Scott Oster (ostersc@alum.rpi.edu)
17 * Steve Zingelwicz (sez@po.cwru.edu)
18 * William Gorman (willgorman@hotmail.com)
19 *
20 * Alternatively, the contents of this file may be used under the terms of
21 * either the GNU General Public License Version 2 or later (the "GPL"), or
22 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
23 * in which case the provisions of the GPL or the LGPL are applicable
24 * instead of those above. If you wish to allow use of your version of this
25 * file only under the terms of either the GPL or the LGPL, and not to allow
26 * others to use your version of this file under the terms of the NPL, indicate
27 * your decision by deleting the provisions above and replace them with the
28 * notice and other provisions required by the GPL or the LGPL. If you do not
29 * delete the provisions above, a recipient may use your version of this file
30 * under the terms of any one of the NPL, the GPL or the LGPL.
31 *----------------------------------------------------------------------------*/
32
33
34 package com.levelonelabs.aim;
35
36
37 import org.w3c.dom.Element;
38
39
40 /***
41 * Marks a Class as capable of being persisted to and from XML
42 *
43 * @author Scott Oster
44 */
45 public interface XMLizable {
46 /***
47 * Write current into the Element
48 *
49 * @param emptyStateElement DOM element to write to
50 */
51 public void writeState(Element emptyStateElement);
52
53
54 /***
55 * Read info from the Element
56 *
57 * @param fullStateElement DOM element to read from
58 */
59 public void readState(Element fullStateElement);
60 }