From f9cb128ed5c3ae638c7b8de76ea6d8f378405e88 Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Tue, 7 Feb 2006 17:50:18 +0000 Subject: [PATCH] Handle RolledbackException better (non-functional change) Added conversion from Enum types to String git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2315 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/repo/transaction/TransactionUtil.java | 9 +++++++++ .../repository/datatype/DefaultTypeConverter.java | 13 +++++++++++++ 2 files changed, 22 insertions(+) diff --git a/source/java/org/alfresco/repo/transaction/TransactionUtil.java b/source/java/org/alfresco/repo/transaction/TransactionUtil.java index e43a858907..a18ea58457 100644 --- a/source/java/org/alfresco/repo/transaction/TransactionUtil.java +++ b/source/java/org/alfresco/repo/transaction/TransactionUtil.java @@ -16,9 +16,11 @@ */ package org.alfresco.repo.transaction; +import javax.transaction.RollbackException; import javax.transaction.Status; import javax.transaction.UserTransaction; +import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.service.transaction.TransactionService; import org.alfresco.util.ParameterCheck; import org.apache.commons.logging.Log; @@ -137,6 +139,13 @@ public class TransactionUtil txn.commit(); } } + catch (RollbackException exception) + { + // commit failed + throw new AlfrescoRuntimeException( + "Unexpected rollback of exception: \n" + exception.getMessage(), + exception); + } catch (Throwable exception) { try diff --git a/source/java/org/alfresco/service/cmr/repository/datatype/DefaultTypeConverter.java b/source/java/org/alfresco/service/cmr/repository/datatype/DefaultTypeConverter.java index c6e6383a0f..4d47639484 100644 --- a/source/java/org/alfresco/service/cmr/repository/datatype/DefaultTypeConverter.java +++ b/source/java/org/alfresco/service/cmr/repository/datatype/DefaultTypeConverter.java @@ -235,6 +235,19 @@ public class DefaultTypeConverter }); + // + // From enum + // + + INSTANCE.addConverter(Enum.class, String.class, new TypeConverter.Converter() + { + public String convert(Enum source) + { + return source.toString(); + } + }); + + // // Number to Subtypes and Date //