source: trunk/grails-app/conf/Config.groovy @ 1362

Last change on this file since 1362 was 1362, checked in by work@…, 10 years ago
  • and another one for issue #219
  • Property svn:keywords set to Author Date Rev
File size: 6.7 KB
Line 
1import dbnp.rest.common.CommunicationManager
2import org.apache.commons.lang.RandomStringUtils
3
4/**
5 * Application Configuration
6 *
7 * @author Jeroen Wesbeek
8 * @since 20100520
9 *
10 * Revision information:
11 * $Rev: 1362 $
12 * $Author: work@osx.eu $
13 * $Date: 2011-01-11 14:43:00 +0000 (di, 11 jan 2011) $
14 */
15
16// locations to search for config files that get merged into the main config
17// config files can either be Java properties files or ConfigSlurper scripts
18grails.config.locations = [
19        // the WAR and run-app default location
20        "classpath:${grails.util.GrailsUtil.environment}-config.properties",
21
22        // the external configuration
23        "file:${userHome}/.grails-config/${appName}-${grails.util.GrailsUtil.environment}-config.properties"
24]
25
26grails.mime.file.extensions = true // enables the parsing of file extensions from URLs into the request format
27grails.mime.use.accept.header = false
28grails.mime.types = [html: ['text/html', 'application/xhtml+xml'],
29        xml: ['text/xml', 'application/xml'],
30        text: 'text/plain',
31        js: 'text/javascript',
32        rss: 'application/rss+xml',
33        atom: 'application/atom+xml',
34        css: 'text/css',
35        csv: 'text/csv',
36        all: '*/*',
37        json: ['application/json', 'text/json'],
38        form: 'application/x-www-form-urlencoded',
39        multipartForm: 'multipart/form-data'
40]
41// The default codec used to encode data with ${}
42grails.views.default.codec = "none" // none, html, base64
43grails.views.gsp.encoding = "UTF-8"
44grails.converters.encoding = "UTF-8"
45
46// enabled native2ascii conversion of i18n properties files
47grails.enable.native2ascii = true
48
49// log4j configuration
50log4j = {
51        // Example of changing the log pattern for the default console
52        // appender:
53        //
54        //appenders {
55        //    console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n')
56        //}
57       
58        // info "grails.app"
59
60        error 'org.codehaus.groovy.grails.web.servlet',  //  controllers
61                'org.codehaus.groovy.grails.web.pages', //  GSP
62                'org.codehaus.groovy.grails.web.sitemesh', //  layouts
63                'org.codehaus.groovy.grails.web.mapping.filter', // URL mapping
64                'org.codehaus.groovy.grails.web.mapping', // URL mapping
65                'org.codehaus.groovy.grails.commons', // core / classloading
66                'org.codehaus.groovy.grails.plugins', // plugins
67                'org.codehaus.groovy.grails.orm.hibernate', // hibernate integration
68                'org.springframework',
69                'org.hibernate'
70
71        warn 'org.mortbay.log'
72
73        //info 'org.codehaus.groovy.grails.web.servlet',
74        //       'org.codehaus.groovy.grails.plugins'
75        //
76        //debug 'org.codehaus.groovy.grails.plugins'
77}
78
79graphviz {
80        // graphviz installation path is dependent on OS
81        // (requirement for class diagram plugin)
82        switch (System.properties["os.name"]) {
83                case "Mac OS X":
84                        // define mac path to Graphviz dot executable
85                        // (install using macports: sudo port install graphviz)
86                        dot.executable = "/opt/local/bin/dot"
87                        break
88                default:
89                        // assume the linux default path
90                        dot.executable = "/usr/bin/dot"
91        }
92}
93
94// cryptography settings
95// @see WizardTaglib.groovy (encrypt)
96// @see TemplateEditorController.groovy (decrypt)
97crypto {
98        shared.secret = RandomStringUtils.random(32, true, true)
99}
100
101// GSCF specific configuration
102gscf {
103        domain = [
104                // importable entities
105                // use: grailsApplication.config.gscf.domain.entities
106                entities: [
107                        // dbnp.data
108                        'dbnp.data.FeatureBase',
109                        'dbnp.data.FeatureType',
110                        'dbnp.data.Ontology',
111                        'dbnp.data.Term',
112
113                        // dbnp.studycapturing
114                        'dbnp.studycapturing.Assay',
115                        'dbnp.studycapturing.AssayModule',
116                        'dbnp.studycapturing.AssayType',
117                        'dbnp.studycapturing.Compound',
118                        'dbnp.studycapturing.Event',
119                        'dbnp.studycapturing.EventGroup',
120                        'dbnp.studycapturing.Person',
121                        'dbnp.studycapturing.PersonAffilitation',
122                        'dbnp.studycapturing.PersonRole',
123                        'dbnp.studycapturing.Publication',
124                        'dbnp.studycapturing.Sample',
125                        'dbnp.studycapturing.SamplingEvent',
126                        'dbnp.studycapturing.Study',
127                        'dbnp.studycapturing.StudyPerson',
128                        'dbnp.studycapturing.Subject',
129                        'dbnp.studycapturing.Template',
130                        'dbnp.studycapturing.TemplateEntity',
131                        'dbnp.studycapturing.TemplateField',
132                        'dbnp.studycapturing.TemplateFieldListItem',
133                        'dbnp.studycapturing.TemplateFieldType'
134                ],
135
136                // importable entities
137                // use: grailsApplication.config.gscf.domain.importableEntities
138                // @see ImporterController
139                importableEntities: [
140                        event: [name: 'Event', entity: 'dbnp.studycapturing.Event', encrypted:''],
141                        sample: [name: 'Sample', entity: 'dbnp.studycapturing.Sample', encrypted:''],
142                        study: [name: 'Study', entity: 'dbnp.studycapturing.Study', encrypted:''],
143                        subject: [name: 'Subject', entity: 'dbnp.studycapturing.Subject', encrypted:''],
144                        samplingevent: [name: 'SamplingEvent', entity: 'dbnp.studycapturing.SamplingEvent', encrypted:'']
145
146                ]
147        ]
148}
149
150// jquery plugin
151grails.views.javascript.library = "jquery"
152
153// see http://jira.codehaus.org/browse/GRAILSPLUGINS-2711
154jquery.version = "1.4.4"
155
156// Needed for the Spring Security Core plugin:
157grails.plugins.springsecurity.userLookup.userDomainClassName = 'dbnp.authentication.SecUser'
158grails.plugins.springsecurity.userLookup.authorityJoinClassName = 'dbnp.authentication.SecUserSecRole'
159grails.plugins.springsecurity.authority.className = 'dbnp.authentication.SecRole'
160grails.plugins.springsecurity.password.algorithm = 'SHA-256'
161grails.plugins.springsecurity.password.encodeHashAsBase64 = true
162grails.plugins.springsecurity.dao.reflectionSaltSourceProperty = 'username' // Use the persons username as salt for encryption
163grails.plugins.springsecurity.securityConfigType = grails.plugins.springsecurity.SecurityConfigType.Annotation
164grails.plugins.springsecurity.successHandler.targetUrlParameter = 'spring-security-redirect'
165
166// Needed for the (copy of) the Spring Security UI plugin
167grails.plugins.springsecurity.ui.forgotPassword.emailFrom = 'gscf@dbnp.org'
168grails.plugins.springsecurity.ui.forgotPassword.emailSubject = 'Password reset GSCF'
169
170// Make sure the different controllers provided by springsecurity.ui are only accessible by administrators
171// NB: the RegisterController is used for forgotten passwords. It should be accessible by anyone
172grails.plugins.springsecurity.controllerAnnotations.staticRules = [
173        '/user/**': ['ROLE_ADMIN'],
174        '/role/**': ['ROLE_ADMIN'],
175        '/aclclass/**': ['ROLE_ADMIN'],
176        '/aclentry/**': ['ROLE_ADMIN'],
177        '/aclobjectidentity/**': ['ROLE_ADMIN'],
178        '/aclsid/**': ['ROLE_ADMIN'],
179        '/persistentlogin/**': ['ROLE_ADMIN'],
180        '/registrationcode/**': ['ROLE_ADMIN'],
181        '/requestmap/**': ['ROLE_ADMIN'],
182        '/securityinfo/**': ['ROLE_ADMIN']
183]
184
185// default mail configuration, see environment specific properties file
186// for real configuration
187grails {
188        mail {
189                host = "smtp.gmail.com"
190                port = 465
191                username = "default_login@gmail.com"
192                password = "default_password"
193                props = [
194                        "mail.smtp.auth": "true",
195                        "mail.smtp.socketFactory.port": '465',
196                        "mail.smtp.socketFactory.class": "javax.net.ssl.SSLSocketFactory",
197                        "mail.smtp.socketFactory.fallback": "false"
198                ]
199        }
200}
Note: See TracBrowser for help on using the repository browser.