01: /*
02: * Copyright 2005-2007 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.php
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package mocks.elements;
18:
19: import java.io.Serializable;
20:
21: import org.jdom.Element;
22:
23: import edu.iu.uis.eden.WorkflowServiceErrorImpl;
24: import edu.iu.uis.eden.exception.InvalidXmlException;
25: import edu.iu.uis.eden.exception.ResourceUnavailableException;
26: import edu.iu.uis.eden.services.InconsistentDocElementStateException;
27:
28: /**
29: * <p>Title: IDocElemnt </p>
30: * <p>Description: Contract for all Element classes functionality </p>
31: * <p>Copyright: Copyright (c) 2002</p>
32: * <p>Company: Indiana University</p>
33: * @author Ryan Kirkendall
34: * @version revision
35: */
36: public interface IDocElement extends Serializable {
37: /**
38: * Get a String representation of the XML for this element.
39: *
40: * @return String of XML
41: */
42: public Element getXMLContent();
43:
44: /**
45: * Loads itself from the document represented in the xml Document. If
46: * allowBlank is set to true and the element pertaining to Objects XML Element can't
47: * be found nothing happens otherwise an InvalidXmlException is thrown
48: *
49: * @param element jdom Element holding content
50: * @param allowBlank boolean
51: * @throws InvalidXmlException
52: */
53: public void loadFromXMLContent(Element element, boolean allowBlank)
54: throws InvalidXmlException,
55: InconsistentDocElementStateException;
56:
57: /**
58: * validate that the Object is in a correct state to route as part of a complete
59: * document. In this instance is the chart empty. If so the Element is invalid.
60: * If the element is valid return null
61: *
62: * @return DocElementError representing error(s)
63: * @throws ResourceUnavailableException
64: */
65: public WorkflowServiceErrorImpl validate();
66:
67: /**
68: * name of the xml element representing the content represented by the object.
69: * Everybody got that?
70: *
71: * @return String name of element
72: */
73: public String getElementName();
74:
75: public boolean isEmpty();
76: }
77:
78: /*
79: * Copyright 2003 The Trustees of Indiana University. All rights reserved.
80: *
81: * This file is part of the EDEN software package.
82: * For license information, see the LICENSE file in the top level directory
83: * of the EDEN source distribution.
84: */
|