카테고리 없음

RotatingServerAdvice Spring 통합에 동적 디렉토리 추가

기록만이살길 2021. 2. 21. 08:59
반응형

RotatingServerAdvice Spring 통합에 동적 디렉토리 추가

1. 질문(문제점):

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);
}

2. 해결방안:

기본값으로는 ​​불가능합니다 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모델로 시작할 수 있습니다 .

65926185
반응형