X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.databoard%2Fsrc%2Forg%2Fsimantics%2Fdataboard%2Fadapter%2FAbstractAdapter.java;fp=bundles%2Forg.simantics.databoard%2Fsrc%2Forg%2Fsimantics%2Fdataboard%2Fadapter%2FAbstractAdapter.java;h=d0bb0085470f04acd8dbf6321f0733972291c0f0;hb=969bd23cab98a79ca9101af33334000879fb60c5;hp=0000000000000000000000000000000000000000;hpb=866dba5cd5a3929bbeae85991796acb212338a08;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.databoard/src/org/simantics/databoard/adapter/AbstractAdapter.java b/bundles/org.simantics.databoard/src/org/simantics/databoard/adapter/AbstractAdapter.java new file mode 100644 index 000000000..d0bb00854 --- /dev/null +++ b/bundles/org.simantics.databoard/src/org/simantics/databoard/adapter/AbstractAdapter.java @@ -0,0 +1,27 @@ +package org.simantics.databoard.adapter; + + +public abstract class AbstractAdapter implements Adapter { + + /** True if this adapter has to make type conversion (incl. sub-adapters) */ + boolean typeAdapter = false; + /** True if the adapter clones or creates a new instance (incl. all sub-adapters) */ + boolean clones = true; + + /** + * A back-reference to the adapter request for keeping adapters that are currently used + * from being unnecessarily purged from the cache. + */ + AdapterRequest request; + + public Object adaptUnchecked(Object obj) throws RuntimeAdaptException { + try { + return adapt(obj); + } catch (AdaptException e) { + throw new RuntimeAdaptException( e ); + } + } + + public void finalizeConstruction() {} + +} \ No newline at end of file