@Override public void loadBundledScheme(@Nonnull String resourceName, @Nonnull Object requestor, @Nonnull ThrowableConvertor<Element, T, Throwable> convertor) { try { URL url = requestor instanceof AbstractExtensionPointBean ? (((AbstractExtensionPointBean)requestor).getLoaderForClass().getResource(resourceName)) : DecodeDefaultsUtil.getDefaults(requestor, resourceName); if (url == null) { // Error shouldn't occur during this operation thus we report error instead of info LOG.error("Cannot read scheme from " + resourceName); return; } addNewScheme(convertor.convert(JDOMUtil.load(URLUtil.openStream(url))), false); } catch (Throwable e) { LOG.error("Cannot read scheme from " + resourceName, e); } }
@Nullable protected <T> T getDefaultState(@Nonnull Object component, @Nonnull String componentName, @Nonnull final Class<T> stateClass) { URL url = DecodeDefaultsUtil.getDefaults(component, componentName); if (url == null) { return null; } try { Element documentElement = JDOMXIncluder.resolve(JDOMUtil.loadDocument(url), url.toExternalForm()).detachRootElement(); PathMacroManager pathMacroManager = getPathMacroManagerForDefaults(); if (pathMacroManager != null) { pathMacroManager.expandPaths(documentElement); } return DefaultStateSerializer.deserializeState(documentElement, stateClass, null); } catch (IOException | JDOMException e) { throw new StateStorageException("Error loading state from " + url, e); } }
@Deprecated @SuppressWarnings("deprecation") private void readDefTemplate(DefaultLiveTemplatesProvider provider, String defTemplate, boolean registerTemplate) throws JDOMException, InvalidDataException, IOException { InputStream inputStream = DecodeDefaultsUtil.getDefaultsInputStream(provider, defTemplate); if (inputStream != null) { TemplateGroup group = readTemplateFile(JDOMUtil.loadDocument(inputStream), defTemplate, true, registerTemplate, provider.getClass().getClassLoader()); if (group != null && group.getReplace() != null) { Collection<TemplateImpl> templates = myTemplates.get(group.getReplace()); for (TemplateImpl template : templates) { removeTemplate(template); } } } }
private void readDefTemplate(DefaultLiveTemplatesProvider provider, String defTemplate, boolean registerTemplate) throws JDOMException, InvalidDataException, IOException { InputStream inputStream = DecodeDefaultsUtil.getDefaultsInputStream(provider, defTemplate); if (inputStream != null) { TemplateGroup group = readTemplateFile(JDOMUtil.load(inputStream), getDefaultTemplateName(defTemplate), true, registerTemplate, provider.getClass().getClassLoader()); if (group != null && group.getReplace() != null) { for (TemplateImpl template : myTemplates.get(group.getReplace())) { removeTemplate(template); } } } }
private void readDefTemplate(DefaultLiveTemplatesProvider provider, String defTemplate, boolean registerTemplate) throws JDOMException, InvalidDataException, IOException { String templateName = getDefaultTemplateName(defTemplate); InputStream inputStream = DecodeDefaultsUtil.getDefaultsInputStream(provider, defTemplate); if (inputStream != null) { TemplateGroup group = readTemplateFile(JDOMUtil.loadDocument(inputStream), templateName, true, registerTemplate, provider.getClass().getClassLoader()); if (group != null && group.getReplace() != null) { Collection<TemplateImpl> templates = myTemplates.get(group.getReplace()); for (TemplateImpl template : templates) { removeTemplate(template); } } } }
public boolean hasState(final Object component, final String componentName, final Class<?> aClass, final boolean reloadData) throws StateStorageException { final URL url = DecodeDefaultsUtil.getDefaults(component, componentName); return url != null; }