Revision aef7611f logic/src/main/scala/gr/grnet/aquarium/MasterConf.scala
b/logic/src/main/scala/gr/grnet/aquarium/MasterConf.scala | ||
---|---|---|
43 | 43 |
import com.ckkloverdos.convert.Converters.{DefaultConverters => TheDefaultConverters} |
44 | 44 |
import processor.actor.ConfigureDispatcher |
45 | 45 |
import rest.RESTService |
46 |
import store.UserStore |
|
47 |
import util.Loggable |
|
46 | 48 |
|
47 | 49 |
/** |
48 | 50 |
* The master configurator. Responsible to load all of application configuration and provide the relevant services. |
49 | 51 |
* |
50 | 52 |
* @author Christos KK Loverdos <loverdos@gmail.com>. |
51 | 53 |
*/ |
52 |
class MasterConf(val props: Props) { |
|
54 |
class MasterConf(val props: Props) extends Loggable {
|
|
53 | 55 |
import MasterConf.Keys |
54 | 56 |
|
55 | 57 |
private[this] def newInstance[C : Manifest](className: String): C = { |
... | ... | |
64 | 66 |
} |
65 | 67 |
|
66 | 68 |
private[this] val _actorProvider: ActorProvider = { |
67 |
newInstance[ActorProvider](props.getEx(Keys.actor_provider_class)) |
|
69 |
val instance = newInstance[ActorProvider](props.getEx(Keys.actor_provider_class)) |
|
70 |
logger.info("Loaded ActorProvider: %s".format(instance.getClass)) |
|
71 |
instance |
|
68 | 72 |
} |
69 | 73 |
|
70 | 74 |
private[this] val _restService: RESTService = { |
71 |
newInstance[RESTService](props.getEx(Keys.rest_service_class)) |
|
75 |
val instance = newInstance[RESTService](props.getEx(Keys.rest_service_class)) |
|
76 |
logger.info("Loaded RESTService: %s".format(instance.getClass)) |
|
77 |
instance |
|
78 |
} |
|
79 |
|
|
80 |
private[this] val _userStore: UserStore = { |
|
81 |
val instance = newInstance[UserStore](props.getEx(Keys.user_store_class)) |
|
82 |
logger.info("Loaded UserStore: %s".format(instance.getClass)) |
|
83 |
instance |
|
72 | 84 |
} |
73 | 85 |
|
74 | 86 |
def get(prop: String): String = |
... | ... | |
99 | 111 |
} |
100 | 112 |
|
101 | 113 |
def actorProvider = _actorProvider |
114 |
|
|
115 |
def userStore = _userStore |
|
102 | 116 |
} |
103 | 117 |
|
104 | 118 |
object MasterConf { |
... | ... | |
208 | 222 |
final val rest_service_class = "rest.service.class" |
209 | 223 |
|
210 | 224 |
/** |
225 |
* The class that implements the User store |
|
226 |
*/ |
|
227 |
final val user_store_class = "user.store.class" |
|
228 |
|
|
229 |
/** |
|
211 | 230 |
* Comma separated list of amqp servers running in active-active |
212 | 231 |
* configuration. |
213 | 232 |
*/ |
Also available in: Unified diff