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

Last change on this file since 1414 was 1414, checked in by work@…, 9 years ago
  • moved the environment specific properties files to src/java to make sure they are on the classpath
  • 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: 1414 $
12 * $Author: work@osx.eu $
13 * $Date: 2011-01-18 15:38:58 +0000 (di, 18 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. src/java/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// Needed for the Spring Security Core plugin:
156grails.plugins.springsecurity.userLookup.userDomainClassName = 'dbnp.authentication.SecUser'
157grails.plugins.springsecurity.userLookup.authorityJoinClassName = 'dbnp.authentication.SecUserSecRole'
158grails.plugins.springsecurity.authority.className = 'dbnp.authentication.SecRole'
159grails.plugins.springsecurity.password.algorithm = 'SHA-256'
160grails.plugins.springsecurity.password.encodeHashAsBase64 = true
161grails.plugins.springsecurity.dao.reflectionSaltSourceProperty = 'username' // Use the persons username as salt for encryption
162grails.plugins.springsecurity.securityConfigType = grails.plugins.springsecurity.SecurityConfigType.Annotation
163grails.plugins.springsecurity.successHandler.targetUrlParameter = 'spring-security-redirect'
164
165// Needed for the (copy of) the Spring Security UI plugin
166grails.plugins.springsecurity.ui.forgotPassword.emailFrom = 'gscf@dbnp.org'
167grails.plugins.springsecurity.ui.forgotPassword.emailSubject = 'Password reset GSCF'
168
169// Make sure the different controllers provided by springsecurity.ui are only accessible by administrators
170// NB: the RegisterController is used for forgotten passwords. It should be accessible by anyone
171grails.plugins.springsecurity.controllerAnnotations.staticRules = [
172        '/user/**': ['ROLE_ADMIN'],
173        '/role/**': ['ROLE_ADMIN'],
174        '/aclclass/**': ['ROLE_ADMIN'],
175        '/aclentry/**': ['ROLE_ADMIN'],
176        '/aclobjectidentity/**': ['ROLE_ADMIN'],
177        '/aclsid/**': ['ROLE_ADMIN'],
178        '/persistentlogin/**': ['ROLE_ADMIN'],
179        '/registrationcode/**': ['ROLE_ADMIN'],
180        '/requestmap/**': ['ROLE_ADMIN'],
181        '/securityinfo/**': ['ROLE_ADMIN']
182]
183
184// default mail configuration, see environment specific properties file
185// for real configuration
186grails {
187        mail {
188                host = "smtp.gmail.com"
189                port = 465
190                username = "default_login@gmail.com"
191                password = "default_password"
192                props = [
193                        "mail.smtp.auth": "true",
194                        "mail.smtp.socketFactory.port": '465',
195                        "mail.smtp.socketFactory.class": "javax.net.ssl.SSLSocketFactory",
196                        "mail.smtp.socketFactory.fallback": "false"
197                ]
198        }
199}
Note: See TracBrowser for help on using the repository browser.