X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.layer0.utils%2Fsrc%2Forg%2Fsimantics%2Flayer0%2Futils%2Frepresentation%2FStringRepresentation2.java;fp=bundles%2Forg.simantics.layer0.utils%2Fsrc%2Forg%2Fsimantics%2Flayer0%2Futils%2Frepresentation%2FStringRepresentation2.java;h=438c2d9c2ef0b3564121449339e4d4815e4e60a3;hp=0000000000000000000000000000000000000000;hb=969bd23cab98a79ca9101af33334000879fb60c5;hpb=866dba5cd5a3929bbeae85991796acb212338a08 diff --git a/bundles/org.simantics.layer0.utils/src/org/simantics/layer0/utils/representation/StringRepresentation2.java b/bundles/org.simantics.layer0.utils/src/org/simantics/layer0/utils/representation/StringRepresentation2.java new file mode 100644 index 000000000..438c2d9c2 --- /dev/null +++ b/bundles/org.simantics.layer0.utils/src/org/simantics/layer0/utils/representation/StringRepresentation2.java @@ -0,0 +1,57 @@ +/******************************************************************************* + * Copyright (c) 2007, 2010 Association for Decentralized Information Management + * in Industry THTH ry. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * VTT Technical Research Centre of Finland - initial API and implementation + *******************************************************************************/ +package org.simantics.layer0.utils.representation; + +import org.simantics.db.ReadGraph; +import org.simantics.db.exception.DatabaseException; + +/** + * An interface for fetching string representations for a resource. Also + * supports handling of vector-valued resources. + * + * @author Tuukka Lehtonen + */ +public interface StringRepresentation2 { + + /** + * @return a string representation of the underlying resource + */ + String get(ReadGraph g) throws DatabaseException; + + /** + * If the underlying resource contains a value, this method can be used + * retrieve its array size. + * + * @return -1 if there is no value, >= 0 otherwise. + */ + int getArraySize(ReadGraph g) throws DatabaseException; + + /** + * If the underlying resource contains a value, this method can be used to + * get a string representation of one of its indices. + * + * @param index + * @return + */ + String get(ReadGraph g, int index) throws DatabaseException; + + /** + * If the underlying resource contains a value, this method can be used to + * get a string representation of the specified sequential range of indices. + * + * @param start + * @param size + * @return + */ + String get(ReadGraph g, int start, int size) throws DatabaseException; + +}