|
@@ -1,28 +1,29 @@
|
|
package com.tzld.piaoquan.recommend.server.framework.recaller;
|
|
package com.tzld.piaoquan.recommend.server.framework.recaller;
|
|
|
|
|
|
|
|
+import com.tzld.piaoquan.recommend.server.framework.candidiate.Candidate;
|
|
import com.tzld.piaoquan.recommend.server.framework.common.User;
|
|
import com.tzld.piaoquan.recommend.server.framework.common.User;
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest;
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest;
|
|
import org.apache.commons.lang.exception.ExceptionUtils;
|
|
import org.apache.commons.lang.exception.ExceptionUtils;
|
|
-import com.tzld.piaoquan.recommend.server.framework.candidiate.Candidate;
|
|
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
public class FilterPipeline<T> {
|
|
public class FilterPipeline<T> {
|
|
|
|
|
|
- private static Logger LOGGER = LoggerFactory.getLogger(FilterPipeline.class);
|
|
|
|
|
|
+ private static final Logger LOGGER = LoggerFactory.getLogger(FilterPipeline.class);
|
|
public int filterNum;
|
|
public int filterNum;
|
|
- private FilterConfig config;
|
|
|
|
- private List<AbstractFilter<T>> filters;
|
|
|
|
- private RecommendRequest requestContext;
|
|
|
|
- private User user;
|
|
|
|
|
|
+ private final FilterConfig config;
|
|
|
|
+ private final List<AbstractFilter<T>> filters;
|
|
|
|
+ private final RecommendRequest requestContext;
|
|
|
|
+ private final User user;
|
|
|
|
|
|
public FilterPipeline(FilterConfig config,
|
|
public FilterPipeline(FilterConfig config,
|
|
- RecommendRequest requestContext,
|
|
|
|
- User user) {
|
|
|
|
|
|
+ RecommendRequest requestContext,
|
|
|
|
+ User user) {
|
|
|
|
|
|
this.config = config;
|
|
this.config = config;
|
|
this.requestContext = requestContext;
|
|
this.requestContext = requestContext;
|
|
@@ -54,9 +55,13 @@ public class FilterPipeline<T> {
|
|
}
|
|
}
|
|
|
|
|
|
public List<T> doFilter(Candidate candidate, List<T> list) {
|
|
public List<T> doFilter(Candidate candidate, List<T> list) {
|
|
|
|
+ LOGGER.info("FilterPipeline doFilter start traceId:{}, before list:{}", requestContext.getRequestId(),
|
|
|
|
+ list.stream().map(Object::toString).collect(Collectors.joining(",")));
|
|
for (AbstractFilter filter : filters) {
|
|
for (AbstractFilter filter : filters) {
|
|
filter.doFilter(candidate, list);
|
|
filter.doFilter(candidate, list);
|
|
}
|
|
}
|
|
|
|
+ LOGGER.info("FilterPipeline doFilter end traceId:{}, after list:{}", requestContext.getRequestId(),
|
|
|
|
+ list.stream().map(Object::toString).collect(Collectors.joining(",")));
|
|
return list;
|
|
return list;
|
|
}
|
|
}
|
|
}
|
|
}
|