gpt4 book ai didi

org.springframework.beans.factory.config.YamlProcessor.process()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-14 14:51:31 25 4
gpt4 key购买 nike

本文整理了Java中org.springframework.beans.factory.config.YamlProcessor.process()方法的一些代码示例,展示了YamlProcessor.process()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。YamlProcessor.process()方法的具体详情如下:
包路径:org.springframework.beans.factory.config.YamlProcessor
类名称:YamlProcessor
方法名:process

YamlProcessor.process介绍

[英]Provide an opportunity for subclasses to process the Yaml parsed from the supplied resources. Each resource is parsed in turn and the documents inside checked against the #setDocumentMatchers(DocumentMatcher...). If a document matches it is passed into the callback, along with its representation as Properties. Depending on the #setResolutionMethod(ResolutionMethod) not all of the documents will be parsed.
[中]为子类提供处理从提供的资源解析的Yaml的机会。依次解析每个资源,并根据#setDocumentMatchers(DocumentMatcher…)检查其中的文档。如果文档与之匹配,它将被传递到回调中,并将其表示为属性。根据#setResolutionMethod(ResolutionMethod),并非所有文档都将被解析。

代码示例

代码示例来源:origin: spring-projects/spring-framework

/**
 * Provide an opportunity for subclasses to process the Yaml parsed from the supplied
 * resources. Each resource is parsed in turn and the documents inside checked against
 * the {@link #setDocumentMatchers(DocumentMatcher...) matchers}. If a document
 * matches it is passed into the callback, along with its representation as Properties.
 * Depending on the {@link #setResolutionMethod(ResolutionMethod)} not all of the
 * documents will be parsed.
 * @param callback a callback to delegate to once matching documents are found
 * @see #createYaml()
 */
protected void process(MatchCallback callback) {
  Yaml yaml = createYaml();
  for (Resource resource : this.resources) {
    boolean found = process(callback, yaml, resource);
    if (this.resolutionMethod == ResolutionMethod.FIRST_FOUND && found) {
      return;
    }
  }
}

代码示例来源:origin: org.springframework/spring-beans

/**
 * Provide an opportunity for subclasses to process the Yaml parsed from the supplied
 * resources. Each resource is parsed in turn and the documents inside checked against
 * the {@link #setDocumentMatchers(DocumentMatcher...) matchers}. If a document
 * matches it is passed into the callback, along with its representation as Properties.
 * Depending on the {@link #setResolutionMethod(ResolutionMethod)} not all of the
 * documents will be parsed.
 * @param callback a callback to delegate to once matching documents are found
 * @see #createYaml()
 */
protected void process(MatchCallback callback) {
  Yaml yaml = createYaml();
  for (Resource resource : this.resources) {
    boolean found = process(callback, yaml, resource);
    if (this.resolutionMethod == ResolutionMethod.FIRST_FOUND && found) {
      return;
    }
  }
}

代码示例来源:origin: spring-projects/spring-framework

private boolean process(MatchCallback callback, Yaml yaml, Resource resource) {
  int count = 0;
  try {
    if (logger.isDebugEnabled()) {
      logger.debug("Loading from YAML: " + resource);
    }
    Reader reader = new UnicodeReader(resource.getInputStream());
    try {
      for (Object object : yaml.loadAll(reader)) {
        if (object != null && process(asMap(object), callback)) {
          count++;
          if (this.resolutionMethod == ResolutionMethod.FIRST_FOUND) {
            break;
          }
        }
      }
      if (logger.isDebugEnabled()) {
        logger.debug("Loaded " + count + " document" + (count > 1 ? "s" : "") +
            " from YAML resource: " + resource);
      }
    }
    finally {
      reader.close();
    }
  }
  catch (IOException ex) {
    handleProcessError(resource, ex);
  }
  return (count > 0);
}

代码示例来源:origin: org.springframework/spring-beans

private boolean process(MatchCallback callback, Yaml yaml, Resource resource) {
  int count = 0;
  try {
    if (logger.isDebugEnabled()) {
      logger.debug("Loading from YAML: " + resource);
    }
    Reader reader = new UnicodeReader(resource.getInputStream());
    try {
      for (Object object : yaml.loadAll(reader)) {
        if (object != null && process(asMap(object), callback)) {
          count++;
          if (this.resolutionMethod == ResolutionMethod.FIRST_FOUND) {
            break;
          }
        }
      }
      if (logger.isDebugEnabled()) {
        logger.debug("Loaded " + count + " document" + (count > 1 ? "s" : "") +
            " from YAML resource: " + resource);
      }
    }
    finally {
      reader.close();
    }
  }
  catch (IOException ex) {
    handleProcessError(resource, ex);
  }
  return (count > 0);
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void integerDeepKeyBehaves() {
  this.processor.setResources(new ByteArrayResource("foo:\n  1: bar".getBytes()));
  this.processor.process((properties, map) -> {
    assertEquals("bar", properties.get("foo[1]"));
    assertEquals(1, properties.size());
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void mapConvertedToIndexedBeanReference() {
  this.processor.setResources(new ByteArrayResource("foo: bar\nbar:\n spam: bucket".getBytes()));
  this.processor.process((properties, map) -> {
    assertEquals("bucket", properties.get("bar.spam"));
    assertEquals(2, properties.size());
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void integerKeyBehaves() {
  this.processor.setResources(new ByteArrayResource("foo: bar\n1: bar".getBytes()));
  this.processor.process((properties, map) -> {
    assertEquals("bar", properties.get("[1]"));
    assertEquals(2, properties.size());
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void testStringResource() {
  this.processor.setResources(new ByteArrayResource("foo # a document that is a literal".getBytes()));
  this.processor.process((properties, map) -> assertEquals("foo", map.get("document")));
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void arrayConvertedToIndexedBeanReference() {
  this.processor.setResources(new ByteArrayResource("foo: bar\nbar: [1,2,3]".getBytes()));
  this.processor.process((properties, map) -> {
    assertEquals(4, properties.size());
    assertEquals("bar", properties.get("foo"));
    assertEquals("bar", properties.getProperty("foo"));
    assertEquals(1, properties.get("bar[0]"));
    assertEquals("1", properties.getProperty("bar[0]"));
    assertEquals(2, properties.get("bar[1]"));
    assertEquals("2", properties.getProperty("bar[1]"));
    assertEquals(3, properties.get("bar[2]"));
    assertEquals("3", properties.getProperty("bar[2]"));
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
@SuppressWarnings("unchecked")
public void flattenedMapIsSameAsPropertiesButOrdered() {
  this.processor.setResources(new ByteArrayResource("foo: bar\nbar:\n spam: bucket".getBytes()));
  this.processor.process((properties, map) -> {
    assertEquals("bucket", properties.get("bar.spam"));
    assertEquals(2, properties.size());
    Map<String, Object> flattenedMap = processor.getFlattenedMap(map);
    assertEquals("bucket", flattenedMap.get("bar.spam"));
    assertEquals(2, flattenedMap.size());
    assertTrue(flattenedMap instanceof LinkedHashMap);
    Map<String, Object> bar = (Map<String, Object>) map.get("bar");
    assertEquals("bucket", bar.get("spam"));
  });
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void testBadResource() {
  this.processor.setResources(new ByteArrayResource("foo: bar\ncd\nspam:\n  foo: baz".getBytes()));
  this.exception.expect(ScannerException.class);
  this.exception.expectMessage("line 3, column 1");
  this.processor.process((properties, map) -> {});
}

代码示例来源:origin: spring-projects/spring-framework

@Test
public void testBadDocumentStart() {
  this.processor.setResources(new ByteArrayResource("foo # a document\nbar: baz".getBytes()));
  this.exception.expect(ParserException.class);
  this.exception.expectMessage("line 2, column 1");
  this.processor.process((properties, map) -> {});
}

代码示例来源:origin: apache/servicemix-bundles

/**
 * Provide an opportunity for subclasses to process the Yaml parsed from the supplied
 * resources. Each resource is parsed in turn and the documents inside checked against
 * the {@link #setDocumentMatchers(DocumentMatcher...) matchers}. If a document
 * matches it is passed into the callback, along with its representation as Properties.
 * Depending on the {@link #setResolutionMethod(ResolutionMethod)} not all of the
 * documents will be parsed.
 * @param callback a callback to delegate to once matching documents are found
 * @see #createYaml()
 */
protected void process(MatchCallback callback) {
  Yaml yaml = createYaml();
  for (Resource resource : this.resources) {
    boolean found = process(callback, yaml, resource);
    if (this.resolutionMethod == ResolutionMethod.FIRST_FOUND && found) {
      return;
    }
  }
}

代码示例来源:origin: apache/servicemix-bundles

private boolean process(MatchCallback callback, Yaml yaml, Resource resource) {
  int count = 0;
  try {
    if (logger.isDebugEnabled()) {
      logger.debug("Loading from YAML: " + resource);
    }
    Reader reader = new UnicodeReader(resource.getInputStream());
    try {
      for (Object object : yaml.loadAll(reader)) {
        if (object != null && process(asMap(object), callback)) {
          count++;
          if (this.resolutionMethod == ResolutionMethod.FIRST_FOUND) {
            break;
          }
        }
      }
      if (logger.isDebugEnabled()) {
        logger.debug("Loaded " + count + " document" + (count > 1 ? "s" : "") +
            " from YAML resource: " + resource);
      }
    }
    finally {
      reader.close();
    }
  }
  catch (IOException ex) {
    handleProcessError(resource, ex);
  }
  return (count > 0);
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com