X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Flocalizer%2Fbasic%2FMirBasicDataModelLocalizer.java;h=a0dc143f082d77513a11631c19cf70536837caed;hb=88455349028d7ecd46fe04ff8662b584c54c6143;hp=500f62ae0f29ff8757fe68263e51e36c4e5f1a7c;hpb=b1e3d8e04d556e10831192d6dfed20e5cd871fd4;p=mir.git diff --git a/source/mircoders/localizer/basic/MirBasicDataModelLocalizer.java b/source/mircoders/localizer/basic/MirBasicDataModelLocalizer.java index 500f62ae..a0dc143f 100755 --- a/source/mircoders/localizer/basic/MirBasicDataModelLocalizer.java +++ b/source/mircoders/localizer/basic/MirBasicDataModelLocalizer.java @@ -53,9 +53,9 @@ import mircoders.localizer.MirDataModelLocalizer; import mircoders.localizer.MirLocalizerExc; import mircoders.localizer.MirLocalizerFailure; import mircoders.media.MediaHelper; +import mircoders.module.ModuleCommentStatus; import mircoders.module.ModuleContent; import mircoders.module.ModuleLanguage; -import mircoders.module.ModuleCommentStatus; import mircoders.storage.*; import multex.Failure; @@ -120,7 +120,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { anEntityAdapterDefinition.addCalculatedField("operations", new EntityToSimpleOperationsField(MirGlobal.localizer().adminInterface().simpleArticleOperations())); - + anEntityAdapterDefinition.addCalculatedField("languagename", new ContentToLanguageNameField()); anEntityAdapterDefinition.addCalculatedField("is_original", new ContentIsOriginalField()); @@ -219,27 +219,27 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { definition = new EntityAdapterDefinition(); definition.addCalculatedField("mediafolder", new ToOneRelationField("to_media_folder", "mediaFolder", "id")); - definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("value")); + definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("size")); definition.addDBDateField("creationdate", "webdb_create", configuration.getString("Mir.DefaultTimezone")); definition.addCalculatedField("info", new MediaToMediaInfoField()); result.addMapping( "uploadedMedia", DatabaseUploadedMedia.getInstance(), definition); definition = new EntityAdapterDefinition(); definition.addCalculatedField("mediafolder", new ToOneRelationField("to_media_folder", "mediaFolder", "id")); - definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("value")); + definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("size")); definition.addDBDateField("creationdate", "webdb_create", configuration.getString("Mir.DefaultTimezone")); definition.addCalculatedField("info", new MediaToMediaInfoField()); definition.addCalculatedField("big_icon", new MediaToBigIconField()); result.addMapping( "image", DatabaseImages.getInstance(), definition); definition = new EntityAdapterDefinition(); definition.addCalculatedField("mediafolder", new ToOneRelationField("to_media_folder", "mediaFolder", "id")); - definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("value")); + definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("size")); definition.addDBDateField("creationdate", "webdb_create", configuration.getString("Mir.DefaultTimezone")); definition.addCalculatedField("info", new MediaToMediaInfoField()); definition.addCalculatedField("big_icon", new MediaToBigIconField()); result.addMapping( "audio", DatabaseAudio.getInstance(), definition); definition = new EntityAdapterDefinition(); definition.addCalculatedField("mediafolder", new ToOneRelationField("to_media_folder", "mediaFolder", "id")); - definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("value")); + definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("size")); definition.addDBDateField("creationdate", "webdb_create", configuration.getString("Mir.DefaultTimezone")); definition.addCalculatedField("info", new MediaToMediaInfoField()); definition.addCalculatedField("big_icon", new MediaToBigIconField()); @@ -247,7 +247,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { definition = new EntityAdapterDefinition(); definition.addCalculatedField("mediafolder", new ToOneRelationField("to_media_folder", "mediaFolder", "id")); - definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("value")); + definition.addCalculatedField("human_readable_size", new HumanReadableSizeField("size")); definition.addDBDateField("creationdate", "webdb_create", configuration.getString("Mir.DefaultTimezone")); definition.addCalculatedField("info", new MediaToMediaInfoField()); definition.addCalculatedField("big_icon", new MediaToBigIconField()); @@ -340,7 +340,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { if (anEntityAdapter.get("is_html")!=null && anEntityAdapter.get("is_html").equals("1")) { return MirGlobal.localizer().producerAssistant().filterHTMLText((String) anEntityAdapter.get(fieldName)); } - return MirGlobal.localizer().producerAssistant().filterNonHTMLText((String) anEntityAdapter.get(fieldName)); + return MirGlobal.localizer().producerAssistant().filterNonHTMLText((String) anEntityAdapter.get(fieldName)); } catch (Throwable t) { throw new RuntimeException(t.getMessage()); @@ -412,43 +412,45 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } } + public static class MediaInfo { private MediaHandler mediaHandler; + private Entity mediaType; - public MediaInfo(MediaHandler aHandler) { + public MediaInfo(MediaHandler aHandler, Entity aMediaType) { mediaHandler = aHandler; + mediaType = aMediaType; } + public String getBigIcon() { - if (mediaHandler == null) - return "bla"; - return mediaHandler.getBigIconName(); + return mediaHandler.getBigIconName(); } public String getSmallIcon() { - if (mediaHandler == null) - return "bla"; - return mediaHandler.getTinyIconName(); + return mediaHandler.getTinyIconName(); } - public String getMediaType() { - return ""; + public String getDescription() { + return mediaHandler.getDescr(mediaType); } } - protected class MediaToMediaInfoField implements EntityAdapterDefinition.CalculatedField { + protected static class MediaToMediaInfoField implements EntityAdapterDefinition.CalculatedField { public Object getValue(EntityAdapter anEntityAdapter) { try { - MediaHandler mediaHandler = MediaHelper.getHandler(((EntityUploadedMedia) anEntityAdapter.getEntity()).getMediaType()); + MediaHandler mediaHandler = + MediaHelper.getHandler(((EntityUploadedMedia) anEntityAdapter.getEntity()).getMediaType()); - return new MediaInfo(mediaHandler); + return new MediaInfo(mediaHandler, + ((EntityUploadedMedia) anEntityAdapter.getEntity()).getMediaType()); } catch (Throwable t) { - throw new RuntimeException(t.getMessage()); + throw new Failure(t.getMessage(), t); } } } - protected class MediaToBigIconField implements EntityAdapterDefinition.CalculatedField { + protected static class MediaToBigIconField implements EntityAdapterDefinition.CalculatedField { public Object getValue(EntityAdapter anEntityAdapter) { try { return MediaHelper.getHandler(((EntityUploadedMedia) anEntityAdapter.getEntity()).getMediaType()).getBigIconName(); @@ -459,7 +461,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class ContentToCommentsField implements EntityAdapterDefinition.CalculatedField { + protected static class ContentToCommentsField implements EntityAdapterDefinition.CalculatedField { private String extracondition; private String order; @@ -485,7 +487,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class ContentToTopicsField implements EntityAdapterDefinition.CalculatedField { + protected static class ContentToTopicsField implements EntityAdapterDefinition.CalculatedField { private String topicCondition; private String topicOrder; @@ -504,13 +506,12 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { public Object getValue(EntityAdapter anEntityAdapter) { try { - - String condition = "cxt.content_id="+anEntityAdapter.get("id")+ " and cxt.topic_id=t.id"; - if (topicCondition!=null && topicCondition.length()>0) + if (topicCondition!=null && topicCondition.length()>0) { condition = "(" + topicCondition + ") and " + condition; + } return anEntityAdapter.getComplexRelation("t", Collections.singletonList("content_x_topic cxt"), condition, topicOrder, "topic" ); @@ -521,7 +522,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class ContentToMediaField implements EntityAdapterDefinition.CalculatedField { + protected static class ContentToMediaField implements EntityAdapterDefinition.CalculatedField { private String definition; private boolean published; @@ -554,7 +555,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class ContentToFirstMediaField implements EntityAdapterDefinition.CalculatedField { + protected static class ContentToFirstMediaField implements EntityAdapterDefinition.CalculatedField { private String definition; private boolean published; @@ -585,7 +586,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class CommentToMediaField implements EntityAdapterDefinition.CalculatedField { + protected static class CommentToMediaField implements EntityAdapterDefinition.CalculatedField { private String definition; private boolean published; @@ -616,7 +617,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class ContentToIconField implements EntityAdapterDefinition.CalculatedField { + protected static class ContentToIconField implements EntityAdapterDefinition.CalculatedField { public Object getValue(EntityAdapter anEntityAdapter) { String tinyIcon; String iconAlt; @@ -647,9 +648,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } catch (Throwable t) { - logger.error("ContentToIconField: ", t); - - throw new RuntimeException(t.getMessage()); + throw new Failure(t.getMessage(), t); } Map result = new HashMap(); @@ -660,12 +659,10 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class ContentCommentCountField implements EntityAdapterDefinition.CalculatedField { + protected static class ContentCommentCountField implements EntityAdapterDefinition.CalculatedField { private String extraCondition; public ContentCommentCountField(String anExtraCondition) { - super(); - extraCondition = anExtraCondition; } @@ -681,7 +678,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - protected class HumanReadableSizeField implements EntityAdapterDefinition.CalculatedField { + protected static class HumanReadableSizeField implements EntityAdapterDefinition.CalculatedField { private String fieldName; public HumanReadableSizeField(String aFieldName) { @@ -691,9 +688,10 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { public Object getValue(EntityAdapter anEntityAdapter) { try { String size = (String) anEntityAdapter.get(fieldName); - if (size!=null) + if (size!=null) { return NumberUtils.humanReadableSize(Double.parseDouble(size)); - return ""; + } + return ""; } catch (Throwable t) { throw new RuntimeException(t.getMessage()); @@ -770,7 +768,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { try { if (anEntityAdapter.get("parent")!=null) return anEntityAdapter.get("parent"); - return anEntityAdapter; + return anEntityAdapter; } catch (Throwable t) { throw new MirLocalizerFailure(t); @@ -870,7 +868,7 @@ public class MirBasicDataModelLocalizer implements MirDataModelLocalizer { } } - private static class CommentStatusCountField2 { + public static class CommentStatusCountField2 { private final EntityAdapter comment; private final ModuleCommentStatus mcs = new ModuleCommentStatus();