【问题标题】:Add Dynamic Directory to RotatingServerAdvice Spring Integration将动态目录添加到 RotatingServerAdvice Spring 集成
【发布时间】:2021-01-27 19:37:36
【问题描述】:

我正在尝试使用 RotatingServerAdvice 从多个资源中轮询新文件。我有一个新要求,即对于每个新客户端,在 sftp 服务器中创建一个新目录,我也想将该目录添加到轮询中。所以我将使用 int-sftp:outbound-gateway 来查询所有目录并检查是否创建了新目录,然后将新目录添加到关键目录中。有可能吗?谢谢。

@Bean
public RotatingServerAdvice advice() {
  List<RotationPolicy.KeyDirectory> keyDirectories = new ArrayList<>();
  keyDirectories.add(new RotationPolicy.KeyDirectory("one", "foo"));
  keyDirectories.add(new RotationPolicy.KeyDirectory("one", "bar"));
  keyDirectories.add(new RotationPolicy.KeyDirectory("two", "baz"));
  keyDirectories.add(new RotationPolicy.KeyDirectory("two", "qux"));
  keyDirectories.add(new RotationPolicy.KeyDirectory("three", "fiz"));
  keyDirectories.add(new RotationPolicy.KeyDirectory("three", "buz"));
  return new RotatingServerAdvice(delegatingSf(), keyDirectories);
}

【问题讨论】:

    标签: spring spring-integration spring-integration-sftp


    【解决方案1】:

    默认StandardRotationPolicy是不可能的;您需要提供自定义的RotationPolicy

    /**
     * Construct an instance that rotates according to the supplied
     * {@link RotationPolicy}.
     * @param rotationPolicy the policy.
     */
    public RotatingServerAdvice(RotationPolicy rotationPolicy) {
        Assert.notNull(rotationPolicy, "'rotationPolicy' cannot be null");
        this.rotationPolicy = rotationPolicy;
    }
    

    您可能可以从StandardRotationPolicy 作为模型开始。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-13
      • 2020-01-24
      • 1970-01-01
      • 2011-01-05
      相关资源
      最近更新 更多