01: /*******************************************************************************
02: * Copyright (c) 2006 IBM Corporation and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * IBM Corporation - initial API and implementation
10: *******************************************************************************/package org.eclipse.pde.internal.core.icheatsheet.comp;
11:
12: import java.io.Serializable;
13: import java.util.List;
14:
15: import org.eclipse.pde.core.IWritable;
16: import org.w3c.dom.Element;
17:
18: /**
19: * ICompCSObject
20: *
21: */
22: public interface ICompCSObject extends Serializable, IWritable,
23: ICompCSConstants {
24:
25: /**
26: * @return
27: */
28: ICompCSModel getModel();
29:
30: /**
31: * @param model
32: */
33: void setModel(ICompCSModel model);
34:
35: /**
36: * @return
37: */
38: ICompCS getCompCS();
39:
40: /**
41: * @param element
42: */
43: void parse(Element element);
44:
45: /**
46: *
47: */
48: public void reset();
49:
50: /**
51: * To avoid using instanceof all over the place
52: * @return
53: */
54: public int getType();
55:
56: /**
57: * For the label provider
58: * @return
59: */
60: public String getName();
61:
62: /**
63: * For the content provider
64: * @return A empty / non-empty list - never null
65: */
66: public List getChildren();
67:
68: /**
69: * @return
70: */
71: public ICompCSObject getParent();
72:
73: /**
74: * @return
75: */
76: public String getElement();
77:
78: }
|