当前位置: 首页>>代码示例>>Java>>正文


Java BundleEntry.setId方法代码示例

本文整理汇总了Java中ca.uhn.fhir.model.api.BundleEntry.setId方法的典型用法代码示例。如果您正苦于以下问题:Java BundleEntry.setId方法的具体用法?Java BundleEntry.setId怎么用?Java BundleEntry.setId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ca.uhn.fhir.model.api.BundleEntry的用法示例。


在下文中一共展示了BundleEntry.setId方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testEncodeBundleOldIdForm

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@SuppressWarnings("deprecation")
@Test
public void testEncodeBundleOldIdForm() throws InterruptedException {
	Bundle b = new Bundle();
	b.getCategories().addTag("http://hl7.org/fhir/tag", "http://hl7.org/fhir/tag/message", "Message");

	InstantDt pub = InstantDt.withCurrentTime();
	Thread.sleep(2);

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);
	entry.getSummary().setValueAsString("this is the summary");

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setLinkAlternate(new StringDt("http://foo/bar"));
	entry.setLinkSearch(new StringDt("http://foo/bar/search"));
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(InstantDt.withCurrentTime());

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	List<String> strings = new ArrayList<String>();
	strings.add("<category term=\"http://hl7.org/fhir/tag/message\" label=\"Message\" scheme=\"http://hl7.org/fhir/tag\"/>");
	strings.addAll(Arrays.asList("<entry>", "<id>1</id>", "</Patient>", "<summary type=\"xhtml\">", "<div", "</entry>"));
	strings.addAll(Arrays.asList("<entry>", "<id>2</id>", "<link rel=\"alternate\" href=\"http://foo/bar\"/>", "<link rel=\"search\" href=\"http://foo/bar/search\"/>", "</entry>"));
	strings.addAll(Arrays.asList("<at:deleted-entry", "ref=\"Patient/3", "/>"));
	assertThat(bundleString, StringContainsInOrder.stringContainsInOrder(strings));
	assertThat(bundleString, not(containsString("at:by")));

}
 
开发者ID:gajen0981,项目名称:FHIR-Server,代码行数:41,代码来源:XmlParserTest.java

示例2: testEncodeBundle

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testEncodeBundle() throws InterruptedException {
	Bundle b = new Bundle();

	InstantDt pub = InstantDt.withCurrentTime();
	Thread.sleep(2);

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);
	entry.getSummary().setValueAsString("this is the summary");

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setLinkAlternate(new StringDt("http://foo/bar"));
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	InstantDt nowDt = InstantDt.withCurrentTime();
	deletedEntry.setDeleted(nowDt);

	String bundleString = ourCtx.newJsonParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	List<String> strings = new ArrayList<String>();
	strings.addAll(Arrays.asList("\"id\":\"1\""));
	strings.addAll(Arrays.asList("this is the summary"));
	strings.addAll(Arrays.asList("\"id\":\"2\"", "\"rel\":\"alternate\"", "\"href\":\"http://foo/bar\""));
	strings.addAll(Arrays.asList("\"deleted\":\"" + nowDt.getValueAsString() + "\"", "\"id\":\"Patient/3\""));
	assertThat(bundleString, StringContainsInOrder.stringContainsInOrder(strings));

	b.getEntries().remove(2);
	bundleString = ourCtx.newJsonParser().setPrettyPrint(true).encodeBundleToString(b);
	assertThat(bundleString, not(containsString("deleted")));

}
 
开发者ID:gajen0981,项目名称:FHIR-Server,代码行数:42,代码来源:JsonParserTest.java

示例3: testTransaction

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testTransaction() throws Exception {
	Bundle b = new Bundle();
	InstantDt nowInstant = InstantDt.withCurrentTime();

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(nowInstant);

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	HttpPost httpPost = new HttpPost("http://localhost:" + ourPort + "/");
	httpPost.addHeader("Accept", Constants.CT_ATOM_XML + "; pretty=true");
	httpPost.setEntity(new StringEntity(bundleString, ContentType.create(Constants.CT_ATOM_XML, "UTF-8")));
	HttpResponse status = ourClient.execute(httpPost);
	String responseContent = IOUtils.toString(status.getEntity().getContent());
	IOUtils.closeQuietly(status.getEntity().getContent());

	assertEquals(200, status.getStatusLine().getStatusCode());

	ourLog.info(responseContent);

	Bundle bundle = new FhirContext().newXmlParser().parseBundle(responseContent);
	assertEquals(3, bundle.size());

	BundleEntry entry0 = bundle.getEntries().get(0);
	assertEquals("http://localhost:" + ourPort + "/Patient/81", entry0.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/81/_history/91", entry0.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/1", entry0.getLinkAlternate().getValue());

	BundleEntry entry1 = bundle.getEntries().get(1);
	assertEquals("http://localhost:" + ourPort + "/Patient/82", entry1.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/82/_history/92", entry1.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/2", entry1.getLinkAlternate().getValue());

	BundleEntry entry2 = bundle.getEntries().get(2);
	assertEquals("http://localhost:" + ourPort + "/Patient/3", entry2.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/3/_history/93", entry2.getLinkSelf().getValue());
	assertEquals(nowInstant.getValueAsString(), entry2.getDeletedAt().getValueAsString());
}
 
开发者ID:gajen0981,项目名称:FHIR-Server,代码行数:54,代码来源:TransactionTest.java

示例4: testTransactionWithFewerResponseElements

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testTransactionWithFewerResponseElements() throws Exception {
	ourDropFirstResource =true;
	
	Bundle b = new Bundle();
	InstantDt nowInstant = InstantDt.withCurrentTime();

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(nowInstant);

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	HttpPost httpPost = new HttpPost("http://localhost:" + ourPort + "/");
	httpPost.addHeader("Accept", Constants.CT_ATOM_XML + "; pretty=true");
	httpPost.setEntity(new StringEntity(bundleString, ContentType.create(Constants.CT_ATOM_XML, "UTF-8")));
	HttpResponse status = ourClient.execute(httpPost);
	String responseContent = IOUtils.toString(status.getEntity().getContent());
	IOUtils.closeQuietly(status.getEntity().getContent());

	assertEquals(200, status.getStatusLine().getStatusCode());

	ourLog.info(responseContent);

	Bundle bundle = new FhirContext().newXmlParser().parseBundle(responseContent);
	assertEquals(2, bundle.size());

	BundleEntry entry1 = bundle.getEntries().get(0);
	assertEquals("http://localhost:" + ourPort + "/Patient/82", entry1.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/82/_history/92", entry1.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/2", entry1.getLinkAlternate().getValue());

	BundleEntry entry2 = bundle.getEntries().get(1);
	assertEquals("http://localhost:" + ourPort + "/Patient/3", entry2.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/3/_history/93", entry2.getLinkSelf().getValue());
	assertEquals(nowInstant.getValueAsString(), entry2.getDeletedAt().getValueAsString());
}
 
开发者ID:gajen0981,项目名称:FHIR-Server,代码行数:51,代码来源:TransactionTest.java

示例5: testTransactionWithOperationOutcome

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testTransactionWithOperationOutcome() throws Exception {
	ourReturnOperationOutcome = true;

	Bundle b = new Bundle();
	InstantDt nowInstant = InstantDt.withCurrentTime();

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(nowInstant);

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	HttpPost httpPost = new HttpPost("http://localhost:" + ourPort + "/");
	httpPost.addHeader("Accept", Constants.CT_ATOM_XML + "; pretty=true");
	httpPost.setEntity(new StringEntity(bundleString, ContentType.create(Constants.CT_ATOM_XML, "UTF-8")));
	HttpResponse status = ourClient.execute(httpPost);
	String responseContent = IOUtils.toString(status.getEntity().getContent());
	IOUtils.closeQuietly(status.getEntity().getContent());

	assertEquals(200, status.getStatusLine().getStatusCode());

	ourLog.info(responseContent);

	Bundle bundle = new FhirContext().newXmlParser().parseBundle(responseContent);
	assertEquals(4, bundle.size());

	assertEquals(OperationOutcome.class, bundle.getEntries().get(0).getResource().getClass());
	assertEquals("OperationOutcome (no ID)", bundle.getEntries().get(0).getTitle().getValue());

	BundleEntry entry0 = bundle.getEntries().get(1);
	assertEquals("http://localhost:" + ourPort + "/Patient/81", entry0.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/81/_history/91", entry0.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/1", entry0.getLinkAlternate().getValue());

	BundleEntry entry1 = bundle.getEntries().get(2);
	assertEquals("http://localhost:" + ourPort + "/Patient/82", entry1.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/82/_history/92", entry1.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/2", entry1.getLinkAlternate().getValue());

	BundleEntry entry2 = bundle.getEntries().get(3);
	assertEquals("http://localhost:" + ourPort + "/Patient/3", entry2.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/3/_history/93", entry2.getLinkSelf().getValue());
	assertEquals(nowInstant.getValueAsString(), entry2.getDeletedAt().getValueAsString());
}
 
开发者ID:gajen0981,项目名称:FHIR-Server,代码行数:59,代码来源:TransactionTest.java

示例6: testEncodeBundle

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testEncodeBundle() throws InterruptedException {
	Bundle b = new Bundle();

	InstantDt pub = InstantDt.withCurrentTime();
	Thread.sleep(2);

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);
	entry.getSummary().setValueAsString("this is the summary");

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setLinkAlternate(new StringDt("http://foo/bar"));
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	InstantDt nowDt = InstantDt.withCurrentTime();
	deletedEntry.setDeleted(nowDt);

	String bundleString = ourCtx.newJsonParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	List<String> strings = new ArrayList<String>();
	strings.addAll(Arrays.asList("\"id\": \"1\""));
	strings.addAll(Arrays.asList("this is the summary"));
	strings.addAll(Arrays.asList("\"id\": \"2\"", "\"rel\": \"alternate\"", "\"href\": \"http://foo/bar\""));
	strings.addAll(Arrays.asList("\"deleted\": \"" + nowDt.getValueAsString() + "\"", "\"id\": \"Patient/3\""));
	assertThat(bundleString, StringContainsInOrder.stringContainsInOrder(strings));

	b.getEntries().remove(2);
	bundleString = ourCtx.newJsonParser().setPrettyPrint(true).encodeBundleToString(b);
	assertThat(bundleString, not(containsString("deleted")));

}
 
开发者ID:jamesagnew,项目名称:hapi-fhir,代码行数:42,代码来源:JsonParserTest.java

示例7: testTransaction

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testTransaction() throws Exception {
	Bundle b = new Bundle();
	InstantDt nowInstant = InstantDt.withCurrentTime();

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(nowInstant);

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	HttpPost httpPost = new HttpPost("http://localhost:" + ourPort + "/");
	httpPost.addHeader("Accept", Constants.CT_ATOM_XML + "; pretty=true");
	httpPost.setEntity(new StringEntity(bundleString, ContentType.create(Constants.CT_ATOM_XML, "UTF-8")));
	HttpResponse status = ourClient.execute(httpPost);
	String responseContent = IOUtils.toString(status.getEntity().getContent());
	IOUtils.closeQuietly(status.getEntity().getContent());

	assertEquals(200, status.getStatusLine().getStatusCode());

	ourLog.info(responseContent);

	Bundle bundle = ourCtx.newXmlParser().parseBundle(responseContent);
	assertEquals(3, bundle.size());

	BundleEntry entry0 = bundle.getEntries().get(0);
	assertEquals("http://localhost:" + ourPort + "/Patient/81", entry0.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/81/_history/91", entry0.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/1", entry0.getLinkAlternate().getValue());

	BundleEntry entry1 = bundle.getEntries().get(1);
	assertEquals("http://localhost:" + ourPort + "/Patient/82", entry1.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/82/_history/92", entry1.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/2", entry1.getLinkAlternate().getValue());

	BundleEntry entry2 = bundle.getEntries().get(2);
	assertEquals("http://localhost:" + ourPort + "/Patient/3", entry2.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/3/_history/93", entry2.getLinkSelf().getValue());
	assertEquals(nowInstant.getValueAsString(), entry2.getDeletedAt().getValueAsString());
}
 
开发者ID:jamesagnew,项目名称:hapi-fhir,代码行数:54,代码来源:TransactionTest.java

示例8: testTransactionWithFewerResponseElements

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testTransactionWithFewerResponseElements() throws Exception {
	ourDropFirstResource =true;
	
	Bundle b = new Bundle();
	InstantDt nowInstant = InstantDt.withCurrentTime();

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(nowInstant);

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	HttpPost httpPost = new HttpPost("http://localhost:" + ourPort + "/");
	httpPost.addHeader("Accept", Constants.CT_ATOM_XML + "; pretty=true");
	httpPost.setEntity(new StringEntity(bundleString, ContentType.create(Constants.CT_ATOM_XML, "UTF-8")));
	HttpResponse status = ourClient.execute(httpPost);
	String responseContent = IOUtils.toString(status.getEntity().getContent());
	IOUtils.closeQuietly(status.getEntity().getContent());

	assertEquals(200, status.getStatusLine().getStatusCode());

	ourLog.info(responseContent);

	Bundle bundle = ourCtx.newXmlParser().parseBundle(responseContent);
	assertEquals(2, bundle.size());

	BundleEntry entry1 = bundle.getEntries().get(0);
	assertEquals("http://localhost:" + ourPort + "/Patient/82", entry1.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/82/_history/92", entry1.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/2", entry1.getLinkAlternate().getValue());

	BundleEntry entry2 = bundle.getEntries().get(1);
	assertEquals("http://localhost:" + ourPort + "/Patient/3", entry2.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/3/_history/93", entry2.getLinkSelf().getValue());
	assertEquals(nowInstant.getValueAsString(), entry2.getDeletedAt().getValueAsString());
}
 
开发者ID:jamesagnew,项目名称:hapi-fhir,代码行数:51,代码来源:TransactionTest.java

示例9: testTransactionWithOperationOutcome

import ca.uhn.fhir.model.api.BundleEntry; //导入方法依赖的package包/类
@Test
public void testTransactionWithOperationOutcome() throws Exception {
	ourReturnOperationOutcome = true;

	Bundle b = new Bundle();
	InstantDt nowInstant = InstantDt.withCurrentTime();

	Patient p1 = new Patient();
	p1.addName().addFamily("Family1");
	BundleEntry entry = b.addEntry();
	entry.getId().setValue("1");
	entry.setResource(p1);

	Patient p2 = new Patient();
	p2.addName().addFamily("Family2");
	entry = b.addEntry();
	entry.getId().setValue("2");
	entry.setResource(p2);

	BundleEntry deletedEntry = b.addEntry();
	deletedEntry.setId(new IdDt("Patient/3"));
	deletedEntry.setDeleted(nowInstant);

	String bundleString = ourCtx.newXmlParser().setPrettyPrint(true).encodeBundleToString(b);
	ourLog.info(bundleString);

	HttpPost httpPost = new HttpPost("http://localhost:" + ourPort + "/");
	httpPost.addHeader("Accept", Constants.CT_ATOM_XML + "; pretty=true");
	httpPost.setEntity(new StringEntity(bundleString, ContentType.create(Constants.CT_ATOM_XML, "UTF-8")));
	HttpResponse status = ourClient.execute(httpPost);
	String responseContent = IOUtils.toString(status.getEntity().getContent());
	IOUtils.closeQuietly(status.getEntity().getContent());

	assertEquals(200, status.getStatusLine().getStatusCode());

	ourLog.info(responseContent);

	Bundle bundle = ourCtx.newXmlParser().parseBundle(responseContent);
	assertEquals(4, bundle.size());

	assertEquals(OperationOutcome.class, bundle.getEntries().get(0).getResource().getClass());
	assertEquals("OperationOutcome (no ID)", bundle.getEntries().get(0).getTitle().getValue());

	BundleEntry entry0 = bundle.getEntries().get(1);
	assertEquals("http://localhost:" + ourPort + "/Patient/81", entry0.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/81/_history/91", entry0.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/1", entry0.getLinkAlternate().getValue());

	BundleEntry entry1 = bundle.getEntries().get(2);
	assertEquals("http://localhost:" + ourPort + "/Patient/82", entry1.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/82/_history/92", entry1.getLinkSelf().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/2", entry1.getLinkAlternate().getValue());

	BundleEntry entry2 = bundle.getEntries().get(3);
	assertEquals("http://localhost:" + ourPort + "/Patient/3", entry2.getId().getValue());
	assertEquals("http://localhost:" + ourPort + "/Patient/3/_history/93", entry2.getLinkSelf().getValue());
	assertEquals(nowInstant.getValueAsString(), entry2.getDeletedAt().getValueAsString());
}
 
开发者ID:jamesagnew,项目名称:hapi-fhir,代码行数:59,代码来源:TransactionTest.java


注:本文中的ca.uhn.fhir.model.api.BundleEntry.setId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。