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

Last change on this file since 1323 was 1323, checked in by t.w.abma@…, 7 years ago
  • tomcat trigger
  • Property svn:keywords set to Author Date Rev
File size: 8.2 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: 1323 $
12 * $Author: t.w.abma@umcutrecht.nl $
13 * $Date: 2010-12-23 12:07:38 +0000 (do, 23 dec 2010) $
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
18
19// grails.config.locations = [ "classpath:${appName}-config.properties",
20//                             "classpath:${appName}-config.groovy",
21//                             "file:${userHome}/.grails/${appName}-config.properties",
22//                             "file:${userHome}/.grails/${appName}-config.groovy"]
23
24// if(System.properties["${appName}.config.location"]) {
25//    grails.config.locations << "file:" + System.properties["${appName}.config.location"]
26// }
27grails.mime.file.extensions = true // enables the parsing of file extensions from URLs into the request format
28grails.mime.use.accept.header = false
29grails.mime.types = [html: ['text/html', 'application/xhtml+xml'],
30        xml: ['text/xml', 'application/xml'],
31        text: 'text/plain',
32        js: 'text/javascript',
33        rss: 'application/rss+xml',
34        atom: 'application/atom+xml',
35        css: 'text/css',
36        csv: 'text/csv',
37        all: '*/*',
38        json: ['application/json', 'text/json'],
39        form: 'application/x-www-form-urlencoded',
40        multipartForm: 'multipart/form-data'
41]
42// The default codec used to encode data with ${}
43grails.views.default.codec = "none" // none, html, base64
44grails.views.gsp.encoding = "UTF-8"
45grails.converters.encoding = "UTF-8"
46
47// enabled native2ascii conversion of i18n properties files
48grails.enable.native2ascii = true
49
50// set per-environment serverURL stem for creating absolute links
51environments {
52        development {
53                grails.serverURL = "http://localhost:8080/${appName}"
54                modules {
55                        sam {
56                                url = "http://localhost:8182/sam"
57                        }
58                        metabolomics {
59                                url = "http://localhost:8183/nmcdsp"
60                        }
61                }
62        }
63        ci {
64                // used by build script
65                grails.serverURL = "http://ci.gscf.nmcdsp.org"
66                modules {
67                        sam {
68                                url = "http://ci.sam.nmcdsp.org"
69                        }
70                        metabolomics {
71                                url = "http://ci.metabolomics.nmcdsp.org"
72                        }
73                }
74        }
75        test {
76                // used by build script
77                grails.serverURL = "http://test.gscf.nmcdsp.org"
78                modules {
79                        sam {
80                                url = "http://test.sam.nmcdsp.org"
81                        }
82                        metabolomics {
83                                url = "http://test.metabolomics.nmcdsp.org"
84                        }
85                }
86        }
87        dbnptest {
88                // used by build script
89                grails.serverURL = "http://test.dbnp.org"
90                modules {
91                        sam {
92                                url = "http://test.sam.dbnp.org"
93                        }
94                        metabolomics {
95                                url = "http://test.metabolomics.dbnp.org"
96               
97                        }
98                }
99        }
100        dbnpdemo {
101                // used by build script
102                grails.serverURL = "http://demo.dbnp.org"
103                modules {
104                        sam {
105                                url = "http://demo.sam.dbnp.org"
106                        }
107                        metabolomics {
108                                url = "http://demo.metabolomics.dbnp.org"
109                        }
110                }
111        }
112        production {
113                grails.serverURL = "http://www.nmcdsp.org"
114                modules {
115                        sam {
116                                url = "http://sam.nmcdsp.org"
117                        }
118                        metabolomics {
119                                url = "http://metabolomics.nmcdsp.org"
120                        }
121                }
122        }
123        www {
124                // used by build script
125                grails.serverURL = "http://www.nmcdsp.org"
126                modules {
127                        sam {
128                                url = "http://sam.nmcdsp.org"
129                        }
130                        metabolomics {
131                                url = "http://metabolomics.nmcdsp.org"
132                        }
133                }
134        }
135}
136
137// log4j configuration
138log4j = {
139        // Example of changing the log pattern for the default console
140        // appender:
141        //
142        //appenders {
143        //    console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n')
144        //}
145
146        error 'org.codehaus.groovy.grails.web.servlet',  //  controllers
147                'org.codehaus.groovy.grails.web.pages', //  GSP
148                'org.codehaus.groovy.grails.web.sitemesh', //  layouts
149                'org.codehaus.groovy.grails.web.mapping.filter', // URL mapping
150                'org.codehaus.groovy.grails.web.mapping', // URL mapping
151                'org.codehaus.groovy.grails.commons', // core / classloading
152                'org.codehaus.groovy.grails.plugins', // plugins
153                'org.codehaus.groovy.grails.orm.hibernate', // hibernate integration
154                'org.springframework',
155                'org.hibernate'
156
157        warn 'org.mortbay.log'
158
159        //info 'org.codehaus.groovy.grails.web.servlet',
160        //       'org.codehaus.groovy.grails.plugins'
161        //
162        //debug 'org.codehaus.groovy.grails.plugins'
163}
164
165graphviz {
166        // graphviz installation path is dependent on OS
167        // (requirement for class diagram plugin)
168        switch (System.properties["os.name"]) {
169                case "Mac OS X":
170                        // define mac path to Graphviz dot executable
171                        // (install using macports: sudo port install graphviz)
172                        dot.executable = "/opt/local/bin/dot"
173                        break
174                default:
175                        // assume the linux default path
176                        dot.executable = "/usr/bin/dot"
177        }
178}
179
180// cryptography settings
181// @see WizardTaglib.groovy (encrypt)
182// @see TemplateEditorController.groovy (decrypt)
183crypto {
184        shared.secret = RandomStringUtils.random(32, true, true)
185}
186
187// GSCF specific configuration
188gscf {
189        domain = [
190                // importable entities
191                // use: grailsApplication.config.gscf.domain.entities
192                entities: [
193                        // dbnp.data
194                        'dbnp.data.FeatureBase',
195                        'dbnp.data.FeatureType',
196                        'dbnp.data.Ontology',
197                        'dbnp.data.Term',
198
199                        // dbnp.studycapturing
200                        'dbnp.studycapturing.Assay',
201                        'dbnp.studycapturing.AssayModule',
202                        'dbnp.studycapturing.AssayType',
203                        'dbnp.studycapturing.Compound',
204                        'dbnp.studycapturing.Event',
205                        'dbnp.studycapturing.EventGroup',
206                        'dbnp.studycapturing.Person',
207                        'dbnp.studycapturing.PersonAffilitation',
208                        'dbnp.studycapturing.PersonRole',
209                        'dbnp.studycapturing.Publication',
210                        'dbnp.studycapturing.Sample',
211                        'dbnp.studycapturing.SamplingEvent',
212                        'dbnp.studycapturing.Study',
213                        'dbnp.studycapturing.StudyPerson',
214                        'dbnp.studycapturing.Subject',
215                        'dbnp.studycapturing.Template',
216                        'dbnp.studycapturing.TemplateEntity',
217                        'dbnp.studycapturing.TemplateField',
218                        'dbnp.studycapturing.TemplateFieldListItem',
219                        'dbnp.studycapturing.TemplateFieldType'
220                ],
221
222                // importable entities
223                // use: grailsApplication.config.gscf.domain.importableEntities
224                // @see ImporterController
225                importableEntities: [
226                        event: [name: 'Event', entity: 'dbnp.studycapturing.Event', encrypted:''],
227                        sample: [name: 'Sample', entity: 'dbnp.studycapturing.Sample', encrypted:''],
228                        study: [name: 'Study', entity: 'dbnp.studycapturing.Study', encrypted:''],
229                        subject: [name: 'Subject', entity: 'dbnp.studycapturing.Subject', encrypted:''],
230                        samplingevent: [name: 'SamplingEvent', entity: 'dbnp.studycapturing.SamplingEvent', encrypted:'']
231
232                ]
233        ]
234}
235
236// jquery plugin
237grails.views.javascript.library = "jquery"
238
239// Needed for the Spring Security Core plugin:
240grails.plugins.springsecurity.userLookup.userDomainClassName = 'dbnp.authentication.SecUser'
241grails.plugins.springsecurity.userLookup.authorityJoinClassName = 'dbnp.authentication.SecUserSecRole'
242grails.plugins.springsecurity.authority.className = 'dbnp.authentication.SecRole'
243grails.plugins.springsecurity.password.algorithm = 'SHA-256'
244grails.plugins.springsecurity.password.encodeHashAsBase64 = true
245grails.plugins.springsecurity.dao.reflectionSaltSourceProperty = 'username' // Use the persons username as salt for encryption
246grails.plugins.springsecurity.securityConfigType = grails.plugins.springsecurity.SecurityConfigType.Annotation
247grails.plugins.springsecurity.successHandler.targetUrlParameter = 'spring-security-redirect'
248
249// Needed for the (copy of) the Spring Security UI plugin
250grails.plugins.springsecurity.ui.forgotPassword.emailFrom = 'gscf@dbnp.org'
251grails.plugins.springsecurity.ui.forgotPassword.emailSubject = 'Password reset GSCF'
252
253// Make sure the different controllers provided by springsecurity.ui are only accessible by administrators
254// NB: the RegisterController is used for forgotten passwords. It should be accessible by anyone
255grails.plugins.springsecurity.controllerAnnotations.staticRules = [
256        '/user/**': ['ROLE_ADMIN'],
257        '/role/**': ['ROLE_ADMIN'],
258        '/aclclass/**': ['ROLE_ADMIN'],
259        '/aclentry/**': ['ROLE_ADMIN'],
260        '/aclobjectidentity/**': ['ROLE_ADMIN'],
261        '/aclsid/**': ['ROLE_ADMIN'],
262        '/persistentlogin/**': ['ROLE_ADMIN'],
263        '/registrationcode/**': ['ROLE_ADMIN'],
264        '/requestmap/**': ['ROLE_ADMIN'],
265        '/securityinfo/**': ['ROLE_ADMIN']
266]
267
268// Needed for sending emails
269grails {
270        mail {
271                host = "smtp.gmail.com"
272                port = 465
273                username = "gscfproject@gmail.com"
274                password = "gscf2010"
275                props = [
276                        "mail.smtp.auth": "true",
277                        "mail.smtp.socketFactory.port": '465',
278                        "mail.smtp.socketFactory.class": "javax.net.ssl.SSLSocketFactory",
279                        "mail.smtp.socketFactory.fallback": "false"
280                ]
281        }
282}
Note: See TracBrowser for help on using the repository browser.