*/
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;
import mircoders.abuse.IPFilterType;
import mircoders.abuse.RegularExpressionFilterType;
import mircoders.abuse.ThrottleFilter;
+import mircoders.abuse.PostingSizeFilterType;
+import mircoders.abuse.URLBlacklistFilterType;
import mircoders.entity.EntityComment;
import mircoders.entity.EntityContent;
import mircoders.global.MirGlobal;
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;
+import java.util.Arrays;
+
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
private List afterContentProducerTasks;
private List afterCommentProducerTasks;
addSimpleAntiAbuseFilterType(new RegularExpressionFilterType("hostname", false, false,
RegularExpressionFilterType.REQUEST_HEADERS, new String[] {"hostname"}));
addSimpleAntiAbuseFilterType(new ThrottleFilter("throttle"));
+ addSimpleAntiAbuseFilterType(new PostingSizeFilterType("size"));
+ addSimpleAntiAbuseFilterType(new URLBlacklistFilterType("urlblacklist",
+ Arrays.asList(MirGlobal.config().getStringArray("Mir.URLBlacklistFilter.WhiteList"))));
}
public SessionHandler getOpenSessionHandler(String aSessionType) throws MirLocalizerExc, MirLocalizerFailure {
long l = System.currentTimeMillis();
l = (l*l*l*l)/random;
- if (l<0)
+ if (l<0) {
l = l * -1;
+ }
String returnString = ""+l;
}
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) {