1 | 0 | |
2 | |
|
3 | |
|
4 | |
|
5 | |
|
6 | |
package pt.digitalis.dif.ioc; |
7 | |
|
8 | |
import pt.digitalis.dif.dem.managers.ICustomFormManager; |
9 | |
import pt.digitalis.dif.dem.managers.impl.CustomFormManagerDummyImpl; |
10 | |
import pt.digitalis.dif.dem.objects.parameters.IParameter; |
11 | |
import pt.digitalis.dif.dem.objects.parameters.IParameters; |
12 | |
import pt.digitalis.dif.dem.objects.parameters.ParametersImpl; |
13 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.IParameterConstraint; |
14 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.ParameterConstraintAlphabeticImpl; |
15 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.ParameterConstraintEmailImpl; |
16 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.ParameterConstraintMaxSizeImpl; |
17 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.ParameterConstraintMinSizeImpl; |
18 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.ParameterConstraintRegexImpl; |
19 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.date.ParameterConstraintDateAbsoluteImpl; |
20 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.date.ParameterConstraintDateImpl; |
21 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.date.ParameterConstraintDateInFutureImpl; |
22 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.date.ParameterConstraintDateInPastImpl; |
23 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.date.ParameterConstraintDateRelativeImpl; |
24 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.numeric.ParameterConstraintMaxImpl; |
25 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.numeric.ParameterConstraintMinImpl; |
26 | |
import pt.digitalis.dif.dem.objects.parameters.constraints.impl.numeric.ParameterConstraintNumericImpl; |
27 | |
import pt.digitalis.dif.dem.objects.parameters.rules.IParameterRule; |
28 | |
import pt.digitalis.dif.dem.objects.parameters.rules.ParameterRuleDependent; |
29 | |
import pt.digitalis.dif.dem.objects.parameters.rules.ParameterRuleExclusive; |
30 | |
import pt.digitalis.dif.dem.objects.parameters.types.BigDecimalParameter; |
31 | |
import pt.digitalis.dif.dem.objects.parameters.types.BooleanParameter; |
32 | |
import pt.digitalis.dif.dem.objects.parameters.types.DateParameter; |
33 | |
import pt.digitalis.dif.dem.objects.parameters.types.DocumentParameter; |
34 | |
import pt.digitalis.dif.dem.objects.parameters.types.DoubleParameter; |
35 | |
import pt.digitalis.dif.dem.objects.parameters.types.LongParameter; |
36 | |
import pt.digitalis.dif.dem.objects.parameters.types.StringParameter; |
37 | |
import pt.digitalis.utils.ioc.modules.IIoCModule; |
38 | |
import pt.digitalis.utils.ioc.modules.IoCBinder; |
39 | |
|
40 | |
|
41 | |
|
42 | |
|
43 | |
|
44 | |
|
45 | |
|
46 | |
|
47 | 0 | public class ParametersModule implements IIoCModule { |
48 | |
|
49 | |
|
50 | |
|
51 | |
|
52 | |
public void configure(IoCBinder binder) |
53 | |
{ |
54 | |
|
55 | |
|
56 | 0 | binder.bind(IParameters.class, ParametersImpl.class); |
57 | |
|
58 | |
|
59 | 0 | binder.bind(IParameter.class, StringParameter.class).withId("string"); |
60 | 0 | binder.bind(IParameter.class, LongParameter.class).withId("long"); |
61 | 0 | binder.bind(IParameter.class, DoubleParameter.class).withId("double"); |
62 | 0 | binder.bind(IParameter.class, BooleanParameter.class).withId("boolean"); |
63 | 0 | binder.bind(IParameter.class, DateParameter.class).withId("date"); |
64 | 0 | binder.bind(IParameter.class, DocumentParameter.class).withId("document"); |
65 | 0 | binder.bind(IParameter.class, BigDecimalParameter.class).withId("bigdecimal"); |
66 | |
|
67 | |
|
68 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintAlphabeticImpl.class).withId("alphabetic"); |
69 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintMinSizeImpl.class).withId("minsize"); |
70 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintMaxSizeImpl.class).withId("maxsize"); |
71 | |
|
72 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintNumericImpl.class).withId("numeric"); |
73 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintMinImpl.class).withId("min"); |
74 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintMaxImpl.class).withId("max"); |
75 | |
|
76 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintRegexImpl.class).withId("regex"); |
77 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintEmailImpl.class).withId("email"); |
78 | |
|
79 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintDateImpl.class).withId("date"); |
80 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintDateRelativeImpl.class).withId("relativedate"); |
81 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintDateAbsoluteImpl.class).withId("absolutedate"); |
82 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintDateInPastImpl.class).withId("pastdate"); |
83 | 0 | binder.bind(IParameterConstraint.class, ParameterConstraintDateInFutureImpl.class).withId("futuredate"); |
84 | |
|
85 | |
|
86 | |
|
87 | |
|
88 | |
|
89 | 0 | binder.bind(IParameterRule.class, ParameterRuleDependent.class).withId("dependent"); |
90 | 0 | binder.bind(IParameterRule.class, ParameterRuleExclusive.class).withId("exclusive"); |
91 | |
|
92 | |
|
93 | 0 | binder.bind(ICustomFormManager.class, CustomFormManagerDummyImpl.class).asSingleton(); |
94 | 0 | } |
95 | |
} |