projects
/
mir.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added:
[mir.git]
/
source
/
mircoders
/
localizer
/
basic
/
MirBasicOpenPostingLocalizer.java
diff --git
a/source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java
b/source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java
index
0009383
..
a851ac0
100755
(executable)
--- a/
source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java
+++ b/
source/mircoders/localizer/basic/MirBasicOpenPostingLocalizer.java
@@
-29,13
+29,6
@@
*/
package mircoders.localizer.basic;
*/
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 mir.config.MirPropertiesConfiguration;
import mir.log.LoggerWrapper;
import mir.session.Request;
@@
-45,6
+38,8
@@
import mircoders.abuse.FilterType;
import mircoders.abuse.IPFilterType;
import mircoders.abuse.RegularExpressionFilterType;
import mircoders.abuse.ThrottleFilter;
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.entity.EntityComment;
import mircoders.entity.EntityContent;
import mircoders.global.MirGlobal;
@@
-53,6
+48,15
@@
import mircoders.localizer.MirLocalizerExc;
import mircoders.localizer.MirLocalizerFailure;
import mircoders.localizer.MirOpenPostingLocalizer;
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;
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
private List afterContentProducerTasks;
private List afterCommentProducerTasks;
@@
-61,7
+65,7
@@
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
protected LoggerWrapper logger;
protected MirPropertiesConfiguration configuration;
protected LoggerWrapper logger;
protected MirPropertiesConfiguration configuration;
- public MirBasicOpenPostingLocalizer() throws MirLocalizer
Exc, MirLocalizer
Failure {
+ public MirBasicOpenPostingLocalizer() throws MirLocalizerFailure {
logger = new LoggerWrapper("Localizer.Basic.OpenPosting");
try {
logger = new LoggerWrapper("Localizer.Basic.OpenPosting");
try {
@@
-94,6
+98,9
@@
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
addSimpleAntiAbuseFilterType(new RegularExpressionFilterType("hostname", false, false,
RegularExpressionFilterType.REQUEST_HEADERS, new String[] {"hostname"}));
addSimpleAntiAbuseFilterType(new ThrottleFilter("throttle"));
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 {
}
public SessionHandler getOpenSessionHandler(String aSessionType) throws MirLocalizerExc, MirLocalizerFailure {
@@
-133,10
+140,18
@@
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
}
}
}
}
- public void after
ContentPosting(EntityContent aContent
) {
+ public void after
ArticlePosting(
) {
afterContentPosting();
}
afterContentPosting();
}
+ public void afterArticlePosting(EntityContent anArticle) {
+ afterContentPosting(anArticle);
+ }
+
+ public void afterContentPosting(EntityContent anArticle) {
+ afterArticlePosting();
+ }
+
public void afterCommentPosting(EntityComment aComment) {
afterCommentPosting();
}
public void afterCommentPosting(EntityComment aComment) {
afterCommentPosting();
}
@@
-163,8
+178,9
@@
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
long l = System.currentTimeMillis();
l = (l*l*l*l)/random;
long l = System.currentTimeMillis();
l = (l*l*l*l)/random;
- if (l<0)
+ if (l<0)
{
l = l * -1;
l = l * -1;
+ }
String returnString = ""+l;
String returnString = ""+l;
@@
-172,7
+188,11
@@
public class MirBasicOpenPostingLocalizer implements MirOpenPostingLocalizer {
}
public List getAntiAbuseFilterTypes() {
}
public List getAntiAbuseFilterTypes() {
- return filterTypes;
+ return Collections.unmodifiableList(filterTypes);
+ }
+
+ public boolean allowArticlePublication(EntityContent anArticle){
+ return anArticle != null && "1".equals(anArticle.getFieldValue("is_published"));
}
public void removeSimpleAntiAbuseFilterType(String aName) {
}
public void removeSimpleAntiAbuseFilterType(String aName) {