org.faktorips.runtime.ITable Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of faktorips-runtime Show documentation
Show all versions of faktorips-runtime Show documentation
Runtime library for Faktor-IPS.
When using the JAXB support use either faktorips-runtime-jakarta-xml or faktorips-runtime-javax-xml as dependency.
When using CSV to read tables, add the optional dependencies to opencsv, commons-lang3 and commons-text.
If you want to run Faktor-IPS tests as JUnit tests, you need to provide either junit (JUnit 4) or junit-jupiter-api (JUnit 5).
/*******************************************************************************
* Copyright (c) Faktor Zehn GmbH - faktorzehn.org
*
* This source code is available under the terms of the AGPL Affero General Public License version
* 3.
*
* Please see LICENSE.txt for full license terms, including the additional permissions and
* restrictions as well as the possibility of alternative license terms.
*******************************************************************************/
package org.faktorips.runtime;
import java.util.List;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
/**
* Base interface for table contents
*
* @param the class representing a row of this table
*/
public interface ITable {
String TAG_NAME = "TableContents";
/**
* Returns the qualified name of this table.
*/
String getName();
/**
* Returns all rows of this table.
*/
List getAllRows();
/**
* Creates an XML {@link Element} that represents this table's data.
*
* Throws an {@link UnsupportedOperationException} if the support for toXml ("Generate toXml
* Support") is not activated in the Faktor-IPS standard builder.
*
* @param document a document, that can be used to create XML elements.
*/
Element toXml(Document document);
}