@Override protected Resource newResource(String path) { return new ClasspathResource(classLoader, path); }
@Override public URL toURL() { try { acquireReadLock(); if (!urlResolved) { resolveURL(); } return url; } finally { releaseReadLock(); } }
private void resolveURL() { try { upgradeReadLockToWriteLock(); if (!urlResolved) { url = classLoader.getResource(getPath()); validateURL(url); urlResolved = true; } } finally { downgradeWriteLockToReadLock(); } }
@Override public String toString() { return "classpath:" + getPath(); }
@Override public String toString() { return "classpath:" + getPath(); }
@Override protected Resource newResource(String path) { return new ClasspathResource(classLoader, path); }
private void resolveURL() { try { upgradeReadLockToWriteLock(); if (!urlResolved) { url = classLoader.getResource(getPath()); validateURL(url); urlResolved = true; } } finally { downgradeWriteLockToReadLock(); } }
@Override public URL toURL() { try { acquireReadLock(); if (!urlResolved) { resolveURL(); } return url; } finally { releaseReadLock(); } }
@Override public int hashCode() { return 227 ^ getPath().hashCode(); }
public ClasspathAssetFactory(ResponseCompressionAnalyzer compressionAnalyzer, ResourceChangeTracker resourceChangeTracker, StreamableResourceSource streamableResourceSource, AssetPathConstructor assetPathConstructor, ClasspathAssetAliasManager aliasManager) { super(compressionAnalyzer, resourceChangeTracker, streamableResourceSource, assetPathConstructor, new ClasspathResource("")); this.aliasManager = aliasManager; }
@Override public int hashCode() { return 227 ^ getPath().hashCode(); }
public ClasspathResourceSymbolProvider(String path) { super(new ClasspathResource(path)); } }
public ClasspathResourceSymbolProvider(String path) { super(new ClasspathResource(path)); } }
public TypeScriptCompiler(final OperationTracker tracker, @Path("classpath:org/apache/tapestry5/webresources/internal/typescript.js") final Resource typescript) { this.executorPool = new RhinoExecutorPool(tracker, Arrays.<Resource> asList(typescript, new ClasspathResource("org/apache/tapestry5/webresources/internal/invoke-typescript.js"))); }
private Resource getResource(String file) { String packageName = getClass().getPackage().getName(); String path = packageName.replace('.', '/') + "/" + file; ClassLoader loader = getClass().getClassLoader(); return new ClasspathResource(loader, path); }
private EntityManagerSourceImpl create(final String persistenceUnitFile) { PersistenceUnitConfigurer configurer = new PersistenceUnitConfigurer() { @Override @SuppressWarnings( {"unchecked", "rawtypes"}) public void configure(TapestryPersistenceUnitInfo unitInfo) { Map properties = new HashMap(); properties.put("MYKEY", "MYVALUE"); unitInfo.transactionType(PersistenceUnitTransactionType.RESOURCE_LOCAL) .persistenceProviderClassName( "org.eclipse.persistence.jpa.PersistenceProvider") .excludeUnlistedClasses(true) .addProperty("javax.persistence.jdbc.user", "sa") .addProperty("javax.persistence.jdbc.driver", "org.h2.Driver") .addProperty("javax.persistence.jdbc.url", "jdbc:h2:mem:test") .setEntityManagerProperties(properties); } }; Map<String, PersistenceUnitConfigurer> configurerMap = CollectionFactory .<String, PersistenceUnitConfigurer>newMap(); configurerMap.put("defaultpropertytest", configurer); EntityManagerSourceImpl emSource = new EntityManagerSourceImpl( LoggerFactory.getLogger(EntityManagerSourceImplTest.class), new ClasspathResource( persistenceUnitFile), null, configurerMap); return emSource; }
@Test public void read_utf() throws Exception { Resource utf8 = new ClasspathResource("org/apache/tapestry5/internal/services/messages/utf8.properties"); PropertiesFileParser parser = getService(PropertiesFileParser.class); Map<String, String> properties = parser.parsePropertiesFile(utf8); assertEquals(properties.get("tapestry"), "\u30bf\u30da\u30b9\u30c8\u30ea\u30fc"); assertEquals(properties.get("version"), "5"); } }
@Test public void multiple_persistence_units_include_unlisted_classes() { Exception exception = null; try { new EntityManagerSourceImpl( LoggerFactory.getLogger(EntityManagerSourceImplTest.class), new ClasspathResource("multiple-persistence-units-include-unlisted-classes.xml"), null, CollectionFactory.<String, PersistenceUnitConfigurer>newMap()); fail("Exception expected"); } catch (Exception e) { exception = e; } assertNotNull(exception); assertEquals(exception.getMessage(), "Persistence units 'TestUnit, TestUnit2' are configured to include managed classes that have not been explicitly listed. This is forbidden when multiple persistence units are used in the same application. Please configure persistence units to exclude unlisted managed classes (e.g. by removing <exclude-unlisted-classes> element) and include them explicitly."); }