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

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