protected Resource getResource(String input, IResourceFactory resourceFactory) throws IOException { InputStream inputStream = new ByteArrayInputStream(input.getBytes(INTERNAL_ENCODING)); try { Resource resource = resourceFactory.createResource(URI.createURI("dummy.simpleexpressions")); resource.load(inputStream, Collections.singletonMap(XtextResource.OPTION_ENCODING, INTERNAL_ENCODING)); if (!resource.getErrors().isEmpty()) { throw new RuntimeException(input + " - " + resource.getErrors().toString()); } inputStream.close(); return resource; } finally { inputStream.close(); } }
/** * @since 2.3 */ protected Resource createResource(java.net.URI uri) { ResourceSet resourceSet = getResourceSet(null); URI emfUri = URI.createURI(uri.toString()); configureResourceSet(resourceSet, emfUri); XtextResource resource = (XtextResource) resourceFactory.createResource(emfUri); resourceSet.getResources().add(resource); resource.setValidationDisabled(true); return resource; }
public Resource resource(InputStream in, URI uriToUse, Map<?, ?> options, ResourceSet resourceSet) { Resource resource = resourceFactory.createResource(uriToUse); resourceSet.getResources().add(resource); try { resource.load(in, options); return resource; } catch (IOException e) { throw new WrappedException(e); } }
protected Resource resource(InputStream in, URI uriToUse, Map<?, ?> options, ResourceSet resourceSet) { Resource resource = resourceFactory.createResource(uriToUse); resourceSet.getResources().add(resource); try { resource.load(in, options); return resource; } catch (IOException e) { throw new WrappedException(e); } }
@SuppressWarnings("unchecked") public T parse(InputStream in, URI uriToUse, Map<?, ?> options, ResourceSet resourceSet) { Resource resource = resourceFactory.createResource(uriToUse); resourceSet.getResources().add(resource); try { resource.load(in, options); final T root = (T) (resource.getContents().isEmpty() ? null : resource.getContents().get(0)); return root; } catch (IOException e) { throw new WrappedException(e); } }
@SuppressWarnings("unchecked") public T parse(InputStream in, URI uriToUse, Map<?,?> options, ResourceSet resourceSet) { Resource resource = resourceFactory.createResource(uriToUse); resourceSet.getResources().add(resource); try { resource.load(in, options); final T root = (T) (resource.getContents().isEmpty()? null : resource.getContents().get(0)); return root; } catch (IOException e) { throw new WrappedException(e); } }
/** Create a synthetic resource. * * @param resourceSet the resourceSet. * @return the resource. */ @Pure protected Resource createResource(ResourceSet resourceSet) { URI uri = computeUnusedUri(resourceSet); Resource resource = getResourceFactory().createResource(uri); resourceSet.getResources().add(resource); return resource; }
protected XtextResource doGetResource(InputStream in, URI uri) throws Exception { XtextResourceSet rs = get(XtextResourceSet.class); rs.setClasspathURIContext(getClass()); XtextResource resource = (XtextResource) getResourceFactory().createResource(uri); rs.getResources().add(resource); resource.load(in, null); if (resource instanceof LazyLinkingResource) { ((LazyLinkingResource) resource).resolveLazyCrossReferences(CancelIndicator.NullImpl); } else { EcoreUtil.resolveAll(resource); } return resource; }
protected XtextResource createResource(Object element) { XtextResource xtextResource = null; if (element instanceof IResourceProvider) { IResourceProvider resourceProvider = (IResourceProvider) element; IResource resource = resourceProvider.getResource(); if (resource != null) { ResourceSet resourceSet = resourceSetProvider.get(resource.getProject()); URI uri = URI.createURI(SCHEME_REVISION + resource.getName()); xtextResource = (XtextResource) resourceFactory.createResource(uri); xtextResource.setValidationDisabled(true); resourceSet.getResources().add(xtextResource); } } return xtextResource; }
protected XtextResource doGetResource(InputStream in, URI uri) throws Exception { XtextResourceSet rs = get(XtextResourceSet.class); rs.setClasspathURIContext(getClass()); XtextResource resource = (XtextResource) getResourceFactory().createResource(uri); rs.getResources().add(resource); resource.load(in, null); if (resource instanceof LazyLinkingResource) { ((LazyLinkingResource) resource).resolveLazyCrossReferences(CancelIndicator.NullImpl); } else { EcoreUtil.resolveAll(resource); } return resource; }
protected XtextResource doGetResource(InputStream in, URI uri) throws Exception { XtextResourceSet rs = get(XtextResourceSet.class); rs.setClasspathURIContext(getClass()); XtextResource resource = (XtextResource) getResourceFactory().createResource(uri); rs.getResources().add(resource); resource.load(in, null); if (resource instanceof LazyLinkingResource) { ((LazyLinkingResource) resource).resolveLazyCrossReferences(CancelIndicator.NullImpl); } else { EcoreUtil.resolveAll(resource); } return resource; }
/** Format the given code. * * @param sarlCode the code to format. * @param resourceSet the resource set that sohuld contains the code. This resource set may be * used for resolving types by the underlying code. * @return the code to format. */ @Pure public String format(String sarlCode, ResourceSet resourceSet) { try { final URI createURI = URI.createURI("synthetic://to-be-formatted." + this.fileExtension); //$NON-NLS-1$ final Resource res = this.resourceFactory.createResource(createURI); if (res instanceof XtextResource) { final XtextResource resource = (XtextResource) res; final EList<Resource> resources = resourceSet.getResources(); resources.add(resource); try (StringInputStream stringInputStream = new StringInputStream(sarlCode)) { resource.load(stringInputStream, Collections.emptyMap()); return formatResource(resource); } finally { resources.remove(resource); } } return sarlCode; } catch (Exception exception) { throw Exceptions.sneakyThrow(exception); } }
protected Resource createResourceFor(IStorage storage) throws CoreException { ResourceSet resourceSet = getResourceSet(storage); URI uri = URI.createPlatformResourceURI(storage.getFullPath().toString(), true); configureResourceSet(resourceSet, uri); URI uriForResource = uri; if (!uri.isPlatform()) { uriForResource = resourceSet.getURIConverter().normalize(uri); } XtextResource resource = (XtextResource) resourceFactory.createResource(uriForResource); resourceSet.getResources().add(resource); resource.setValidationDisabled(isValidationDisabled(storage)); return resource; }
/** Create an expression but does not change the container. * * @param expression the textual representation of the expression. * @return the expression. */ @Pure protected XExpression fromString(String expression) { if (!Strings.isEmpty(expression)) { ResourceSet resourceSet = this.context.eResource().getResourceSet(); URI uri = computeUnusedUri(resourceSet); Resource resource = getResourceFactory().createResource(uri); resourceSet.getResources().add(resource); try (StringInputStream is = new StringInputStream(generateExpressionCode(expression))) { resource.load(is, null); SarlScript script = resource.getContents().isEmpty() ? null : (SarlScript) resource.getContents().get(0); SarlEvent topElement = (SarlEvent) script.getXtendTypes().get(0); SarlField member = (SarlField) topElement.getMembers().get(0); return member.getInitialValue(); } catch (Throwable exception) { throw new RuntimeException(exception); } finally { resourceSet.getResources().remove(resource); } } throw new IllegalArgumentException("not a valid expression"); }
static JvmParameterizedTypeReference parseType(Notifier context, String typeName, AbstractBuilder caller) { ResourceSet resourceSet = toResource(context).getResourceSet(); URI uri = caller.computeUnusedUri(resourceSet); Resource resource = caller.getResourceFactory().createResource(uri); resourceSet.getResources().add(resource); try (StringInputStream is = new StringInputStream(generateTypenameCode(typeName))) { resource.load(is, null); SarlScript script = resource.getContents().isEmpty() ? null : (SarlScript) resource.getContents().get(0); SarlEvent topElement = (SarlEvent) script.getXtendTypes().get(0); SarlField member = (SarlField) topElement.getMembers().get(0); JvmTypeReference reference = member.getType(); if (reference instanceof JvmParameterizedTypeReference) { final JvmParameterizedTypeReference pref = (JvmParameterizedTypeReference) reference; if (!pref.getArguments().isEmpty()) { EcoreUtil2.resolveAll(resource); return pref; } } } catch (Exception exception) { throw new TypeNotPresentException(typeName, exception); } finally { resourceSet.getResources().remove(resource); } throw new TypeNotPresentException(typeName, null); }
Resource _createResource = this.resourceFactory.createResource(uri); final XtextResource resource = ((XtextResource) _createResource); final Resource existingResource = resourceSet.getResource(uri, false);
public String format(final String xtendCode) { try { final XtextResourceSet resourceSet = new XtextResourceSet(); Resource _createResource = this.resourceFactory.createResource(URI.createURI("synthetic://to-be-formatted.xtend")); final XtextResource resource = ((XtextResource) _createResource); EList<Resource> _resources = resourceSet.getResources(); _resources.add(resource); StringInputStream _stringInputStream = new StringInputStream(xtendCode); resource.load(_stringInputStream, CollectionLiterals.<Object, Object>emptyMap()); final ITextRegionAccess regionAccess = this.regionAccessBuilder.get().forNodeModel(resource).create(); FormatterRequest _formatterRequest = new FormatterRequest(); final Procedure1<FormatterRequest> _function = (FormatterRequest it) -> { it.setAllowIdentityEdits(false); it.setTextRegionAccess(regionAccess); it.setPreferences(TypedPreferenceValues.castOrWrap(this.cfgProvider.getPreferenceValues(resource))); }; FormatterRequest request = ObjectExtensions.<FormatterRequest>operator_doubleArrow(_formatterRequest, _function); List<ITextReplacement> replacements = this.formatter.format(request); return regionAccess.getRewriter().renderToString(replacements); } catch (Throwable _e) { throw Exceptions.sneakyThrow(_e); } } }
XtextResource resource = (XtextResource) resourceFactory.createResource(uri); rs.getResources().add(resource);