X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.db.common%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fcommon%2FMetadataUtils.java;h=b052e54cba401ff4d36c48ff9c4e3bd9660e4a73;hb=25e3207c8a1aad3cbe72202750f67f0483ccb1a2;hp=30e21ff52ea6a00b101cefcea6848ee3cf279dfe;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.db.common/src/org/simantics/db/common/MetadataUtils.java b/bundles/org.simantics.db.common/src/org/simantics/db/common/MetadataUtils.java index 30e21ff52..b052e54cb 100644 --- a/bundles/org.simantics.db.common/src/org/simantics/db/common/MetadataUtils.java +++ b/bundles/org.simantics.db.common/src/org/simantics/db/common/MetadataUtils.java @@ -1,44 +1,44 @@ -package org.simantics.db.common; - -import java.lang.reflect.Method; -import java.util.Map; - -import org.simantics.db.Metadata; -import org.simantics.db.Session; -import org.simantics.db.common.utils.Logger; -import org.simantics.db.exception.ServiceException; - -public class MetadataUtils { - - private static final boolean TRACE_METADATA_SERIALIZATION = false; - - public static boolean hasMetadata(Map metadata, Class clazz) { - return metadata.containsKey(clazz.getName()); - } - - @SuppressWarnings("unchecked") - public static T getMetadata(Session session, Map metadata, Class clazz) throws ServiceException { - byte[] data = metadata.get(clazz.getName()); - if (TRACE_METADATA_SERIALIZATION) { - if (data != null) - System.out.println("deserializing " + data.length + " bytes of metadata into " + clazz); - } - Method m; - try { - m = clazz.getMethod("deserialise", Session.class, byte[].class); - return (T) m.invoke(null, session, data); - } catch (Exception e) { - e.printStackTrace(); - Logger.defaultLogError(e.toString()); - } - return null; - } - - public static void addMetadata(Session session, Map metadata, Metadata data) throws ServiceException { - byte[] blob = data.serialise(session); - if (TRACE_METADATA_SERIALIZATION) - System.out.println("serialized " + blob.length + " bytes of metadata into for " + data.getClass()); - metadata.put(data.getClass().getName(), blob); - } - -} +package org.simantics.db.common; + +import java.lang.reflect.Method; +import java.util.Map; + +import org.simantics.db.Metadata; +import org.simantics.db.Session; +import org.simantics.db.common.utils.Logger; +import org.simantics.db.exception.ServiceException; + +public class MetadataUtils { + + private static final boolean TRACE_METADATA_SERIALIZATION = false; + + public static boolean hasMetadata(Map metadata, Class clazz) { + return metadata.containsKey(clazz.getName()); + } + + @SuppressWarnings("unchecked") + public static T getMetadata(Session session, Map metadata, Class clazz) throws ServiceException { + byte[] data = metadata.get(clazz.getName()); + if (TRACE_METADATA_SERIALIZATION) { + if (data != null) + System.out.println("deserializing " + data.length + " bytes of metadata into " + clazz); + } + Method m; + try { + m = clazz.getMethod("deserialise", Session.class, byte[].class); + return (T) m.invoke(null, session, data); + } catch (Exception e) { + e.printStackTrace(); + Logger.defaultLogError(e.toString()); + } + return null; + } + + public static void addMetadata(Session session, Map metadata, Metadata data) throws ServiceException { + byte[] blob = data.serialise(session); + if (TRACE_METADATA_SERIALIZATION) + System.out.println("serialized " + blob.length + " bytes of metadata into for " + data.getClass()); + metadata.put(data.getClass().getName(), blob); + } + +}