use of com.oracle.svm.configure.config.ResourceConfiguration in project graal by oracle.
the class ResourceConfigurationTest method printJson.
@Test
public void printJson() {
ResourceConfiguration rc = new ResourceConfiguration();
ConfigurationCondition defaultCond = ConfigurationCondition.alwaysTrue();
rc.addResourcePattern(defaultCond, ".*/Resource.*txt$");
rc.ignoreResourcePattern(defaultCond, ".*/Resource2.txt$");
PipedWriter pw = new PipedWriter();
JsonWriter jw = new JsonWriter(pw);
try (PipedReader pr = new PipedReader()) {
pr.connect(pw);
Thread writerThread = new Thread(() -> {
try (JsonWriter w = jw) {
rc.printJson(w);
} catch (IOException e) {
Assert.fail(e.getMessage());
}
});
List<String> addedResources = new LinkedList<>();
List<String> ignoredResources = new LinkedList<>();
ResourcesRegistry registry = new ResourcesRegistry() {
@Override
public void addResources(ConfigurationCondition condition, String pattern) {
addedResources.add(pattern);
}
@Override
public void ignoreResources(ConfigurationCondition condition, String pattern) {
ignoredResources.add(pattern);
}
@Override
public void addResourceBundles(ConfigurationCondition condition, String name) {
}
@Override
public void addResourceBundles(ConfigurationCondition condition, String basename, Collection<Locale> locales) {
}
@Override
public void addClassBasedResourceBundle(ConfigurationCondition condition, String basename, String className) {
}
};
ResourceConfigurationParser rcp = new ResourceConfigurationParser(registry, true);
writerThread.start();
rcp.parseAndRegister(pr);
writerThread.join();
Assert.assertTrue(addedResources.contains(".*/Resource.*txt$"));
Assert.assertTrue(ignoredResources.contains(".*/Resource2.txt$"));
} catch (IOException | InterruptedException e) {
e.printStackTrace();
Assert.fail(e.getMessage());
}
}
use of com.oracle.svm.configure.config.ResourceConfiguration in project graal by oracle.
the class TraceProcessor method getResourceConfiguration.
public ResourceConfiguration getResourceConfiguration() {
ResourceConfiguration result = reflectionProcessor.getResourceConfiguration();
if (omittedConfigProcessor != null) {
result = new ResourceConfiguration(result);
result.removeAll(omittedConfigProcessor.reflectionProcessor.getResourceConfiguration());
}
return result;
}
use of com.oracle.svm.configure.config.ResourceConfiguration in project graal by oracle.
the class ConfigurationWithOriginsResultWriter method createNewTraceProcessor.
private TraceProcessor createNewTraceProcessor() {
TypeConfiguration jniConfig = new TypeConfiguration();
TypeConfiguration reflectConfig = new TypeConfiguration();
ProxyConfiguration proxyConfig = new ProxyConfiguration();
ResourceConfiguration resourceConfig = new ResourceConfiguration();
SerializationConfiguration serializationConfiguration = new SerializationConfiguration();
PredefinedClassesConfiguration predefinedClassesConfiguration = new PredefinedClassesConfiguration(new Path[0], null);
return new TraceProcessor(advisor, jniConfig, reflectConfig, proxyConfig, resourceConfig, serializationConfiguration, predefinedClassesConfiguration, null);
}
use of com.oracle.svm.configure.config.ResourceConfiguration in project graal by oracle.
the class ResourceConfigurationTest method anyResourceMatches.
@Test
public void anyResourceMatches() {
ResourceConfiguration rc = new ResourceConfiguration();
ConfigurationCondition defaultCond = ConfigurationCondition.alwaysTrue();
rc.addResourcePattern(defaultCond, ".*/Resource.*txt$");
Assert.assertTrue(rc.anyResourceMatches("com/my/app/Resource0.txt"));
Assert.assertTrue(rc.anyResourceMatches("com/my/app/Resource1.txt"));
Assert.assertTrue(rc.anyResourceMatches("/Resource2.txt"));
Assert.assertTrue(rc.anyResourceMatches("/Resource3.txt"));
rc.ignoreResourcePattern(defaultCond, ".*/Resource2.txt$");
Assert.assertTrue(rc.anyResourceMatches("com/my/app/Resource0.txt"));
Assert.assertTrue(rc.anyResourceMatches("com/my/app/Resource1.txt"));
Assert.assertFalse(rc.anyResourceMatches("/Resource2.txt"));
Assert.assertTrue(rc.anyResourceMatches("/Resource3.txt"));
}
Aggregations