-
Notifications
You must be signed in to change notification settings - Fork 215
/
Copy pathsettings.gradle
34 lines (29 loc) · 1.04 KB
/
settings.gradle
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
//
// Copyright (c) ZeroC, Inc. All rights reserved.
//
// Map of dir->subdir for each of the demos.
def demos = [
'Ice' : ['async', 'asyncInvocation', 'bidir', 'callback', 'hello',
'interceptor', 'interrupt', 'invoke', 'latency', 'minimal',
'multicast', 'nested', 'plugin', 'properties', 'serialize',
'session', 'swing', 'throughput', 'optional', 'context'],
'IceDiscovery' : ['hello', 'replication'],
'IceBox' : ['hello'],
'Glacier2' : ['callback'],
'IceStorm' : ['clock'],
'IceGrid' : ['icebox', 'simple'],
'Manual' : ['printer', 'simpleFilesystem']
]
demos.each {
def dir = it.key
def subdirs = it.value
subdirs.each {
// abc_def -> AbcDef
def name = it.split('_').collect { it.capitalize() }.join()
// A project in directory xyz is demoXyzAbcDef
def projectName = ":demo${dir.capitalize()}${name}"
include projectName
// The directory is <dir>/<name>.
project("${projectName}").projectDir = new File("${dir}/${it}")
}
}