001: /*
002: * The contents of this file are subject to the terms of the Common Development
003: * and Distribution License (the License). You may not use this file except in
004: * compliance with the License.
005: *
006: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
007: * or http://www.netbeans.org/cddl.txt.
008: *
009: * When distributing Covered Code, include this CDDL Header Notice in each file
010: * and include the License file at http://www.netbeans.org/cddl.txt.
011: * If applicable, add the following below the CDDL Header, with the fields
012: * enclosed by brackets [] replaced by your own identifying information:
013: * "Portions Copyrighted [year] [name of copyright owner]"
014: *
015: * The Original Software is NetBeans. The Initial Developer of the Original
016: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
017: * Microsystems, Inc. All Rights Reserved.
018: */
019:
020: package org.netbeans.modules.soa.mapper.common.basicmapper.methoid;
021:
022: import java.util.List;
023:
024: import javax.swing.Icon;
025:
026: /**
027: * <p>
028: *
029: * Title: IMetoid </p> <p>
030: *
031: * Description: Generic interface describes the functionalities of a Methoid.
032: * IMethoid is the base interface holding the meta data for IMethoidNode to be
033: * constructed and added to the mapper model. </p> <p>
034: *
035: * Copyright: Copyright (c) 2002 </p> <p>
036: *
037: * Company: </p>
038: *
039: * @author Un Seng Leong
040: * @created December 4, 2002
041: * @version 1.0
042: */
043: public interface IMethoid {
044:
045: /**
046: * Return the icon repersents this methoid.
047: *
048: * @return the icon repersents this methoid.
049: */
050: public Icon getIcon();
051:
052: /**
053: * Return the name of this methoid.
054: *
055: * @return the name of this methoid.
056: */
057: public String getName();
058:
059: /**
060: * Return the text of this tooltip.
061: *
062: * @return the text of this tooltip.
063: */
064: public String getToolTipText();
065:
066: /**
067: * Return the data object of this methoid.
068: *
069: * @return the data object of this methoid.
070: */
071: public Object getData();
072:
073: /**
074: * Return the methoid field repersents the name space of this methoid.
075: *
076: * @return the methoid field repersents the name space of this methoid.
077: */
078: public IField getNamespace();
079:
080: /**
081: * Return the input fields of this methoid.
082: *
083: * @return the input fields of this methoid.
084: */
085: public List getInput();
086:
087: /**
088: * Return the output fields of this methoid.
089: *
090: * @return the output fields of this methoid.
091: */
092: public List getOutput();
093:
094: /**
095: * Return whether this methoid's input fields can increase dynamically.
096: *
097: * @return true if the methoid input can grow
098: */
099: public boolean isAccumulative();
100:
101: /**
102: * Return whether this methoid represents a single literal value.
103: *
104: * @return true if the methoid is a literal methoid
105: */
106: public boolean isLiteral();
107:
108: public void setIcon(Icon icon);
109:
110: public void setName(String name);
111:
112: public void setToolTipText(String text);
113:
114: public void setData(Object data);
115: }
|