1 /*******************************************************************************
2
3 Extension for the ConfigExt Application and ArgumentsExt extension.
4
5 Copyright:
6 Copyright (c) 2009-2016 dunnhumby Germany GmbH.
7 All rights reserved.
8
9 License:
10 Boost Software License Version 1.0. See LICENSE_BOOST.txt for details.
11 Alternatively, this file may be distributed under the terms of the Tango
12 3-Clause BSD License (see LICENSE_BSD.txt for details).
13
14 *******************************************************************************/
15
16 module ocean.util.app.ext.model.IConfigExtExtension;
17
18
19
20
21 public import ocean.util.app.model.IApplication;
22 public import ocean.util.config.ConfigParser : ConfigParser;
23
24 import ocean.util.app.model.IExtension;
25
26 import ocean.meta.types.Qualifiers;
27
28
29 /*******************************************************************************
30
31 Interface for extensions for the ConfigExt extension.
32
33 *******************************************************************************/
34
35 interface IConfigExtExtension : IExtension
36 {
37
38 /***************************************************************************
39
40 Function executed before the configuration files are parsed.
41
42 Params:
43 app = application instance
44 config = configuration parser
45
46 ***************************************************************************/
47
48 void preParseConfig ( IApplication app, ConfigParser config );
49
50
51 /***************************************************************************
52
53 Function to filter the list of configuration files to parse.
54
55 Params:
56 app = application instance
57 config = configuration parser
58 files = current list of configuration files to parse
59
60 Returns:
61 new list of configuration files to parse
62
63 ***************************************************************************/
64
65 istring[] filterConfigFiles ( IApplication app, ConfigParser config,
66 istring[] files );
67
68
69 /***************************************************************************
70
71 Function executed after the configuration files are parsed.
72
73 Params:
74 app = application instance
75 config = configuration parser
76
77 ***************************************************************************/
78
79 void processConfig ( IApplication app, ConfigParser config );
80
81 }