本文整理了Java中org.eclipse.emf.common.util.URI.segments()
方法的一些代码示例,展示了URI.segments()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。URI.segments()
方法的具体详情如下:
包路径:org.eclipse.emf.common.util.URI
类名称:URI
方法名:segments
[英]If this is a hierarchical URI with a path, returns an array containing the segments of the path; an empty array otherwise. The leading separator in an absolute path is not represented in this array, but a trailing separator is represented by an empty-string segment as the final element.
[中]如果这是一个带有路径的层次URI,则返回一个包含路径段的数组;否则将创建空数组。绝对路径中的前导分隔符不在该数组中表示,但尾随分隔符由作为最终元素的空字符串段表示。
代码示例来源:origin: fr.inria.atlanmod.neoemf/neoemf-core
@Override
public String[] segments() {
return internalUri.segments();
}
代码示例来源:origin: at.bestsolution.efxclipse.eclipse/org.eclipse.emf.common
@Override
public String[] segments()
{
return uri.segments();
}
代码示例来源:origin: atlanmod/NeoEMF
@Override
public String[] segments() {
return base.segments();
}
代码示例来源:origin: org.eclipse.xtext/ui
protected Integer _compare(IResourceDescription rd0, IResourceDescription rd1) {
String[] segments0 = rd0.getURI().segments();
String[] segments1 = rd1.getURI().segments();
for(int i=0; i<Math.min(segments0.length, segments1.length); ++i) {
int compareToIgnoreCase = segments0[i].compareToIgnoreCase(segments1[i]);
if(compareToIgnoreCase != 0)
return compareToIgnoreCase;
}
return segments0.length - segments1.length;
}
代码示例来源:origin: atlanmod/NeoEMF
@Nonnull
@Override
public URI createRemoteUri(InetAddress host, int port, URI model) {
checkNotNull(model, "model");
checkNotNull(model.segments(), "model.segments");
checkArgument(model.segments().length == 1, "model.segments must contains only one occurence");
return createRemoteUri(host, port, model.segments()[0]);
}
代码示例来源:origin: atlanmod/NeoEMF
@Nonnull
@Override
public URI createRemoteUri(String host, int port, URI model) {
checkNotNull(model, "model");
checkNotNull(model.segments(), "model.segments");
checkArgument(model.segments().length == 1, "model.segments must contains only one occurence");
return createRemoteUri(host, port, model.segments()[0]);
}
代码示例来源:origin: org.eclipse/xtext
protected boolean isPrefix(URI prefix, URI uri) {
if (prefix.scheme() == null || !prefix.scheme().equals(uri.scheme()))
return false;
String[] prefixSeg = prefix.segments();
String[] uriSeg = uri.segments();
if (prefixSeg.length == 0 || uriSeg.length == 0)
return false;
if (!"".equals(prefixSeg[prefixSeg.length - 1])) // this is true when the URI has a trailing slash ("/").
return false;
if (uriSeg.length < prefixSeg.length - 1)
return false;
for (int i = 0; i < prefixSeg.length - 1; i++)
if (!uriSeg[i].equals(prefixSeg[i]))
return false;
return true;
}
}
代码示例来源:origin: org.eclipse/org.eclipse.datatools.connectivity.sqm.core.ui
public static String getResourcePath (Resource resource)
{
String fileName = ""; //$NON-NLS-1$
if (resource == null || resource.getURI() == null)
{
return null;
}
String [] segments = resource.getURI().segments();
for (int j = 1, n = segments.length; j < n ; j++)
{
fileName += (segments[j].indexOf(File.separator) != -1)? segments[j] : File.separator + segments[j];
}
return fileName;
}
代码示例来源:origin: org.jabylon/properties
private Resolvable<?, Resolvable<?, ?>> getOrCreateParent(ProjectLocale projectLocale, URI childURI) {
Resolvable<?, Resolvable<?, ?>> currentParent = projectLocale;
String[] segments = childURI.segments();
for (int i = 0; i < segments.length - 1; i++) {
currentParent = getOrCreate(currentParent, URI.decode(segments[i]));
}
return currentParent;
}
代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.util
/**
* A URI is a prefix of another URI if:
* <br/>
* <ul>
* <li>Both have the same scheme</li>
* <li>The prefix ends with a trailing separator</li>
* <li>The segments of both URIs match up to the prefix's length</li>
* </ul>
*/
public static boolean isPrefixOf(URI prefix, URI uri) {
if (prefix.scheme() == null || !prefix.scheme().equals(uri.scheme()))
return false;
String[] prefixSeg = prefix.segments();
String[] uriSeg = uri.segments();
if (prefixSeg.length == 0 || uriSeg.length == 0)
return false;
if (!prefix.hasTrailingPathSeparator())
return false;
if (uriSeg.length < prefixSeg.length - 1)
return false;
for (int i = 0; i < prefixSeg.length - 1; i++)
if (!uriSeg[i].equals(prefixSeg[i]))
return false;
return true;
}
代码示例来源:origin: org.jabylon/rest.api
@Override
protected void doPut(final HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
URI uri = URI.createURI(req.getPathInfo());
String[] segmentArray = uri.segments();
if (segmentArray.length == 1)
putProject(req, uri, resp);
else if (segmentArray.length == 2)
putVersion(req, uri, resp);
else if (segmentArray.length == 3 && uri.hasTrailingPathSeparator())
putLocale(req, uri, resp);
else
putPropertyFile(req, uri, resp);
}
代码示例来源:origin: org.eclipse/org.eclipse.jem.util
protected URI normalizePluginURI(URI uri, String fragment) {
if (uri.segmentCount() < 2)
return uri; // Invalid, just let it go on.
// See if already normalized.
int u_scoreNdx = uri.segment(1).lastIndexOf('_');
if (u_scoreNdx != -1) {
// Not normalized. Remove the version to make it normalized.
String[] segments = uri.segments();
segments[1] = segments[1].substring(0, u_scoreNdx);
return URI.createHierarchicalURI(uri.scheme(), uri.authority(), uri.device(), segments, uri.query(), fragment);
} else
return uri;
}
代码示例来源:origin: atlanmod/NeoEMF
@Test
void testCreateRemoteUriWithIPAddr() throws UnknownHostException {
final URI uri = factory.createRemoteUri(InetAddress.getByName("192.168.0.1"), 1234, "test");
assertThat(uri.isHierarchical()).isTrue();
assertThat(uri.scheme()).isEqualTo(SCHEME);
assertThat(uri.host()).isEqualTo("192.168.0.1");
assertThat(uri.port()).isEqualTo(Integer.toString(1234));
assertThat(uri.segments()).containsExactly("test");
}
代码示例来源:origin: atlanmod/NeoEMF
@Test
void testCreateRemoteUriWithStringAddr() {
final URI uri = factory.createRemoteUri("192.168.0.1", 1234, "test");
assertThat(uri.isHierarchical()).isTrue();
assertThat(uri.scheme()).isEqualTo(SCHEME);
assertThat(uri.host()).isEqualTo("192.168.0.1");
assertThat(uri.port()).isEqualTo(Integer.toString(1234));
assertThat(uri.segments()).containsExactly("test");
}
代码示例来源:origin: atlanmod/NeoEMF
@Test
void testCreateRemoteUriWithStringLocal() {
final URI uri = factory.createRemoteUri("localhost", 1234, "test");
assertThat(uri.isHierarchical()).isTrue();
assertThat(uri.scheme()).isEqualTo(SCHEME);
assertThat(uri.host()).isEqualTo("127.0.0.1");
assertThat(uri.port()).isEqualTo(Integer.toString(1234));
assertThat(uri.segments()).containsExactly("test");
}
代码示例来源:origin: atlanmod/NeoEMF
@Nonnull
@Override
public URI createLocalUri(File file) {
checkNotNull(file, "file");
final URI fileUri = URI.createFileURI(file.getAbsolutePath());
final URI uri = URI.createHierarchicalURI(scheme(),
fileUri.authority(),
fileUri.device(),
fileUri.segments(),
fileUri.query(),
fileUri.fragment());
return createLocalUri(uri);
}
代码示例来源:origin: fr.inria.atlanmod.neoemf/neoemf-core
@Override
public String toFileString() {
URI uri = URI.createHierarchicalURI(
FILE_SCHEME,
internalUri.authority(),
internalUri.device(),
internalUri.segments(),
internalUri.query(),
internalUri.fragment());
return uri.toFileString();
}
代码示例来源:origin: atlanmod/NeoEMF
@Override
public String toFileString() {
return URI.createHierarchicalURI(
SCHEME,
base.authority(),
base.device(),
base.segments(),
base.query(),
base.fragment()
).toFileString();
}
代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.util
/**
* converts the file URIs with an absent authority to one with an empty
*/
public URI withEmptyAuthority(final URI uri) {
URI _xifexpression = null;
if ((uri.isFile() && (uri.authority() == null))) {
_xifexpression = URI.createHierarchicalURI(uri.scheme(), "", uri.device(), uri.segments(), uri.query(), uri.fragment());
} else {
_xifexpression = uri;
}
return _xifexpression;
}
}
代码示例来源:origin: org.jabylon/properties
private static void createMissingChildren(ProjectLocale template, ProjectLocale other) {
EList<PropertyFileDescriptor> descriptors = template.getDescriptors();
for (PropertyFileDescriptor descriptor : descriptors) {
URI derivedLocation = computeLocaleResourceLocation(other.getLocale(), other.getParent(), descriptor.getLocation());
Resolvable<?, ?> child = other.resolveChild(derivedLocation);
if(child==null){
Resolvable<?, ?> folder = getOrCreateFolder(other, derivedLocation.trimSegments(1).segments());
PropertyFileDescriptor localeDescriptor = PropertiesFactory.eINSTANCE.createPropertyFileDescriptor();
localeDescriptor.setMaster(descriptor);
localeDescriptor.setVariant(other.getLocale());
localeDescriptor.setLocation(derivedLocation);
localeDescriptor.setProjectLocale(other);
localeDescriptor.setParent(folder);
localeDescriptor.setName(URI.decode(derivedLocation.lastSegment()));
}
}
}
内容来源于网络,如有侵权,请联系作者删除!