新增控制台配置项;修改图片列表字段

This commit is contained in:
anian
2026-04-21 15:56:25 +08:00
parent 3e9d0b4441
commit 656ee0bcb4
10 changed files with 226 additions and 31 deletions
@@ -74,14 +74,25 @@ public class RssFeedSyncLogServiceImpl implements RssFeedSyncLogService {
CronFriendPost cron = new CronFriendPost();
CronFriendPost.CronSpec cronSpec = new CronFriendPost.CronSpec();
cronSpec.setSuccessfulRetainLimit(5);
cronSpec.setParallelCount(1);
cronSpec.setEnableWeiboImageRecordAndDownload(false);
cronSpec.setDisableSyncList(new ArrayList<>());
cronSpec.setImageSavePath("");
cronSpec.setImageBaseUrl("");
cronSpec.setImageReferer("");
cron.setSpec(cronSpec);
return client.fetch(CronFriendPost.class, "cron-friends-default")
.defaultIfEmpty(cron)
.flatMap(cronFriendPost -> {
var spec = cronFriendPost.getSpec();
int successfulRetainLimit = spec.getSuccessfulRetainLimit();
int parallelCount = spec.getParallelCount();
boolean enableWeiboImageRecordAndDownload =
spec.isEnableWeiboImageRecordAndDownload();
List<String> disableSyncList = spec.getDisableSyncList();
String imageSavePath = spec.getImageSavePath();
String imageBaseUrl = spec.getImageBaseUrl();
String imageReferer = spec.getImageReferer();
int sum = successfulRetainLimit == 0 ? 5 : successfulRetainLimit;
var listOptions = new ListOptions();
FieldSelector fieldSelector = FieldSelector.of(isNull("metadata.deletionTimestamp"));
@@ -90,7 +101,11 @@ public class RssFeedSyncLogServiceImpl implements RssFeedSyncLogService {
}
listOptions.setFieldSelector(fieldSelector);
return client.listAll(Link.class, listOptions, Sort.by("metadata.creationTimestamp"))
.doOnNext(link -> eventPublisher.publishEvent(new RssFeedSyncEvent(this, link,sum,disableSyncList)))
.doOnNext(link -> eventPublisher.publishEvent(
new RssFeedSyncEvent(this, link, sum, parallelCount,
enableWeiboImageRecordAndDownload, disableSyncList, imageSavePath,
imageBaseUrl, imageReferer)
))
.then();
});
}