Skip to content

Commit

Permalink
refactoring, deleting dead code, alignment to newer plugin API
Browse files Browse the repository at this point in the history
  • Loading branch information
graemerocher committed Dec 15, 2014
1 parent fad4047 commit c9b4a97
Show file tree
Hide file tree
Showing 24 changed files with 1,044 additions and 1,262 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -504,7 +504,9 @@ public BeanBuilder beans(Closure closure) {

public void doWithApplicationContext(ApplicationContext ctx) {
if(plugin instanceof Plugin) {
((Plugin)plugin).doWithApplicationContext();
Plugin pluginObject = (Plugin) plugin;
pluginObject.setApplicationContext(ctx);
pluginObject.doWithApplicationContext();
}
else {
Object[] args = {ctx};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
*/
package org.grails.plugins

import grails.core.GrailsApplication
import grails.plugins.Plugin
import grails.util.GrailsUtil
import org.grails.plugins.codecs.DefaultCodecLookup
import org.grails.commons.CodecArtefactHandler
Expand All @@ -41,7 +43,7 @@ import org.grails.plugins.codecs.XMLCodec
* @author Jeff Brown
* @since 0.4
*/
class CodecsGrailsPlugin {
class CodecsGrailsPlugin extends Plugin {
def version = GrailsUtil.getGrailsVersion()
def dependsOn = [core:version]
def watchedResources = "file:./grails-app/utils/**/*Codec.groovy"
Expand All @@ -64,14 +66,17 @@ class CodecsGrailsPlugin {
RawCodec
]

def onChange = { event ->
@Override
void onChange(Map<String, Object> event) {
def application = grailsApplication
if (application.isArtefactOfType(CodecArtefactHandler.TYPE, event.source)) {
def codecClass = application.addArtefact(CodecArtefactHandler.TYPE, event.source)
event.ctx.codecLookup.reInitialize()
application.addArtefact(CodecArtefactHandler.TYPE, event.source)
applicationContext.getBean('codecLookup', DefaultCodecLookup).reInitialize()
}
}

def doWithSpring = {
@Override
Closure doWithSpring() {{ ->
codecLookup(DefaultCodecLookup)
}
}}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
*/
package org.grails.plugins.databinding

import grails.plugins.Plugin
import grails.util.GrailsUtil
import grails.web.databinding.DataBindingUtils
import grails.web.databinding.GrailsWebDataBinder
Expand All @@ -31,39 +32,46 @@ import org.grails.databinding.converters.web.LocaleAwareBigDecimalConverter
import org.grails.databinding.converters.web.LocaleAwareNumberConverter

/**
* Plugin for configuring the data binding features of Grails
*
* @author Jeff Brown
* @author Graeme Rocher
*
* @since 2.3
*/
class DataBindingGrailsPlugin {

def version = GrailsUtil.getGrailsVersion()
class DataBindingGrailsPlugin extends Plugin {

def doWithSpring = {
def databindingConfig
public static final String TRIM_STRINGS = 'grails.databinding.trimStrings'
public static final String CONVERT_EMPTY_STRINGS_TO_NULL = 'grails.databinding.convertEmptyStringsToNull'
public static final String AUTO_GROW_COLLECTION_LIMIT = 'grails.databinding.autoGrowCollectionLimit'
public static final String DATE_FORMATS = 'grails.databinding.dateFormats'

databindingConfig = application?.config?.grails?.databinding
def version = GrailsUtil.getGrailsVersion()

def autoGrowCollectionLimitSetting = databindingConfig?.autoGrowCollectionLimit
@Override
Closure doWithSpring() {{->
def application = grailsApplication
def config = application.config
boolean trimStringsSetting = config.getProperty(TRIM_STRINGS, Boolean, true)
boolean convertEmptyStringsToNullSetting = config.getProperty(CONVERT_EMPTY_STRINGS_TO_NULL, Boolean, true)
Integer autoGrowCollectionLimitSetting = config.getProperty(AUTO_GROW_COLLECTION_LIMIT, Integer, 256)
List dateFormats = config.getProperty(DATE_FORMATS, List, [])

"${DataBindingUtils.DATA_BINDER_BEAN_NAME}"(GrailsWebDataBinder, ref('grailsApplication')) {

"${DataBindingUtils.DATA_BINDER_BEAN_NAME}"(GrailsWebDataBinder, grailsApplication) {
// trimStrings defaults to TRUE
trimStrings = !Boolean.FALSE.equals(databindingConfig?.trimStrings)

trimStrings = trimStringsSetting
// convertEmptyStringsToNull defaults to TRUE
convertEmptyStringsToNull = !Boolean.FALSE.equals(databindingConfig?.convertEmptyStringsToNull)

convertEmptyStringsToNull = convertEmptyStringsToNullSetting
// autoGrowCollectionLimit defaults to 256
if(autoGrowCollectionLimitSetting instanceof Integer) {
autoGrowCollectionLimit = autoGrowCollectionLimitSetting
}
autoGrowCollectionLimit = autoGrowCollectionLimitSetting
}

timeZoneConverter(TimeZoneConverter)

defaultDateConverter(DateConversionHelper) {
if(databindingConfig?.dateFormats instanceof List) {
formatStrings = databindingConfig.dateFormats
if(dateFormats) {
formatStrings = dateFormats
}
}
[Short, Short.TYPE,
Expand All @@ -90,5 +98,5 @@ class DataBindingGrailsPlugin {
halXmlDataBindingSourceCreator(HalXmlDataBindingSourceCreator)

defaultCurrencyConverter CurrencyValueConverter
}
}}
}
Loading

0 comments on commit c9b4a97

Please sign in to comment.