X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Flocalizer%2Fbasic%2FMirBasicOpenPostingLocalizer.java;h=bad1ede22a7d487c774de9b319c91ce28d7396a9;hb=b91681c07507cd92174b2414466525b6ec324be2;hp=b6833ed9f0894007886cb1c73ad8a0d875adfb76;hpb=14127fccd05fd4dc20411d3c551908103fcd28a9;p=mir.git diff --git a/source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java b/source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java index b6833ed9..bad1ede2 100755 --- a/source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java +++ b/source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java @@ -29,13 +29,6 @@ */ package mircoders.localizer.basic; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Random; - import mir.config.MirPropertiesConfiguration; import mir.log.LoggerWrapper; import mir.session.Request; @@ -45,6 +38,7 @@ import mircoders.abuse.FilterType; import mircoders.abuse.IPFilterType; import mircoders.abuse.RegularExpressionFilterType; import mircoders.abuse.ThrottleFilter; +import mircoders.abuse.PostingSizeFilterType; import mircoders.entity.EntityComment; import mircoders.entity.EntityContent; import mircoders.global.MirGlobal; @@ -53,6 +47,14 @@ import mircoders.localizer.MirLocalizerExc; import mircoders.localizer.MirLocalizerFailure; import mircoders.localizer.MirOpenPostingLocalizer; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Random; + public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer { private List afterContentProducerTasks; private List afterCommentProducerTasks; @@ -94,6 +96,7 @@ public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer { addSimpleAntiAbuseFilterType(new RegularExpressionFilterType("hostname", false, false, RegularExpressionFilterType.REQUEST_HEADERS, new String[] {"hostname"})); addSimpleAntiAbuseFilterType(new ThrottleFilter("throttle")); + addSimpleAntiAbuseFilterType(new PostingSizeFilterType("size")); } public SessionHandler getOpenSessionHandler(String aSessionType) throws MirLocalizerExc, MirLocalizerFailure { @@ -171,8 +174,9 @@ public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer { long l = System.currentTimeMillis(); l = (l*l*l*l)/random; - if (l<0) + if (l<0) { l = l * -1; + } String returnString = ""+l; @@ -180,11 +184,11 @@ public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer { } public List getAntiAbuseFilterTypes() { - return filterTypes; + return Collections.unmodifiableList(filterTypes); } public boolean allowArticlePublication(EntityContent anArticle){ - return (anArticle!=null) && "t".equals(anArticle.getFieldValue("is_published")); + return anArticle != null && "1".equals(anArticle.getFieldValue("is_published")); } public void removeSimpleAntiAbuseFilterType(String aName) {