Skip to content
Snippets Groups Projects
dependency-structure.ddf 2.67 KiB
Newer Older
tpylak's avatar
tpylak committed
#show allResults

{root} = ch.systemsx.cisd.openbis
{screening} = ${root}.plugin.screening
tpylak's avatar
tpylak committed
# -------- check that screening openbis is indendent of the DSS code

[dss_authorization] = ${root}.dss.generic.shared.api.internal.authorization.* ${root}.dss.screening.shared.api.internal.authorization.*
[dss_api] = ${root}.dss.screening.shared.api.v1.** ${root}.dss.client.api.v1.** ${root}.dss.generic.shared.api.v1.**
[dss] = ${root}.dss.* ch.systemsx.cisd.etlserver.* excluding [dss_api] [dss_authorization]
brinn's avatar
brinn committed
check sets [screening_openbis] [dss] [dss_api] [dss_authorization]

check [screening_openbis] independentOf [dss]

# -------- check internal screening structure

[screening_shared] =  ${screening}.shared.*
[screening_web] =  ${screening}.client.web.*
[screening_server] =  ${screening}.server.*
check sets [screening_shared] [screening_web] [screening_server]

layer s_shared = [screening_shared]
layer s_server = [screening_server]
layer s_web_all = [screening_web]

check layeringOf s_shared s_server s_web_all

felmer's avatar
felmer committed
# -------- plugin dependencies

[other.client] = ${root}.generic.client.* ${root}.plugin.*.client excluding [screening_web]
[other.server] = ${root}.generic.server.* ${root}.plugin.*.server excluding [screening_server]

check [screening_web] independentOf [other.server]
check [screening_server] independentOf [other.client]

# --------

[screening_web_client] =  ${screening}.client.web.client.application.*
[screening_web_shared] =  ${screening}.client.web.client.* excluding [screening_web_client]
[screening_web_server] =  ${screening}.client.web.server.*
check sets [screening_web_client] [screening_web_shared] [screening_web_server]

layer s_web_shared = [screening_web_shared]
layer s_web = [screening_web_server] [screening_web_client]

check layeringOf s_web_shared s_web
check [screening_web_client] independentOf [screening_server]

tpylak's avatar
tpylak committed
# -------- check screening public API dependencies

[authorization] = [dss_authorization] ch.systemsx.cisd.openbis.generic.server.dataaccess.db.*
[api_openbis] = ${screening}.shared.api.** ${root}.generic.shared.api.**
tpylak's avatar
tpylak committed
[api_client_facade] =	${screening}.client.api.v1.**
[api] = [dss_api] [api_openbis] [api_client_facade] [authorization]
[openbis_rest] = ${root}.** excluding [api] ${root}.common.*
check sets [dss_api] [api_openbis] [api_client_facade] [api] [openbis_rest] 
tpylak's avatar
tpylak committed

# TODO: how to check that the api does not depend on external libraries?
check [api] independentOf [openbis_rest]
check [api_client_facade] directlyIndependentOf [authorization]
tpylak's avatar
tpylak committed

tpylak's avatar
tpylak committed
layer s_api_openbis = [api_openbis]
tpylak's avatar
tpylak committed
layer s_api_client = [api_client_facade]
check layeringOf s_api_openbis s_api_dss_and_utils s_api_client