This repository has been archived by the owner on Sep 20, 2020. It is now read-only.
/
ScalaService.groovy
73 lines (63 loc) · 2.19 KB
/
ScalaService.groovy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to you under the Apache License,
* Version 2.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package grails_scala
import javax.annotation.PostConstruct
import javax.annotation.PreDestroy
/**
* Service for get some info on the Scala published by the plugin in the webapp
* <br/>
* It has default scope (singleton), but in a not transactional way.
*/
class ScalaService
{
static transactional = false // transactional behaviour not needed here ...
/**
* Initialization, automatically called after creation, via the PostConstruct annotation.
*/
@PostConstruct
void init() {
log.info "initializing Scala service: start ..."
// initialize variables ...
log.info "initializing Scala service: done."
}
/**
* Destroy, automatically called before destroy, via the PreDestroy annotation.
*/
@PreDestroy
void destroy() {
log.info "destroying Scala service: start shutdown ..."
log.info "destroying Scala service: done."
}
/**
* Returns the Scala version used and published by the plugin.
*
* @return the Scala version
*/
String getScalaVersion() {
// return BuildConfig.scalaVersion // not possible in a plugin
"2.10.5" // to keep it simple, duplicate the value here ...
}
/**
* Returns the Scala suffix with the major version (normally used by build tools).
*
* @return the Scala suffix version
*/
String getScalaSuffixVersion() {
// return BuildConfig.scalaSuffixVersion // not possible in a plugin
"_2.10" // to keep it simple, duplicate the value here ...
}
}