forked from coldbox-modules/cborm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathModuleConfig.cfc
102 lines (93 loc) · 2.56 KB
/
ModuleConfig.cfc
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
/**
* Copyright Since 2005 ColdBox Framework by Luis Majano and Ortus Solutions, Corp
* www.ortussolutions.com
* ---
* ColdBox ORM enhancements for Hibernate
*/
component {
// Module Properties
this.title = "cborm";
this.author = "Ortus Solutions";
this.webURL = "https://www.ortussolutions.com";
this.description = "ColdBox ORM enhancements for Hibernate";
this.modelNamespace = "cborm";
this.cfmapping = "cborm";
this.dependencies = [
"cbvalidation",
"cbPaginator",
"mementifier",
"cbstreams"
];
variables.SETTING_DEFAULTS = {
// Resource Settings
resources : {
// Enable the ORM Resource Event Loader
eventLoader : false,
// Prefix to use on all the registered pre/post{Entity}{Action} events
eventPrefix : "",
// Pagination max rows
maxRows : 25,
// Pagination max row limit: 0 = no limit
maxRowsLimit : 500
},
// WireBox Injection Bridge
injection : { enabled : true, include : "", exclude : "" }
};
/**
* Configure Module
*/
function configure(){
// cborm Settings
settings = structCopy( variables.SETTING_DEFAULTS );
// Register Custom DSL, don't map it because it is too late, mapping DSLs are only good by the parent app
controller.getWireBox().registerDSL( namespace = "entityService", path = "#moduleMapping#.dsl.OrmDsl" );
// Custom Declared Points
interceptorSettings = {
customInterceptionPoints : [
// CriteriaBuilder Events
"onCriteriaBuilderAddition",
"beforeCriteriaBuilderList",
"afterCriteriaBuilderList",
"beforeCriteriaBuilderCount",
"afterCriteriaBuilderCount",
"afterCriteriaBuilderGet",
"beforeCriteriaBuilderGet",
"beforeOrmExecuteQuery",
"afterOrmExecuteQuery",
// ORM Bridge Events
"ORMPostNew",
"ORMPreLoad",
"ORMPostLoad",
"ORMPostDelete",
"ORMPreDelete",
"ORMPreUpdate",
"ORMPostUpdate",
"ORMPreInsert",
"ORMPostInsert",
"ORMPreSave",
"ORMPostSave",
"ORMPostFlush",
"ORMPreFlush"
]
};
// Custom Declared Interceptors
interceptors = [];
}
/**
* Fired when the module is registered and activated.
*/
function onLoad(){
// Prepare setting defaults
settings.resources.append( variables.SETTING_DEFAULTS.resources, false );
settings.injection.append( variables.SETTING_DEFAULTS.injection, false );
// Are we loading the event loader
if ( settings.resources.eventLoader ) {
wirebox.getInstance( "ResourceEventLoader@cborm" ).loadEvents();
}
}
/**
* Fired when the module is unregistered and unloaded
*/
function onUnload(){
}
}