Last active
August 29, 2015 14:04
-
-
Save bclozel/b2a1e04d35e691446e3b to your computer and use it in GitHub Desktop.
SPR-11982 - Enhance ResourceHandlerRegistration API for resource transformers/resolvers
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!-- developement --> | |
<mvc:resources mapping="/resources/**" location="classpath:static/"> | |
<mvc:resolvers> | |
<mvc:version-resolver> | |
<mvc:fixed-version version="dev" patterns="/**/*.js"/> | |
<mvc:content-version patterns="/**" /> | |
</mvc:version-resolver> | |
<mvc:path-resolver/> | |
</mvc:resolvers> | |
</mvc:resources> | |
<!-- production --> | |
<mvc:resources mapping="/resources/**" location="classpath:static/"> | |
<mvc:resolvers> | |
<mvc:caching-resolver cache="myCache"/> | |
<mvc:version-resolver> | |
<mvc:fixed-version version="${appVersion}" patterns="/**/*.js"/> | |
<mvc:content-version patterns="/**" /> | |
</mvc:version-resource-resolver> | |
<mvc:path-resolver /> | |
</mvc:resolvers> | |
<mvc:transformers> | |
<mvc:caching-transformer cache="myCache"/> | |
</mvc:transformers> | |
</mvc:resources> | |
<bean id="myCache" ... /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!-- developement --> | |
<mvc:resources mapping="/resources/**" location="classpath:static/"> | |
<mvc:resolvers> | |
<mvc:version-resolver> | |
<mvc:fixed-version version="dev" patterns="/**/*.js"/> | |
<mvc:content-version patterns="/**" /> | |
</mvc:version-resolver> | |
<mvc:path-resolver/> | |
</mvc:resolvers> | |
<mvc:transformers> | |
<bean class="org.example.resources.less.LessResourceTransformer"/> | |
</mvc:transformers> | |
</mvc:resources> | |
<!-- production --> | |
<mvc:resources mapping="/resources/**" location="classpath:static/"> | |
<mvc:resolvers> | |
<mvc:caching-resolver cache="myCache"/> | |
<mvc:version-resolver> | |
<mvc:fixed-version version="${appVersion}" patterns="/**/*.js"/> | |
<mvc:content-version patterns="/**" /> | |
</mvc:version-resolver> | |
<mvc:path-resolver/> | |
</mvc:resolvers> | |
<mvc:transformers> | |
<mvc:caching-transformer cache="myCache"/> | |
<bean class="org.example.resources.less.LessResourceTransformer"/> | |
</mvc:transformers> | |
</mvc:resources> | |
<bean id="myCache" ... /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Dart + CSS webapp | |
* We could do the same for coffeeScript, TypeScript, etc | |
* just change the file extension accordingly in the version strategies. | |
*/ | |
if (this.env.acceptsProfiles("development")) { | |
registry.addResourceHandler("/**") | |
.addResourceLocations("file:///" + getProjectRootRequired() + "/client/src/") | |
.addContentVersionStrategy("/**") | |
.addFixedVersionStrategy("/**/*.dart", "dev") | |
.addPathResolver() | |
.setCachePeriod(0); | |
} | |
else { | |
registry.addResourceHandler("/**") | |
.addResourceLocations("classpath:static/") | |
.enableResourceCaching() // enable caching for resolvers *and* transformers | |
.addContentVersionStrategy("/**") | |
.addFixedVersionStrategy("/**/*.dart", "dev") | |
.addPathResolver(); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* JavaScript + CSS webapp | |
*/ | |
if (this.env.acceptsProfiles("development")) { | |
registry.addResourceHandler("/**") | |
.addResourceLocations("file:///" + getProjectRootRequired() + "/client/src/") | |
.addContentVersionStrategy("/**") | |
.addFixedVersionStrategy("/**/*.js", "dev") | |
.addPathResolver() | |
.setCachePeriod(0); | |
} | |
else { | |
registry.addResourceHandler("/**") | |
.addResourceLocations("classpath:static/") | |
.enableResourceCaching() // enable caching for resolvers *and* transformers | |
.addContentVersionStrategy("/**") | |
.addFixedVersionStrategy("/**/*.js", "dev") | |
.addPathResolver(); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* JavaScript + LESS webapp | |
* Additional example - in case we create a LESSResourceTransformer | |
*/ | |
if (this.env.acceptsProfiles("development")) { | |
registry.addResourceHandler("/**") | |
.addResourceLocations("file:///" + getProjectRootRequired() + "/client/src/") | |
.addTransformer(new LessCssTransformer()) | |
.addContentVersionStrategy("/**") | |
.addFixedVersionStrategy("/**/*.js", "dev"); | |
.addPathResolver() | |
.setCachePeriod(0); | |
} | |
else { | |
registry.addResourceHandler("/**") | |
.addResourceLocations("classpath:static/") | |
.enableResourceCaching() // enable caching for resolvers *and* transformers | |
.addResolver(new CachingResourceResolver(myCache)) | |
.addTransformer(new CachingResourceTransformer(myCache)) | |
.addContentVersionStrategy("/**") | |
.addFixedVersionStrategy("/**/*.js", "dev") | |
.addPathResolver(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment