539 lines
21 KiB
Text
539 lines
21 KiB
Text
format 40
|
|
"design" // BackendLayer::design
|
|
revision 9
|
|
modified_by 5 "hiv"
|
|
// class settings
|
|
//class diagram settings
|
|
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
//use case diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
//sequence diagram settings
|
|
show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default
|
|
//collaboration diagram settings
|
|
show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default
|
|
//object diagram settings
|
|
write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
//component diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
draw_component_as_icon default show_component_req_prov default show_component_rea default
|
|
//deployment diagram settings
|
|
package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default
|
|
draw_component_as_icon default show_component_req_prov default show_component_rea default
|
|
//state diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
|
|
show_activities default region_horizontally default drawing_language default
|
|
//activity diagram settings
|
|
package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
|
|
show_infonote default drawing_language default
|
|
|
|
classview 128517 "Backend Components"
|
|
//class diagram settings
|
|
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
//collaboration diagram settings
|
|
show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default
|
|
//object diagram settings
|
|
write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
//sequence diagram settings
|
|
show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default
|
|
//state diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
|
|
show_activities default region_horizontally default drawing_language default
|
|
//class settings
|
|
//activity diagram settings
|
|
package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
|
|
show_infonote default drawing_language default
|
|
|
|
classdiagram 128181 "File Mapping"
|
|
draw_all_relations no hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
comment "Shows whats used to access Frames"
|
|
size A4
|
|
end
|
|
|
|
classdiagram 128309 "In Memory Database"
|
|
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
size A4
|
|
end
|
|
|
|
class 128181 "File"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 128437 // descriptor (descriptor)
|
|
relation 128437 o--> name "descriptor"
|
|
a role_name "descriptor" multiplicity "" protected
|
|
comment "type of this frame"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128437 // descriptor (descriptor)
|
|
b multiplicity "" parent class_ref 128693 // FileHandle
|
|
end
|
|
|
|
operation 128181 "getFrame"
|
|
public return_type class_ref 128821 // Frame
|
|
nparams 3
|
|
param in name "" type class_ref 128949 // FrameDescriptor
|
|
param in name "frame_address" explicit_type ""
|
|
param in name "mode" explicit_type ""
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
|
|
"
|
|
cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
|
|
${body}}
|
|
"
|
|
|
|
|
|
comment "mode = READ, WRITE, ..."
|
|
end
|
|
|
|
classrelation 128225 // handle (<directional aggregation>)
|
|
relation 128225 o-->
|
|
a role_name "handle" multiplicity "0..1" protected
|
|
comment "weak pointer"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128225 // handle (<directional aggregation>)
|
|
b multiplicity "" parent class_ref 128693 // FileHandle
|
|
end
|
|
|
|
classrelation 128609 // mappings (<directional aggregation>)
|
|
relation 128481 o-->
|
|
a role_name "mappings" multiplicity "*" protected
|
|
comment "weak pointers"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128609 // mappings (<directional aggregation>)
|
|
b multiplicity "" parent class_ref 128565 // FileMap
|
|
association_explicit_type "index"
|
|
end
|
|
|
|
classrelation 129162 // <aggregation>
|
|
relation_ref 128778 // <aggregation>
|
|
end
|
|
end
|
|
|
|
class 128309 "FileHandleCache"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 128737 // handles (<directional aggregation by value>)
|
|
relation 128609 *-->
|
|
stereotype "list"
|
|
a role_name "handles" multiplicity "*" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value};
|
|
"
|
|
classrelation_ref 128737 // handles (<directional aggregation by value>)
|
|
b multiplicity "" parent class_ref 128693 // FileHandle
|
|
end
|
|
|
|
attribute 128225 "handles_available"
|
|
private explicit_type "int"
|
|
init_value "100"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "initialized to the maximum number of filehandles the backend may use for mapped files. When no handles are available, the handle which is last in the handles list is closed and (re-)used.
|
|
Else this number is decremented for each new filehandle used and incremented for any one explicitly freed."
|
|
end
|
|
end
|
|
|
|
class 128437 "FileMapCache"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 129505 // <association>
|
|
relation_ref 128993 // <association>
|
|
end
|
|
|
|
classrelation 129633 // checked_in (<directional aggregation by value>)
|
|
relation 129121 *-->
|
|
stereotype "list"
|
|
a role_name "checked_in" multiplicity "*" protected
|
|
comment "checked_in objects are subject of cache aging and must be not in use"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
classrelation_ref 129633 // checked_in (<directional aggregation by value>)
|
|
b multiplicity "" parent class_ref 128565 // FileMap
|
|
end
|
|
|
|
classrelation 129290 // checked_out (<directional aggregation by value>)
|
|
relation 128906 *-->
|
|
stereotype "list"
|
|
a role_name "checked_out" multiplicity "*" protected
|
|
comment "this list keeps all mappings which are in use, and thus prevents them from Cache aging"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value};
|
|
"
|
|
classrelation_ref 129290 // checked_out (<directional aggregation by value>)
|
|
b multiplicity "" parent class_ref 128565 // FileMap
|
|
end
|
|
end
|
|
|
|
class 128565 "FileMap"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
associated_diagram classdiagram_ref 128181 // File Mapping
|
|
classrelation 128394 // frames (<aggregation>)
|
|
relation 128266 o---
|
|
a role_name "frames" multiplicity "*" private
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128394 // frames (<aggregation>)
|
|
b role_name "mapping" multiplicity "1" private
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128522 // mapping (<aggregation>)
|
|
end
|
|
end
|
|
|
|
class 128693 "FileHandle"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
end
|
|
|
|
class 128821 "Frame"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "Frames are just a low level lump of continous memory, most parts are opaque. Frames are memory sensitive, they will be small constant sized structures which can be efficently managed in a pool."
|
|
classrelation 128181 // <directional aggregation>
|
|
relation 128181 o-->
|
|
a role_name "" multiplicity "*" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value};
|
|
"
|
|
classrelation_ref 128181 // <directional aggregation>
|
|
b multiplicity "" parent class_ref 128949 // FrameDescriptor
|
|
association_type class_ref 128949 // FrameDescriptor
|
|
end
|
|
|
|
classrelation 128309 // <directional aggregation>
|
|
relation 128309 o-->
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128309 // <directional aggregation>
|
|
b multiplicity "" parent class_ref 128949 // FrameDescriptor
|
|
end
|
|
|
|
classrelation 128693 // <aggregation>
|
|
relation 128565 o---
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128693 // <aggregation>
|
|
b role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128821 // <aggregation>
|
|
end
|
|
|
|
classrelation 128949 // <directional aggregation>
|
|
relation 128693 o-->
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128949 // <directional aggregation>
|
|
b multiplicity "" parent class_ref 128949 // FrameDescriptor
|
|
end
|
|
|
|
classrelation 129077 // <directional aggregation>
|
|
relation 128821 o-->
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 129077 // <directional aggregation>
|
|
b multiplicity "" parent class_ref 128949 // FrameDescriptor
|
|
end
|
|
|
|
classrelation 128481 // descriptor (<directional aggregation>)
|
|
relation 128353 o-->
|
|
a role_name "descriptor" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128481 // descriptor (<directional aggregation>)
|
|
b multiplicity "" parent class_ref 128949 // FrameDescriptor
|
|
end
|
|
|
|
classrelation 129377 // <association>
|
|
relation 128993 ----
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 129377 // <association>
|
|
b role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 129505 // <association>
|
|
end
|
|
|
|
classrelation 128522 // mapping (<aggregation>)
|
|
relation_ref 128266 // <aggregation>
|
|
end
|
|
|
|
classrelation 129674 // <aggregation>
|
|
relation 129290 o---
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 129674 // <aggregation>
|
|
b role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 129802 // <aggregation>
|
|
end
|
|
|
|
classrelation 130058 // <association>
|
|
relation_ref 129418 // <association>
|
|
end
|
|
end
|
|
|
|
class 128949 "FrameDescriptor"
|
|
visibility package stereotype "interface"
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl "${comment}${@}${visibility}interface ${name}${extends} {
|
|
${members}}
|
|
"
|
|
idl_decl "${comment}${abstract}${local}interface ${name}${inherit} {
|
|
${members}};
|
|
"
|
|
explicit_switch_type ""
|
|
|
|
comment "A FrameDescriptor implements the higher level interfaces for frames. Further refinements are made by subclassing and policy classes"
|
|
classrelation 128821 // <aggregation>
|
|
relation_ref 128565 // <aggregation>
|
|
end
|
|
end
|
|
|
|
class 129077 "Prefetch"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
end
|
|
|
|
class 129205 "Scheduler"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
end
|
|
|
|
class 129333 "FileProvider"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "This is the Factory for Files, whenever something wants to use some file (or temporary storage), This Factory will hand out some smart/shared pointer to a File object which will be used to retrieve Frames."
|
|
classrelation 129034 // files (<aggregation>)
|
|
relation 128778 o---
|
|
a role_name "files" multiplicity "*" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 129034 // files (<aggregation>)
|
|
b role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 129162 // <aggregation>
|
|
end
|
|
|
|
operation 128010 "useFile"
|
|
public return_type class_ref 128778 // FileReference
|
|
nparams 2
|
|
param in name "name" explicit_type "string"
|
|
param in name "mode" explicit_type ""
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
|
|
"
|
|
cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
|
|
${body}}
|
|
"
|
|
|
|
|
|
comment "Announces that the application intends to use this file with mode (READ|WRITE|READWRITE)"
|
|
end
|
|
|
|
operation 128138 "useTemporaryStorage"
|
|
public return_type class_ref 128778 // FileReference
|
|
nparams 1
|
|
param in name "type" type class_ref 128949 // FrameDescriptor
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
|
|
"
|
|
cpp_def "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
|
|
${body}}
|
|
"
|
|
|
|
|
|
comment "Provides a pool for interminate frames"
|
|
end
|
|
end
|
|
|
|
class 128225 "FrameReference"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 129761 // frame (<unidirectional association>)
|
|
relation 129249 --->
|
|
a role_name "frame" multiplicity "0..1" protected
|
|
comment "maybe weak reference"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 129761 // frame (<unidirectional association>)
|
|
b multiplicity "" parent class_ref 128821 // Frame
|
|
end
|
|
|
|
classrelation 128906 // <realization>
|
|
relation 128650 -_-|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 128906 // <realization>
|
|
b multiplicity "" parent class_ref 128906 // SmartPointer
|
|
end
|
|
end
|
|
|
|
class 128778 "FileReference"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit} {
|
|
${members}};
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 128138 // file (<unidirectional association>)
|
|
relation 128138 --->
|
|
a role_name "file" multiplicity "0..1" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
|
|
"
|
|
classrelation_ref 128138 // file (<unidirectional association>)
|
|
b multiplicity "" parent class_ref 128181 // File
|
|
end
|
|
|
|
classrelation 128778 // <realization>
|
|
relation 128522 -_-|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 128778 // <realization>
|
|
b multiplicity "" parent class_ref 128906 // SmartPointer
|
|
end
|
|
end
|
|
|
|
activity 128010 "get frame"
|
|
end
|
|
|
|
class 129034 "WriteBufferPool"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 130186 // <association>
|
|
relation 129546 ----
|
|
a role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 130186 // <association>
|
|
b role_name "" multiplicity "" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 130314 // <association>
|
|
end
|
|
end
|
|
|
|
class 129162 "WriteBuffer"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
classrelation 129802 // <aggregation>
|
|
relation_ref 129290 // <aggregation>
|
|
end
|
|
|
|
classrelation 129930 // frame (<association>)
|
|
relation 129418 ----
|
|
a role_name "frame" multiplicity "0..1" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 129930 // frame (<association>)
|
|
b role_name "write_buffer" multiplicity "0..1" protected
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 130058 // <association>
|
|
end
|
|
|
|
classrelation 130314 // <association>
|
|
relation_ref 129546 // <association>
|
|
end
|
|
end
|
|
end
|
|
end
|