repository-manager 0.2.1 → 0.2.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  module RepositoryManager
2
- VERSION = '0.2.1'
2
+ VERSION = '0.2.8'
3
3
  end
@@ -27,4 +27,5 @@ Gem::Specification.new do |s|
27
27
  s.add_runtime_dependency 'ancestry'
28
28
  s.add_runtime_dependency('carrierwave', '>= 0.5.8')
29
29
  s.add_runtime_dependency 'rubyzip', '>= 1.0.0'#, :require => 'zip/zip'
30
+ s.add_runtime_dependency 'paper_trail', '~> 3.0.1'
30
31
  end
data/spec/dummy/Gemfile CHANGED
@@ -9,3 +9,6 @@ gem 'factory_girl'
9
9
  gem "sqlite3", :platform => [:ruby, :mswin, :mingw]
10
10
  gem "jdbc-sqlite3", :platform => :jruby
11
11
 
12
+ group :development, :test do
13
+ gem 'railroady'
14
+ end
@@ -23,13 +23,14 @@ class CreateRepositoryManager < ActiveRecord::Migration
23
23
  create_table :rm_repo_items do |t|
24
24
  t.references :owner, polymorphic: true, index: true
25
25
  t.references :sender, polymorphic: true, index: true
26
- t.string :ancestry
26
+ t.string :ancestry, index: true
27
27
  t.integer :ancestry_depth, :default => 0
28
28
  t.string :name
29
29
  t.float :file_size
30
30
  t.string :content_type
31
31
  t.string :file
32
32
  t.string :type
33
+ t.string :checksum
33
34
  end
34
35
  end
35
36
  end
@@ -0,0 +1,26 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 2.26.3 (20100126.1600)
5
+ -->
6
+ <!-- Title: controllers_diagram Pages: 1 -->
7
+ <svg width="446pt" height="175pt"
8
+ viewBox="0.00 0.00 446.00 175.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 171)">
10
+ <title>controllers_diagram</title>
11
+ <polygon fill="white" stroke="white" points="-4,5 -4,-171 443,-171 443,5 -4,5"/>
12
+ <!-- _diagram_info -->
13
+ <g id="node1" class="node"><title>_diagram_info</title>
14
+ <text text-anchor="start" x="9" y="-78.3" font-family="Times Roman,serif" font-size="13.00">Controllers diagram</text>
15
+ <text text-anchor="start" x="9" y="-61.3" font-family="Times Roman,serif" font-size="13.00">Date: Jul 01 2014 &#45; 13:21</text>
16
+ <text text-anchor="start" x="9" y="-44.3" font-family="Times Roman,serif" font-size="13.00">Migration version: 20131018214212</text>
17
+ <text text-anchor="start" x="9" y="-27.3" font-family="Times Roman,serif" font-size="13.00">Generated by RailRoady 1.1.1</text>
18
+ <text text-anchor="start" x="9" y="-10.3" font-family="Times Roman,serif" font-size="13.00">http://railroady.prestonlee.com</text>
19
+ </g>
20
+ <!-- ApplicationController -->
21
+ <g id="node2" class="node"><title>ApplicationController</title>
22
+ <ellipse fill="none" stroke="black" cx="323" cy="-147.5" rx="113.844" ry="18.3848"/>
23
+ <text text-anchor="middle" x="323" y="-143.9" font-family="Times Roman,serif" font-size="14.00">ApplicationController</text>
24
+ </g>
25
+ </g>
26
+ </svg>
@@ -0,0 +1,37 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 2.26.3 (20100126.1600)
5
+ -->
6
+ <!-- Title: controllers_diagram Pages: 1 -->
7
+ <svg width="392pt" height="247pt"
8
+ viewBox="0.00 0.00 392.00 247.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 243)">
10
+ <title>controllers_diagram</title>
11
+ <polygon fill="white" stroke="white" points="-4,5 -4,-243 389,-243 389,5 -4,5"/>
12
+ <!-- _diagram_info -->
13
+ <g id="node1" class="node"><title>_diagram_info</title>
14
+ <text text-anchor="start" x="9" y="-78.3" font-family="Times Roman,serif" font-size="13.00">Controllers diagram</text>
15
+ <text text-anchor="start" x="9" y="-61.3" font-family="Times Roman,serif" font-size="13.00">Date: Jul 01 2014 &#45; 13:21</text>
16
+ <text text-anchor="start" x="9" y="-44.3" font-family="Times Roman,serif" font-size="13.00">Migration version: 20131018214212</text>
17
+ <text text-anchor="start" x="9" y="-27.3" font-family="Times Roman,serif" font-size="13.00">Generated by RailRoady 1.1.1</text>
18
+ <text text-anchor="start" x="9" y="-10.3" font-family="Times Roman,serif" font-size="13.00">http://railroady.prestonlee.com</text>
19
+ </g>
20
+ <!-- ApplicationController -->
21
+ <g id="node2" class="node"><title>ApplicationController</title>
22
+ <polyline fill="none" stroke="black" points="234,-137.5 371,-137.5 "/>
23
+ <path fill="none" stroke="black" d="M371,-137.5C377,-137.5 383,-143.5 383,-149.5"/>
24
+ <polyline fill="none" stroke="black" points="383,-149.5 383,-225.5 "/>
25
+ <path fill="none" stroke="black" d="M383,-225.5C383,-231.5 377,-237.5 371,-237.5"/>
26
+ <polyline fill="none" stroke="black" points="371,-237.5 234,-237.5 "/>
27
+ <path fill="none" stroke="black" d="M234,-237.5C228,-237.5 222,-231.5 222,-225.5"/>
28
+ <polyline fill="none" stroke="black" points="222,-225.5 222,-149.5 "/>
29
+ <path fill="none" stroke="black" d="M222,-149.5C222,-143.5 228,-137.5 234,-137.5"/>
30
+ <text text-anchor="middle" x="302.5" y="-220.9" font-family="Times Roman,serif" font-size="14.00">ApplicationController</text>
31
+ <polyline fill="none" stroke="black" points="222,-211.5 383,-211.5 "/>
32
+ <polyline fill="none" stroke="black" points="222,-187.5 383,-187.5 "/>
33
+ <polyline fill="none" stroke="black" points="222,-163.5 383,-163.5 "/>
34
+ <text text-anchor="start" x="230" y="-146.9" font-family="Times Roman,serif" font-size="14.00">_layout</text>
35
+ </g>
36
+ </g>
37
+ </svg>
@@ -0,0 +1,207 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 2.26.3 (20100126.1600)
5
+ -->
6
+ <!-- Title: models_diagram Pages: 1 -->
7
+ <svg width="1467pt" height="530pt"
8
+ viewBox="0.00 0.00 1467.00 530.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 526)">
10
+ <title>models_diagram</title>
11
+ <polygon fill="white" stroke="white" points="-4,5 -4,-526 1464,-526 1464,5 -4,5"/>
12
+ <!-- _diagram_info -->
13
+ <g id="node1" class="node"><title>_diagram_info</title>
14
+ <text text-anchor="start" x="687" y="-505.8" font-family="Times Roman,serif" font-size="13.00">Models diagram</text>
15
+ <text text-anchor="start" x="687" y="-488.8" font-family="Times Roman,serif" font-size="13.00">Date: Jul 01 2014 &#45; 13:20</text>
16
+ <text text-anchor="start" x="687" y="-471.8" font-family="Times Roman,serif" font-size="13.00">Migration version: 20131018214212</text>
17
+ <text text-anchor="start" x="687" y="-454.8" font-family="Times Roman,serif" font-size="13.00">Generated by RailRoady 1.1.1</text>
18
+ <text text-anchor="start" x="687" y="-437.8" font-family="Times Roman,serif" font-size="13.00">http://railroady.prestonlee.com</text>
19
+ </g>
20
+ <!-- RepositoryManager::RepoFolder -->
21
+ <g id="node2" class="node"><title>RepositoryManager::RepoFolder</title>
22
+ <ellipse fill="none" stroke="black" cx="487" cy="-111" rx="164.963" ry="18.3848"/>
23
+ <text text-anchor="middle" x="487" y="-107.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::RepoFolder</text>
24
+ </g>
25
+ <!-- RepositoryManager::SharingsMember -->
26
+ <g id="node3" class="node"><title>RepositoryManager::SharingsMember</title>
27
+ <ellipse fill="none" stroke="black" cx="1209" cy="-19" rx="193.247" ry="18.3848"/>
28
+ <text text-anchor="middle" x="1209" y="-15.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::SharingsMember</text>
29
+ </g>
30
+ <!-- RepositoryManager::RepoItem -->
31
+ <g id="node4" class="node"><title>RepositoryManager::RepoItem</title>
32
+ <ellipse fill="none" stroke="black" cx="374" cy="-203" rx="157.892" ry="18.3848"/>
33
+ <text text-anchor="middle" x="374" y="-199.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::RepoItem</text>
34
+ </g>
35
+ <!-- RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFolder -->
36
+ <g id="edge2" class="edge"><title>RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFolder</title>
37
+ <path fill="none" stroke="black" d="M396.596,-184.604C416.304,-168.558 444.747,-145.401 464.444,-129.365"/>
38
+ </g>
39
+ <!-- RepositoryManager::RepoFile -->
40
+ <g id="node5" class="node"><title>RepositoryManager::RepoFile</title>
41
+ <ellipse fill="none" stroke="black" cx="152" cy="-111" rx="152.028" ry="18.3848"/>
42
+ <text text-anchor="middle" x="152" y="-107.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::RepoFile</text>
43
+ </g>
44
+ <!-- RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFile -->
45
+ <g id="edge10" class="edge"><title>RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFile</title>
46
+ <path fill="none" stroke="black" d="M330.933,-185.152C291.718,-168.901 234.124,-145.033 194.947,-128.798"/>
47
+ </g>
48
+ <!-- RepositoryManager::Sharing -->
49
+ <g id="node6" class="node"><title>RepositoryManager::Sharing</title>
50
+ <ellipse fill="none" stroke="black" cx="948" cy="-111" rx="149.907" ry="18.3848"/>
51
+ <text text-anchor="middle" x="948" y="-107.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::Sharing</text>
52
+ </g>
53
+ <!-- RepositoryManager::RepoItem&#45;&gt;RepositoryManager::Sharing -->
54
+ <g id="edge6" class="edge"><title>RepositoryManager::RepoItem&#45;&gt;RepositoryManager::Sharing</title>
55
+ <path fill="none" stroke="#afdcb7" d="M475.484,-186.734C580.008,-169.981 741.978,-144.021 846.506,-127.267"/>
56
+ <ellipse fill="none" stroke="#afdcb7" cx="471.45" cy="-187.381" rx="4.00001" ry="4.00001"/>
57
+ <polygon fill="#afdcb7" stroke="#afdcb7" points="846.564,-127.258 857.15,-130.119 851.501,-126.467 856.438,-125.675 856.438,-125.675 856.438,-125.675 851.501,-126.467 855.726,-121.232 846.564,-127.258 846.564,-127.258"/>
58
+ <text text-anchor="middle" x="742" y="-153.4" font-family="Times Roman,serif" font-size="14.00">sharings</text>
59
+ </g>
60
+ <!-- RepositoryManager::Sharing&#45;&gt;RepositoryManager::SharingsMember -->
61
+ <g id="edge12" class="edge"><title>RepositoryManager::Sharing&#45;&gt;RepositoryManager::SharingsMember</title>
62
+ <path fill="none" stroke="#fdf732" d="M958.578,-85.263C964.263,-74.5715 972.33,-63.0389 983,-56 997.385,-46.5098 1027.95,-39.2041 1062.07,-33.6916"/>
63
+ <ellipse fill="none" stroke="#fdf732" cx="956.792" cy="-88.8786" rx="4.00002" ry="4.00002"/>
64
+ <polygon fill="#fdf732" stroke="#fdf732" points="1062.39,-33.6425 1072.96,-36.5581 1067.33,-32.8769 1072.27,-32.1112 1072.27,-32.1112 1072.27,-32.1112 1067.33,-32.8769 1071.59,-27.6643 1062.39,-33.6425 1062.39,-33.6425"/>
65
+ <text text-anchor="middle" x="1047.5" y="-61.4" font-family="Times Roman,serif" font-size="14.00">sharings_members</text>
66
+ </g>
67
+ <!-- User -->
68
+ <g id="node7" class="node"><title>User</title>
69
+ <ellipse fill="none" stroke="black" cx="890" cy="-371" rx="33.9411" ry="18.3848"/>
70
+ <text text-anchor="middle" x="890" y="-367.4" font-family="Times Roman,serif" font-size="14.00">User</text>
71
+ </g>
72
+ <!-- User&#45;&gt;RepositoryManager::SharingsMember -->
73
+ <g id="edge20" class="edge"><title>User&#45;&gt;RepositoryManager::SharingsMember</title>
74
+ <path fill="none" stroke="#8ab60b" d="M930.696,-364.357C1016.56,-349.423 1211.55,-310.367 1250,-258 1297.07,-193.895 1252.35,-94.2583 1225.67,-46.4348"/>
75
+ <ellipse fill="none" stroke="#8ab60b" cx="926.678" cy="-365.048" rx="4.00001" ry="4.00001"/>
76
+ <polygon fill="#8ab60b" stroke="#8ab60b" points="1225.58,-46.2669 1224.52,-35.3523 1223.09,-41.9269 1220.61,-37.5869 1220.61,-37.5869 1220.61,-37.5869 1223.09,-41.9269 1216.7,-39.8214 1225.58,-46.2669 1225.58,-46.2669"/>
77
+ <text text-anchor="middle" x="1335.5" y="-199.4" font-family="Times Roman,serif" font-size="14.00">sharings_members</text>
78
+ </g>
79
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
80
+ <g id="edge24" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
81
+ <path fill="none" stroke="#2002a4" d="M847.644,-370.493C714.981,-368.445 314.216,-358.585 279,-314 254.506,-282.989 295.01,-248.612 330.471,-226.452"/>
82
+ <ellipse fill="none" stroke="#2002a4" cx="851.988" cy="-370.557" rx="4" ry="4"/>
83
+ <polygon fill="#2002a4" stroke="#2002a4" points="330.779,-226.266 341.665,-224.941 335.057,-223.678 339.336,-221.091 339.336,-221.091 339.336,-221.091 335.057,-223.678 337.007,-217.24 330.779,-226.266 330.779,-226.266"/>
84
+ <text text-anchor="middle" x="317" y="-291.4" font-family="Times Roman,serif" font-size="14.00">repo_items</text>
85
+ </g>
86
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
87
+ <g id="edge26" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
88
+ <path fill="none" stroke="#16dd1f" d="M845.707,-369.32C687.973,-363.123 161.74,-340.524 138,-314 93.3319,-264.094 179.081,-234.801 259.444,-218.962"/>
89
+ <polygon fill="#16dd1f" stroke="#16dd1f" points="845.993,-369.331 855.81,-374.218 850.99,-369.526 855.986,-369.721 855.986,-369.721 855.986,-369.721 850.99,-369.526 856.161,-365.225 845.993,-369.331 845.993,-369.331"/>
90
+ <polygon fill="#16dd1f" stroke="#16dd1f" points="259.892,-218.877 270.558,-221.424 264.804,-217.94 269.715,-217.003 269.715,-217.003 269.715,-217.003 264.804,-217.94 268.872,-212.583 259.892,-218.877 259.892,-218.877"/>
91
+ <text text-anchor="middle" x="203" y="-291.4" font-family="Times Roman,serif" font-size="14.00">shared_repo_items</text>
92
+ </g>
93
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
94
+ <g id="edge28" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
95
+ <path fill="none" stroke="#bba377" d="M847.554,-370.539C741.485,-368.702 467.868,-359.555 391,-314 377.385,-305.931 352.173,-272.957 347,-258 344.385,-250.439 344.52,-247.606 347,-240 348.093,-236.647 349.618,-233.346 351.391,-230.179"/>
96
+ <ellipse fill="none" stroke="#bba377" cx="851.796" cy="-370.607" rx="4" ry="4"/>
97
+ <polygon fill="#bba377" stroke="#bba377" points="351.462,-230.07 360.676,-224.124 354.18,-225.874 356.899,-221.677 356.899,-221.677 356.899,-221.677 354.18,-225.874 353.122,-219.231 351.462,-230.07 351.462,-230.07"/>
98
+ <text text-anchor="middle" x="447" y="-291.4" font-family="Times Roman,serif" font-size="14.00">root_repo_items</text>
99
+ </g>
100
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
101
+ <g id="edge30" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
102
+ <path fill="none" stroke="#aa8bd1" d="M849.393,-360.485C764.413,-338.57 570.151,-288.967 503,-276 475.013,-270.596 395.076,-279.18 376,-258 369.681,-250.984 367.943,-241.191 368.19,-231.808"/>
103
+ <polygon fill="#aa8bd1" stroke="#aa8bd1" points="849.516,-360.517 858.074,-367.373 854.357,-361.766 859.198,-363.016 859.198,-363.016 859.198,-363.016 854.357,-361.766 860.323,-358.659 849.516,-360.517 849.516,-360.517"/>
104
+ <polygon fill="#aa8bd1" stroke="#aa8bd1" points="368.218,-231.515 373.653,-221.991 368.696,-226.537 369.174,-221.56 369.174,-221.56 369.174,-221.56 368.696,-226.537 364.694,-221.13 368.218,-231.515 368.218,-231.515"/>
105
+ <text text-anchor="middle" x="749" y="-291.4" font-family="Times Roman,serif" font-size="14.00">root_shared_repo_items</text>
106
+ </g>
107
+ <!-- User&#45;&gt;RepositoryManager::Sharing -->
108
+ <g id="edge22" class="edge"><title>User&#45;&gt;RepositoryManager::Sharing</title>
109
+ <path fill="none" stroke="#0d185e" d="M923.166,-354.886C946.21,-343.61 977.583,-328.102 1005,-314 1052.03,-289.809 1065.67,-286.852 1110,-258 1120.88,-250.919 1122.75,-247.962 1133,-240 1175.55,-206.955 1205.23,-214.342 1229,-166 1232.53,-158.821 1234.27,-154.015 1229,-148 1218.97,-136.564 1153.07,-127.543 1087.61,-121.272"/>
110
+ <ellipse fill="none" stroke="#0d185e" cx="919.282" cy="-356.784" rx="4.00002" ry="4.00002"/>
111
+ <polygon fill="#0d185e" stroke="#0d185e" points="1087.5,-121.262 1077.96,-115.848 1082.52,-120.795 1077.54,-120.328 1077.54,-120.328 1077.54,-120.328 1082.52,-120.795 1077.12,-124.809 1087.5,-121.262 1087.5,-121.262"/>
112
+ <text text-anchor="middle" x="1191.5" y="-245.4" font-family="Times Roman,serif" font-size="14.00">sharings_owners</text>
113
+ </g>
114
+ <!-- User&#45;&gt;RepositoryManager::Sharing -->
115
+ <g id="edge18" class="edge"><title>User&#45;&gt;RepositoryManager::Sharing</title>
116
+ <path fill="none" stroke="#c7e657" d="M921.878,-351.715C959.263,-327.016 1019.27,-280.345 1044,-222 1050.59,-206.451 1051.5,-199.131 1044,-184 1033.51,-162.853 1013.65,-146.174 994.694,-134.13"/>
117
+ <polygon fill="#c7e657" stroke="#c7e657" points="921.751,-351.798 910.91,-353.448 917.552,-354.512 913.353,-357.227 913.353,-357.227 913.353,-357.227 917.552,-354.512 915.796,-361.006 921.751,-351.798 921.751,-351.798"/>
118
+ <polygon fill="#c7e657" stroke="#c7e657" points="994.643,-134.099 988.417,-125.072 990.365,-131.511 986.087,-128.922 986.087,-128.922 986.087,-128.922 990.365,-131.511 983.758,-132.772 994.643,-134.099 994.643,-134.099"/>
119
+ <text text-anchor="middle" x="1064" y="-245.4" font-family="Times Roman,serif" font-size="14.00">sharings</text>
120
+ </g>
121
+ <!-- Group -->
122
+ <g id="node8" class="node"><title>Group</title>
123
+ <ellipse fill="none" stroke="black" cx="890" cy="-295" rx="41.2167" ry="18.3848"/>
124
+ <text text-anchor="middle" x="890" y="-291.4" font-family="Times Roman,serif" font-size="14.00">Group</text>
125
+ </g>
126
+ <!-- User&#45;&gt;Group -->
127
+ <g id="edge16" class="edge"><title>User&#45;&gt;Group</title>
128
+ <path fill="none" stroke="#36611d" d="M890,-341.938C890,-335.986 890,-329.725 890,-323.783"/>
129
+ <polygon fill="#36611d" stroke="#36611d" points="890,-342.213 885.5,-352.213 890,-347.213 890,-352.213 890,-352.213 890,-352.213 890,-347.213 894.5,-352.214 890,-342.213 890,-342.213"/>
130
+ <polygon fill="#36611d" stroke="#36611d" points="890,-323.57 894.5,-313.57 890,-318.57 890,-313.57 890,-313.57 890,-313.57 890,-318.57 885.5,-313.57 890,-323.57 890,-323.57"/>
131
+ </g>
132
+ <!-- Group&#45;&gt;RepositoryManager::SharingsMember -->
133
+ <g id="edge36" class="edge"><title>Group&#45;&gt;RepositoryManager::SharingsMember</title>
134
+ <path fill="none" stroke="#46b0a2" d="M936.786,-287.177C992.558,-277.696 1079.04,-262.437 1085,-258 1103.69,-244.087 1168.5,-106.848 1196.24,-46.8428"/>
135
+ <ellipse fill="none" stroke="#46b0a2" cx="932.738" cy="-287.864" rx="4.00001" ry="4.00001"/>
136
+ <polygon fill="#46b0a2" stroke="#46b0a2" points="1196.32,-46.655 1204.6,-39.4584 1198.42,-42.1145 1200.51,-37.574 1200.51,-37.574 1200.51,-37.574 1198.42,-42.1145 1196.42,-35.6895 1196.32,-46.655 1196.32,-46.655"/>
137
+ <text text-anchor="middle" x="1211.5" y="-153.4" font-family="Times Roman,serif" font-size="14.00">sharings_members</text>
138
+ </g>
139
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
140
+ <g id="edge40" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
141
+ <path fill="none" stroke="#480359" d="M841.289,-290.616C805.323,-285.982 755.897,-276.626 716,-258 704.238,-252.509 705.007,-244.932 693,-240 662.341,-227.406 591.351,-218.53 524.106,-212.634"/>
142
+ <ellipse fill="none" stroke="#480359" cx="845.698" cy="-291.155" rx="4.00001" ry="4.00001"/>
143
+ <polygon fill="#480359" stroke="#480359" points="523.749,-212.603 514.17,-207.266 518.767,-212.176 513.786,-211.749 513.786,-211.749 513.786,-211.749 518.767,-212.176 513.401,-216.233 523.749,-212.603 523.749,-212.603"/>
144
+ <text text-anchor="middle" x="754" y="-245.4" font-family="Times Roman,serif" font-size="14.00">repo_items</text>
145
+ </g>
146
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
147
+ <g id="edge42" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
148
+ <path fill="none" stroke="#320068" d="M851.144,-277.713C839.265,-271.934 826.348,-265.133 815,-258 804.01,-251.092 804.073,-244.768 792,-240 746.64,-222.084 634.393,-212.787 537.629,-207.995"/>
149
+ <polygon fill="#320068" stroke="#320068" points="851.368,-277.82 858.465,-286.18 855.883,-279.968 860.398,-282.117 860.398,-282.117 860.398,-282.117 855.883,-279.968 862.332,-278.053 851.368,-277.82 851.368,-277.82"/>
150
+ <polygon fill="#320068" stroke="#320068" points="537.406,-207.984 527.634,-203.008 532.412,-207.744 527.418,-207.503 527.418,-207.503 527.418,-207.503 532.412,-207.744 527.201,-211.998 537.406,-207.984 537.406,-207.984"/>
151
+ <text text-anchor="middle" x="880" y="-245.4" font-family="Times Roman,serif" font-size="14.00">shared_repo_items</text>
152
+ </g>
153
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
154
+ <g id="edge44" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
155
+ <path fill="none" stroke="#4b29d8" d="M841.942,-289.807C802.501,-285.668 745.179,-279.934 695,-276 661.377,-273.364 418.707,-278.596 392,-258 383.792,-251.67 379.277,-241.51 376.81,-231.635"/>
156
+ <ellipse fill="none" stroke="#4b29d8" cx="846.1" cy="-290.245" rx="4" ry="4"/>
157
+ <polygon fill="#4b29d8" stroke="#4b29d8" points="376.774,-231.445 379.334,-220.782 375.844,-226.532 374.913,-221.62 374.913,-221.62 374.913,-221.62 375.844,-226.532 370.492,-222.457 376.774,-231.445 376.774,-231.445"/>
158
+ <text text-anchor="middle" x="448" y="-245.4" font-family="Times Roman,serif" font-size="14.00">root_repo_items</text>
159
+ </g>
160
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
161
+ <g id="edge46" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
162
+ <path fill="none" stroke="#c68195" d="M839.652,-290.134C739.934,-280.467 526.567,-259.634 523,-258 512.424,-253.157 514.107,-245.758 504,-240 491.41,-232.827 477.329,-226.962 463.21,-222.191"/>
163
+ <polygon fill="#c68195" stroke="#c68195" points="839.844,-290.152 849.363,-295.596 844.821,-290.634 849.797,-291.116 849.797,-291.116 849.797,-291.116 844.821,-290.634 850.231,-286.637 839.844,-290.152 839.844,-290.152"/>
164
+ <polygon fill="#c68195" stroke="#c68195" points="462.97,-222.114 454.822,-214.775 458.209,-220.587 453.448,-219.06 453.448,-219.06 453.448,-219.06 458.209,-220.587 452.073,-223.345 462.97,-222.114 462.97,-222.114"/>
165
+ <text text-anchor="middle" x="606" y="-245.4" font-family="Times Roman,serif" font-size="14.00">root_shared_repo_items</text>
166
+ </g>
167
+ <!-- Group&#45;&gt;RepositoryManager::Sharing -->
168
+ <g id="edge34" class="edge"><title>Group&#45;&gt;RepositoryManager::Sharing</title>
169
+ <path fill="none" stroke="#ea867e" d="M936.868,-283.602C949.806,-278.071 962.373,-269.931 970,-258 993.177,-221.745 976.826,-170.352 962.609,-138.923"/>
170
+ <polygon fill="#ea867e" stroke="#ea867e" points="936.793,-283.63 925.847,-282.979 932.12,-285.408 927.447,-287.185 927.447,-287.185 927.447,-287.185 932.12,-285.408 929.046,-291.391 936.793,-283.63 936.793,-283.63"/>
171
+ <polygon fill="#ea867e" stroke="#ea867e" points="962.591,-138.887 962.378,-127.923 960.451,-134.368 958.311,-129.85 958.311,-129.85 958.311,-129.85 960.451,-134.368 954.244,-131.776 962.591,-138.887 962.591,-138.887"/>
172
+ <text text-anchor="middle" x="1011" y="-199.4" font-family="Times Roman,serif" font-size="14.00">sharings</text>
173
+ </g>
174
+ <!-- Group&#45;&gt;RepositoryManager::Sharing -->
175
+ <g id="edge38" class="edge"><title>Group&#45;&gt;RepositoryManager::Sharing</title>
176
+ <path fill="none" stroke="#6fa81c" d="M925.782,-277.492C942.218,-267.1 955.893,-253.377 945,-240 920.068,-209.381 882.932,-252.619 858,-222 847.336,-208.904 850.735,-199.247 858,-184 867.743,-163.553 886.321,-146.972 904.08,-134.812"/>
177
+ <ellipse fill="none" stroke="#6fa81c" cx="922.073" cy="-279.69" rx="4.00002" ry="4.00002"/>
178
+ <polygon fill="#6fa81c" stroke="#6fa81c" points="904.313,-134.66 915.148,-132.969 908.502,-131.93 912.69,-129.199 912.69,-129.199 912.69,-129.199 908.502,-131.93 910.233,-125.429 904.313,-134.66 904.313,-134.66"/>
179
+ <text text-anchor="middle" x="916.5" y="-199.4" font-family="Times Roman,serif" font-size="14.00">sharings_owners</text>
180
+ </g>
181
+ <!-- ActiveRecord::Base -->
182
+ <g id="node10" class="node"><title>ActiveRecord::Base</title>
183
+ <ellipse fill="none" stroke="black" cx="1051" cy="-475" rx="104.151" ry="18.3848"/>
184
+ <text text-anchor="middle" x="1051" y="-471.4" font-family="Times Roman,serif" font-size="14.00">ActiveRecord::Base</text>
185
+ </g>
186
+ <!-- ActiveRecord::Base&#45;&gt;RepositoryManager::SharingsMember -->
187
+ <g id="edge4" class="edge"><title>ActiveRecord::Base&#45;&gt;RepositoryManager::SharingsMember</title>
188
+ <path fill="none" stroke="black" d="M1150.29,-469.358C1271.06,-459.714 1459,-434.504 1459,-371 1459,-371 1459,-371 1459,-111 1459,-76.1981 1372.6,-50.519 1301.38,-35.2644"/>
189
+ </g>
190
+ <!-- ActiveRecord::Base&#45;&gt;RepositoryManager::RepoItem -->
191
+ <g id="edge8" class="edge"><title>ActiveRecord::Base&#45;&gt;RepositoryManager::RepoItem</title>
192
+ <path fill="none" stroke="black" d="M1015.71,-457.507C993.835,-447.381 964.875,-435.243 938,-428 761.214,-380.353 239.317,-454.571 122,-314 100.094,-287.752 114.799,-259.326 143,-240 160.547,-227.975 202.411,-219.596 245.753,-213.893"/>
193
+ </g>
194
+ <!-- ActiveRecord::Base&#45;&gt;RepositoryManager::Sharing -->
195
+ <g id="edge14" class="edge"><title>ActiveRecord::Base&#45;&gt;RepositoryManager::Sharing</title>
196
+ <path fill="none" stroke="black" d="M1145.32,-467.189C1254.95,-455.447 1421,-428.217 1421,-371 1421,-371 1421,-371 1421,-249 1421,-218.205 1420.05,-204.417 1397,-184 1352.1,-144.239 1202.45,-125.962 1088.13,-117.672"/>
197
+ </g>
198
+ <!-- ActiveRecord::Base&#45;&gt;User -->
199
+ <g id="edge32" class="edge"><title>ActiveRecord::Base&#45;&gt;User</title>
200
+ <path fill="none" stroke="black" d="M1023.32,-457.122C991.856,-436.795 941.108,-404.014 912.145,-385.305"/>
201
+ </g>
202
+ <!-- ActiveRecord::Base&#45;&gt;Group -->
203
+ <g id="edge48" class="edge"><title>ActiveRecord::Base&#45;&gt;Group</title>
204
+ <path fill="none" stroke="black" d="M1034.38,-456.415C1003.04,-421.384 935.675,-346.065 905.348,-312.16"/>
205
+ </g>
206
+ </g>
207
+ </svg>
@@ -0,0 +1,327 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 2.26.3 (20100126.1600)
5
+ -->
6
+ <!-- Title: models_diagram Pages: 1 -->
7
+ <svg width="1379pt" height="1258pt"
8
+ viewBox="0.00 0.00 1379.46 1258.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 1254)">
10
+ <title>models_diagram</title>
11
+ <polygon fill="white" stroke="white" points="-4,5 -4,-1254 1376.46,-1254 1376.46,5 -4,5"/>
12
+ <!-- _diagram_info -->
13
+ <g id="node1" class="node"><title>_diagram_info</title>
14
+ <text text-anchor="start" x="599.459" y="-1233.8" font-family="Times Roman,serif" font-size="13.00">Models diagram</text>
15
+ <text text-anchor="start" x="599.459" y="-1216.8" font-family="Times Roman,serif" font-size="13.00">Date: Jul 01 2014 &#45; 13:20</text>
16
+ <text text-anchor="start" x="599.459" y="-1199.8" font-family="Times Roman,serif" font-size="13.00">Migration version: 20131018214212</text>
17
+ <text text-anchor="start" x="599.459" y="-1182.8" font-family="Times Roman,serif" font-size="13.00">Generated by RailRoady 1.1.1</text>
18
+ <text text-anchor="start" x="599.459" y="-1165.8" font-family="Times Roman,serif" font-size="13.00">http://railroady.prestonlee.com</text>
19
+ </g>
20
+ <!-- RepositoryManager::RepoFolder -->
21
+ <g id="node2" class="node"><title>RepositoryManager::RepoFolder</title>
22
+ <polyline fill="none" stroke="black" points="302.459,-199 512.459,-199 "/>
23
+ <path fill="none" stroke="black" d="M512.459,-199C518.459,-199 524.459,-205 524.459,-211"/>
24
+ <polyline fill="none" stroke="black" points="524.459,-211 524.459,-437 "/>
25
+ <path fill="none" stroke="black" d="M524.459,-437C524.459,-443 518.459,-449 512.459,-449"/>
26
+ <polyline fill="none" stroke="black" points="512.459,-449 302.459,-449 "/>
27
+ <path fill="none" stroke="black" d="M302.459,-449C296.459,-449 290.459,-443 290.459,-437"/>
28
+ <polyline fill="none" stroke="black" points="290.459,-437 290.459,-211 "/>
29
+ <path fill="none" stroke="black" d="M290.459,-211C290.459,-205 296.459,-199 302.459,-199"/>
30
+ <text text-anchor="middle" x="407.459" y="-432.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::RepoFolder</text>
31
+ <polyline fill="none" stroke="black" points="290.459,-423 524.459,-423 "/>
32
+ <text text-anchor="start" x="298.459" y="-406.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
33
+ <text text-anchor="start" x="298.459" y="-388.4" font-family="Times Roman,serif" font-size="14.00">owner_id :integer</text>
34
+ <text text-anchor="start" x="298.459" y="-370.4" font-family="Times Roman,serif" font-size="14.00">owner_type :string</text>
35
+ <text text-anchor="start" x="298.459" y="-352.4" font-family="Times Roman,serif" font-size="14.00">sender_id :integer</text>
36
+ <text text-anchor="start" x="298.459" y="-334.4" font-family="Times Roman,serif" font-size="14.00">sender_type :string</text>
37
+ <text text-anchor="start" x="298.459" y="-316.4" font-family="Times Roman,serif" font-size="14.00">ancestry :string</text>
38
+ <text text-anchor="start" x="298.459" y="-298.4" font-family="Times Roman,serif" font-size="14.00">ancestry_depth :integer</text>
39
+ <text text-anchor="start" x="298.459" y="-280.4" font-family="Times Roman,serif" font-size="14.00">name :string</text>
40
+ <text text-anchor="start" x="298.459" y="-262.4" font-family="Times Roman,serif" font-size="14.00">file_size :float</text>
41
+ <text text-anchor="start" x="298.459" y="-244.4" font-family="Times Roman,serif" font-size="14.00">content_type :string</text>
42
+ <text text-anchor="start" x="298.459" y="-226.4" font-family="Times Roman,serif" font-size="14.00">file :string</text>
43
+ <text text-anchor="start" x="298.459" y="-208.4" font-family="Times Roman,serif" font-size="14.00">type :string</text>
44
+ </g>
45
+ <!-- RepositoryManager::SharingsMember -->
46
+ <g id="node3" class="node"><title>RepositoryManager::SharingsMember</title>
47
+ <polyline fill="none" stroke="black" points="985.459,-1 1235.46,-1 "/>
48
+ <path fill="none" stroke="black" d="M1235.46,-1C1241.46,-1 1247.46,-7 1247.46,-13"/>
49
+ <polyline fill="none" stroke="black" points="1247.46,-13 1247.46,-131 "/>
50
+ <path fill="none" stroke="black" d="M1247.46,-131C1247.46,-137 1241.46,-143 1235.46,-143"/>
51
+ <polyline fill="none" stroke="black" points="1235.46,-143 985.459,-143 "/>
52
+ <path fill="none" stroke="black" d="M985.459,-143C979.459,-143 973.459,-137 973.459,-131"/>
53
+ <polyline fill="none" stroke="black" points="973.459,-131 973.459,-13 "/>
54
+ <path fill="none" stroke="black" d="M973.459,-13C973.459,-7 979.459,-1 985.459,-1"/>
55
+ <text text-anchor="middle" x="1110.46" y="-126.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::SharingsMember</text>
56
+ <polyline fill="none" stroke="black" points="973.459,-117 1247.46,-117 "/>
57
+ <text text-anchor="start" x="981.459" y="-100.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
58
+ <text text-anchor="start" x="981.459" y="-82.4" font-family="Times Roman,serif" font-size="14.00">sharing_id :integer</text>
59
+ <text text-anchor="start" x="981.459" y="-64.4" font-family="Times Roman,serif" font-size="14.00">member_id :integer</text>
60
+ <text text-anchor="start" x="981.459" y="-46.4" font-family="Times Roman,serif" font-size="14.00">member_type :string</text>
61
+ <text text-anchor="start" x="981.459" y="-28.4" font-family="Times Roman,serif" font-size="14.00">can_add :boolean</text>
62
+ <text text-anchor="start" x="981.459" y="-10.4" font-family="Times Roman,serif" font-size="14.00">can_remove :boolean</text>
63
+ </g>
64
+ <!-- RepositoryManager::RepoItem -->
65
+ <g id="node4" class="node"><title>RepositoryManager::RepoItem</title>
66
+ <polyline fill="none" stroke="black" points="186.459,-505 386.459,-505 "/>
67
+ <path fill="none" stroke="black" d="M386.459,-505C392.459,-505 398.459,-511 398.459,-517"/>
68
+ <polyline fill="none" stroke="black" points="398.459,-517 398.459,-743 "/>
69
+ <path fill="none" stroke="black" d="M398.459,-743C398.459,-749 392.459,-755 386.459,-755"/>
70
+ <polyline fill="none" stroke="black" points="386.459,-755 186.459,-755 "/>
71
+ <path fill="none" stroke="black" d="M186.459,-755C180.459,-755 174.459,-749 174.459,-743"/>
72
+ <polyline fill="none" stroke="black" points="174.459,-743 174.459,-517 "/>
73
+ <path fill="none" stroke="black" d="M174.459,-517C174.459,-511 180.459,-505 186.459,-505"/>
74
+ <text text-anchor="middle" x="286.459" y="-738.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::RepoItem</text>
75
+ <polyline fill="none" stroke="black" points="174.459,-729 398.459,-729 "/>
76
+ <text text-anchor="start" x="182.459" y="-712.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
77
+ <text text-anchor="start" x="182.459" y="-694.4" font-family="Times Roman,serif" font-size="14.00">owner_id :integer</text>
78
+ <text text-anchor="start" x="182.459" y="-676.4" font-family="Times Roman,serif" font-size="14.00">owner_type :string</text>
79
+ <text text-anchor="start" x="182.459" y="-658.4" font-family="Times Roman,serif" font-size="14.00">sender_id :integer</text>
80
+ <text text-anchor="start" x="182.459" y="-640.4" font-family="Times Roman,serif" font-size="14.00">sender_type :string</text>
81
+ <text text-anchor="start" x="182.459" y="-622.4" font-family="Times Roman,serif" font-size="14.00">ancestry :string</text>
82
+ <text text-anchor="start" x="182.459" y="-604.4" font-family="Times Roman,serif" font-size="14.00">ancestry_depth :integer</text>
83
+ <text text-anchor="start" x="182.459" y="-586.4" font-family="Times Roman,serif" font-size="14.00">name :string</text>
84
+ <text text-anchor="start" x="182.459" y="-568.4" font-family="Times Roman,serif" font-size="14.00">file_size :float</text>
85
+ <text text-anchor="start" x="182.459" y="-550.4" font-family="Times Roman,serif" font-size="14.00">content_type :string</text>
86
+ <text text-anchor="start" x="182.459" y="-532.4" font-family="Times Roman,serif" font-size="14.00">file :string</text>
87
+ <text text-anchor="start" x="182.459" y="-514.4" font-family="Times Roman,serif" font-size="14.00">type :string</text>
88
+ </g>
89
+ <!-- RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFolder -->
90
+ <g id="edge2" class="edge"><title>RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFolder</title>
91
+ <path fill="none" stroke="black" d="M336.024,-504.655C343.268,-486.335 350.729,-467.467 357.972,-449.15"/>
92
+ </g>
93
+ <!-- RepositoryManager::RepoFile -->
94
+ <g id="node5" class="node"><title>RepositoryManager::RepoFile</title>
95
+ <polyline fill="none" stroke="black" points="69.9595,-199 260.959,-199 "/>
96
+ <path fill="none" stroke="black" d="M260.959,-199C266.959,-199 272.959,-205 272.959,-211"/>
97
+ <polyline fill="none" stroke="black" points="272.959,-211 272.959,-437 "/>
98
+ <path fill="none" stroke="black" d="M272.959,-437C272.959,-443 266.959,-449 260.959,-449"/>
99
+ <polyline fill="none" stroke="black" points="260.959,-449 69.9595,-449 "/>
100
+ <path fill="none" stroke="black" d="M69.9595,-449C63.9595,-449 57.9595,-443 57.9595,-437"/>
101
+ <polyline fill="none" stroke="black" points="57.9595,-437 57.9595,-211 "/>
102
+ <path fill="none" stroke="black" d="M57.9595,-211C57.9595,-205 63.9595,-199 69.9595,-199"/>
103
+ <text text-anchor="middle" x="165.459" y="-432.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::RepoFile</text>
104
+ <polyline fill="none" stroke="black" points="57.9595,-423 272.959,-423 "/>
105
+ <text text-anchor="start" x="65.9595" y="-406.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
106
+ <text text-anchor="start" x="65.9595" y="-388.4" font-family="Times Roman,serif" font-size="14.00">owner_id :integer</text>
107
+ <text text-anchor="start" x="65.9595" y="-370.4" font-family="Times Roman,serif" font-size="14.00">owner_type :string</text>
108
+ <text text-anchor="start" x="65.9595" y="-352.4" font-family="Times Roman,serif" font-size="14.00">sender_id :integer</text>
109
+ <text text-anchor="start" x="65.9595" y="-334.4" font-family="Times Roman,serif" font-size="14.00">sender_type :string</text>
110
+ <text text-anchor="start" x="65.9595" y="-316.4" font-family="Times Roman,serif" font-size="14.00">ancestry :string</text>
111
+ <text text-anchor="start" x="65.9595" y="-298.4" font-family="Times Roman,serif" font-size="14.00">ancestry_depth :integer</text>
112
+ <text text-anchor="start" x="65.9595" y="-280.4" font-family="Times Roman,serif" font-size="14.00">name :string</text>
113
+ <text text-anchor="start" x="65.9595" y="-262.4" font-family="Times Roman,serif" font-size="14.00">file_size :float</text>
114
+ <text text-anchor="start" x="65.9595" y="-244.4" font-family="Times Roman,serif" font-size="14.00">content_type :string</text>
115
+ <text text-anchor="start" x="65.9595" y="-226.4" font-family="Times Roman,serif" font-size="14.00">file :string</text>
116
+ <text text-anchor="start" x="65.9595" y="-208.4" font-family="Times Roman,serif" font-size="14.00">type :string</text>
117
+ </g>
118
+ <!-- RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFile -->
119
+ <g id="edge10" class="edge"><title>RepositoryManager::RepoItem&#45;&gt;RepositoryManager::RepoFile</title>
120
+ <path fill="none" stroke="black" d="M236.895,-504.655C229.651,-486.335 222.19,-467.467 214.947,-449.15"/>
121
+ </g>
122
+ <!-- RepositoryManager::Sharing -->
123
+ <g id="node6" class="node"><title>RepositoryManager::Sharing</title>
124
+ <polyline fill="none" stroke="black" points="788.459,-208 976.459,-208 "/>
125
+ <path fill="none" stroke="black" d="M976.459,-208C982.459,-208 988.459,-214 988.459,-220"/>
126
+ <polyline fill="none" stroke="black" points="988.459,-220 988.459,-428 "/>
127
+ <path fill="none" stroke="black" d="M988.459,-428C988.459,-434 982.459,-440 976.459,-440"/>
128
+ <polyline fill="none" stroke="black" points="976.459,-440 788.459,-440 "/>
129
+ <path fill="none" stroke="black" d="M788.459,-440C782.459,-440 776.459,-434 776.459,-428"/>
130
+ <polyline fill="none" stroke="black" points="776.459,-428 776.459,-220 "/>
131
+ <path fill="none" stroke="black" d="M776.459,-220C776.459,-214 782.459,-208 788.459,-208"/>
132
+ <text text-anchor="middle" x="882.459" y="-423.4" font-family="Times Roman,serif" font-size="14.00">RepositoryManager::Sharing</text>
133
+ <polyline fill="none" stroke="black" points="776.459,-414 988.459,-414 "/>
134
+ <text text-anchor="start" x="784.459" y="-397.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
135
+ <text text-anchor="start" x="784.459" y="-379.4" font-family="Times Roman,serif" font-size="14.00">owner_id :integer</text>
136
+ <text text-anchor="start" x="784.459" y="-361.4" font-family="Times Roman,serif" font-size="14.00">owner_type :string</text>
137
+ <text text-anchor="start" x="784.459" y="-343.4" font-family="Times Roman,serif" font-size="14.00">creator_id :integer</text>
138
+ <text text-anchor="start" x="784.459" y="-325.4" font-family="Times Roman,serif" font-size="14.00">creator_type :string</text>
139
+ <text text-anchor="start" x="784.459" y="-307.4" font-family="Times Roman,serif" font-size="14.00">repo_item_id :integer</text>
140
+ <text text-anchor="start" x="784.459" y="-289.4" font-family="Times Roman,serif" font-size="14.00">can_create :boolean</text>
141
+ <text text-anchor="start" x="784.459" y="-271.4" font-family="Times Roman,serif" font-size="14.00">can_read :boolean</text>
142
+ <text text-anchor="start" x="784.459" y="-253.4" font-family="Times Roman,serif" font-size="14.00">can_update :boolean</text>
143
+ <text text-anchor="start" x="784.459" y="-235.4" font-family="Times Roman,serif" font-size="14.00">can_delete :boolean</text>
144
+ <text text-anchor="start" x="784.459" y="-217.4" font-family="Times Roman,serif" font-size="14.00">can_share :boolean</text>
145
+ </g>
146
+ <!-- RepositoryManager::RepoItem&#45;&gt;RepositoryManager::Sharing -->
147
+ <g id="edge6" class="edge"><title>RepositoryManager::RepoItem&#45;&gt;RepositoryManager::Sharing</title>
148
+ <path fill="none" stroke="#cbb150" d="M405.949,-568.651C511.201,-514.612 663.504,-436.417 767.406,-383.071"/>
149
+ <ellipse fill="none" stroke="#cbb150" cx="402.121" cy="-570.617" rx="4.00002" ry="4.00002"/>
150
+ <polygon fill="#cbb150" stroke="#cbb150" points="767.47,-383.039 778.421,-382.474 771.918,-380.755 776.366,-378.471 776.366,-378.471 776.366,-378.471 771.918,-380.755 774.31,-374.468 767.47,-383.039 767.47,-383.039"/>
151
+ <text text-anchor="middle" x="613.459" y="-473.4" font-family="Times Roman,serif" font-size="14.00">sharings</text>
152
+ </g>
153
+ <!-- RepositoryManager::Sharing&#45;&gt;RepositoryManager::SharingsMember -->
154
+ <g id="edge12" class="edge"><title>RepositoryManager::Sharing&#45;&gt;RepositoryManager::SharingsMember</title>
155
+ <path fill="none" stroke="#336d95" d="M858.961,-199.737C861.131,-186.256 865.637,-173.338 873.459,-162 885.575,-144.439 922.504,-127.272 963.715,-112.718"/>
156
+ <ellipse fill="none" stroke="#336d95" cx="858.45" cy="-203.763" rx="4.00001" ry="4.00001"/>
157
+ <polygon fill="#336d95" stroke="#336d95" points="963.962,-112.632 974.884,-113.619 968.688,-110.999 973.414,-109.366 973.414,-109.366 973.414,-109.366 968.688,-110.999 971.943,-105.112 963.962,-112.632 963.962,-112.632"/>
158
+ <text text-anchor="middle" x="937.959" y="-167.4" font-family="Times Roman,serif" font-size="14.00">sharings_members</text>
159
+ </g>
160
+ <!-- User -->
161
+ <g id="node7" class="node"><title>User</title>
162
+ <polyline fill="none" stroke="black" points="683.959,-975 824.959,-975 "/>
163
+ <path fill="none" stroke="black" d="M824.959,-975C830.959,-975 836.959,-981 836.959,-987"/>
164
+ <polyline fill="none" stroke="black" points="836.959,-987 836.959,-1105 "/>
165
+ <path fill="none" stroke="black" d="M836.959,-1105C836.959,-1111 830.959,-1117 824.959,-1117"/>
166
+ <polyline fill="none" stroke="black" points="824.959,-1117 683.959,-1117 "/>
167
+ <path fill="none" stroke="black" d="M683.959,-1117C677.959,-1117 671.959,-1111 671.959,-1105"/>
168
+ <polyline fill="none" stroke="black" points="671.959,-1105 671.959,-987 "/>
169
+ <path fill="none" stroke="black" d="M671.959,-987C671.959,-981 677.959,-975 683.959,-975"/>
170
+ <text text-anchor="middle" x="754.459" y="-1100.4" font-family="Times Roman,serif" font-size="14.00">User</text>
171
+ <polyline fill="none" stroke="black" points="671.959,-1091 836.959,-1091 "/>
172
+ <text text-anchor="start" x="679.959" y="-1074.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
173
+ <text text-anchor="start" x="679.959" y="-1056.4" font-family="Times Roman,serif" font-size="14.00">nickname :string</text>
174
+ <text text-anchor="start" x="679.959" y="-1038.4" font-family="Times Roman,serif" font-size="14.00">password :string</text>
175
+ <text text-anchor="start" x="679.959" y="-1020.4" font-family="Times Roman,serif" font-size="14.00">email :string</text>
176
+ <text text-anchor="start" x="679.959" y="-1002.4" font-family="Times Roman,serif" font-size="14.00">created_at :datetime</text>
177
+ <text text-anchor="start" x="679.959" y="-984.4" font-family="Times Roman,serif" font-size="14.00">updated_at :datetime</text>
178
+ </g>
179
+ <!-- User&#45;&gt;RepositoryManager::SharingsMember -->
180
+ <g id="edge20" class="edge"><title>User&#45;&gt;RepositoryManager::SharingsMember</title>
181
+ <path fill="none" stroke="#88bf98" d="M844.632,-1019.84C942.911,-985.709 1094.08,-915.299 1153.46,-792 1255.54,-580.048 1184.64,-291.431 1139.67,-152.815"/>
182
+ <ellipse fill="none" stroke="#88bf98" cx="840.845" cy="-1021.13" rx="4.00001" ry="4.00001"/>
183
+ <polygon fill="#88bf98" stroke="#88bf98" points="1139.6,-152.598 1140.75,-141.693 1138.04,-147.847 1136.48,-143.097 1136.48,-143.097 1136.48,-143.097 1138.04,-147.847 1132.2,-144.5 1139.6,-152.598 1139.6,-152.598"/>
184
+ <text text-anchor="middle" x="1269.96" y="-626.4" font-family="Times Roman,serif" font-size="14.00">sharings_members</text>
185
+ </g>
186
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
187
+ <g id="edge24" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
188
+ <path fill="none" stroke="#d92053" d="M663.528,-1041.52C522.644,-1032.43 262.003,-1006.32 206.459,-936 168.014,-887.327 179.071,-822.031 203.431,-764.258"/>
189
+ <ellipse fill="none" stroke="#d92053" cx="667.81" cy="-1041.79" rx="4" ry="4"/>
190
+ <polygon fill="#d92053" stroke="#d92053" points="203.448,-764.218 211.574,-756.854 205.449,-759.636 207.449,-755.054 207.449,-755.054 207.449,-755.054 205.449,-759.636 203.325,-753.253 203.448,-764.218 203.448,-764.218"/>
191
+ <text text-anchor="middle" x="244.459" y="-869.4" font-family="Times Roman,serif" font-size="14.00">repo_items</text>
192
+ </g>
193
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
194
+ <g id="edge26" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
195
+ <path fill="none" stroke="#57288e" d="M661.773,-1038.24C479.148,-1022.02 86.9875,-982.154 47.4595,-936 11.0323,-893.467 22.4658,-860.113 47.4595,-810 72.7768,-759.238 119.985,-719.03 165.8,-689.608"/>
196
+ <polygon fill="#57288e" stroke="#57288e" points="661.941,-1038.26 671.506,-1043.62 666.921,-1038.7 671.902,-1039.14 671.902,-1039.14 671.902,-1039.14 666.921,-1038.7 672.298,-1034.66 661.941,-1038.26 661.941,-1038.26"/>
197
+ <polygon fill="#57288e" stroke="#57288e" points="165.869,-689.565 176.729,-688.049 170.101,-686.903 174.333,-684.24 174.333,-684.24 174.333,-684.24 170.101,-686.903 171.937,-680.431 165.869,-689.565 165.869,-689.565"/>
198
+ <text text-anchor="middle" x="112.459" y="-869.4" font-family="Times Roman,serif" font-size="14.00">shared_repo_items</text>
199
+ </g>
200
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
201
+ <g id="edge28" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
202
+ <path fill="none" stroke="#d62275" d="M663.592,-1033.87C550.759,-1017.03 367.179,-983.224 318.459,-936 276.64,-895.464 314.985,-858.313 282.459,-810 275.21,-799.232 265.145,-803.669 259.459,-792 255.955,-784.808 258.719,-781.966 259.459,-774 259.73,-771.091 260.03,-768.154 260.357,-765.196"/>
203
+ <ellipse fill="none" stroke="#d62275" cx="667.634" cy="-1034.47" rx="4.00001" ry="4.00001"/>
204
+ <polygon fill="#d62275" stroke="#d62275" points="260.381,-765.002 266.037,-755.608 260.975,-760.038 261.569,-755.073 261.569,-755.073 261.569,-755.073 260.975,-760.038 257.101,-754.539 260.381,-765.002 260.381,-765.002"/>
205
+ <text text-anchor="middle" x="374.459" y="-869.4" font-family="Times Roman,serif" font-size="14.00">root_repo_items</text>
206
+ </g>
207
+ <!-- User&#45;&gt;RepositoryManager::RepoItem -->
208
+ <g id="edge30" class="edge"><title>User&#45;&gt;RepositoryManager::RepoItem</title>
209
+ <path fill="none" stroke="#71d8f5" d="M662.046,-1023.1C608.9,-1006.16 543.714,-978.511 497.459,-936 450.761,-893.081 482.675,-846.003 430.459,-810 404.091,-791.819 308.72,-815.955 287.459,-792 280.315,-783.95 275.284,-774.686 271.894,-764.752"/>
210
+ <polygon fill="#71d8f5" stroke="#71d8f5" points="662.273,-1023.17 670.486,-1030.44 667.048,-1024.65 671.822,-1026.14 671.822,-1026.14 671.822,-1026.14 667.048,-1024.65 673.159,-1021.84 662.273,-1023.17 662.273,-1023.17"/>
211
+ <polygon fill="#71d8f5" stroke="#71d8f5" points="271.868,-764.658 273.461,-753.808 270.5,-759.849 269.132,-755.039 269.132,-755.039 269.132,-755.039 270.5,-759.849 264.804,-756.27 271.868,-764.658 271.868,-764.658"/>
212
+ <text text-anchor="middle" x="580.459" y="-869.4" font-family="Times Roman,serif" font-size="14.00">root_shared_repo_items</text>
213
+ </g>
214
+ <!-- User&#45;&gt;RepositoryManager::Sharing -->
215
+ <g id="edge22" class="edge"><title>User&#45;&gt;RepositoryManager::Sharing</title>
216
+ <path fill="none" stroke="#5eece5" d="M843.941,-990.283C867.028,-974.078 891.091,-955.461 911.459,-936 969.885,-880.177 982.744,-862.374 1022.46,-792 1094.18,-664.919 1114.55,-629.42 1141.46,-486 1155.39,-411.766 1073.67,-369.991 998.41,-347.534"/>
217
+ <ellipse fill="none" stroke="#5eece5" cx="840.422" cy="-992.727" rx="4.00002" ry="4.00002"/>
218
+ <polygon fill="#5eece5" stroke="#5eece5" points="998.405,-347.533 990.046,-340.434 993.601,-346.145 988.797,-344.758 988.797,-344.758 988.797,-344.758 993.601,-346.145 987.549,-349.081 998.405,-347.533 998.405,-347.533"/>
219
+ <text text-anchor="middle" x="1090.96" y="-779.4" font-family="Times Roman,serif" font-size="14.00">sharings_owners</text>
220
+ </g>
221
+ <!-- User&#45;&gt;RepositoryManager::Sharing -->
222
+ <g id="edge18" class="edge"><title>User&#45;&gt;RepositoryManager::Sharing</title>
223
+ <path fill="none" stroke="#fd99c4" d="M831.433,-966.994C878.451,-912.637 933.766,-836.034 956.459,-756 987.012,-648.248 978.164,-613.877 956.459,-504 952.924,-486.1 947.587,-467.743 941.366,-449.918"/>
224
+ <polygon fill="#fd99c4" stroke="#fd99c4" points="831.145,-967.323 821.174,-971.887 827.853,-971.086 824.561,-974.85 824.561,-974.85 824.561,-974.85 827.853,-971.086 827.948,-977.813 831.145,-967.323 831.145,-967.323"/>
225
+ <polygon fill="#fd99c4" stroke="#fd99c4" points="941.211,-449.485 942.06,-438.553 939.518,-444.781 937.825,-440.076 937.825,-440.076 937.825,-440.076 939.518,-444.781 933.591,-441.599 941.211,-449.485 941.211,-449.485"/>
226
+ <text text-anchor="middle" x="979.459" y="-779.4" font-family="Times Roman,serif" font-size="14.00">sharings</text>
227
+ </g>
228
+ <!-- Group -->
229
+ <g id="node8" class="node"><title>Group</title>
230
+ <polyline fill="none" stroke="black" points="683.959,-811 824.959,-811 "/>
231
+ <path fill="none" stroke="black" d="M824.959,-811C830.959,-811 836.959,-817 836.959,-823"/>
232
+ <polyline fill="none" stroke="black" points="836.959,-823 836.959,-923 "/>
233
+ <path fill="none" stroke="black" d="M836.959,-923C836.959,-929 830.959,-935 824.959,-935"/>
234
+ <polyline fill="none" stroke="black" points="824.959,-935 683.959,-935 "/>
235
+ <path fill="none" stroke="black" d="M683.959,-935C677.959,-935 671.959,-929 671.959,-923"/>
236
+ <polyline fill="none" stroke="black" points="671.959,-923 671.959,-823 "/>
237
+ <path fill="none" stroke="black" d="M671.959,-823C671.959,-817 677.959,-811 683.959,-811"/>
238
+ <text text-anchor="middle" x="754.459" y="-918.4" font-family="Times Roman,serif" font-size="14.00">Group</text>
239
+ <polyline fill="none" stroke="black" points="671.959,-909 836.959,-909 "/>
240
+ <text text-anchor="start" x="679.959" y="-892.4" font-family="Times Roman,serif" font-size="14.00">id :integer</text>
241
+ <text text-anchor="start" x="679.959" y="-874.4" font-family="Times Roman,serif" font-size="14.00">name :string</text>
242
+ <text text-anchor="start" x="679.959" y="-856.4" font-family="Times Roman,serif" font-size="14.00">description :text</text>
243
+ <text text-anchor="start" x="679.959" y="-838.4" font-family="Times Roman,serif" font-size="14.00">created_at :datetime</text>
244
+ <text text-anchor="start" x="679.959" y="-820.4" font-family="Times Roman,serif" font-size="14.00">updated_at :datetime</text>
245
+ </g>
246
+ <!-- User&#45;&gt;Group -->
247
+ <g id="edge16" class="edge"><title>User&#45;&gt;Group</title>
248
+ <path fill="none" stroke="#7679c0" d="M754.459,-964.411C754.459,-958.093 754.459,-951.741 754.459,-945.488"/>
249
+ <polygon fill="#7679c0" stroke="#7679c0" points="754.46,-964.635 749.959,-974.635 754.46,-969.635 754.459,-974.635 754.459,-974.635 754.459,-974.635 754.46,-969.635 758.959,-974.636 754.46,-964.635 754.46,-964.635"/>
250
+ <polygon fill="#7679c0" stroke="#7679c0" points="754.46,-945.085 758.959,-935.085 754.46,-940.085 754.459,-935.085 754.459,-935.085 754.459,-935.085 754.46,-940.085 749.959,-935.085 754.46,-945.085 754.46,-945.085"/>
251
+ </g>
252
+ <!-- Group&#45;&gt;RepositoryManager::SharingsMember -->
253
+ <g id="edge36" class="edge"><title>Group&#45;&gt;RepositoryManager::SharingsMember</title>
254
+ <path fill="none" stroke="#016f1e" d="M844.624,-832.501C865.02,-824.291 886.768,-816.265 907.459,-810 946.501,-798.179 969.223,-821.44 997.459,-792 1019.5,-769.02 1076.76,-336.915 1100.21,-153.369"/>
255
+ <ellipse fill="none" stroke="#016f1e" cx="840.881" cy="-834.024" rx="4.00002" ry="4.00002"/>
256
+ <polygon fill="#016f1e" stroke="#016f1e" points="1100.24,-153.15 1105.97,-143.8 1100.87,-148.19 1101.51,-143.23 1101.51,-143.23 1101.51,-143.23 1100.87,-148.19 1097.04,-142.661 1100.24,-153.15 1100.24,-153.15"/>
257
+ <text text-anchor="middle" x="1122.96" y="-473.4" font-family="Times Roman,serif" font-size="14.00">sharings_members</text>
258
+ </g>
259
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
260
+ <g id="edge40" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
261
+ <path fill="none" stroke="#71cc16" d="M664.867,-816.86C652.514,-808.698 640.086,-800.26 628.459,-792 617.878,-784.482 616.566,-780.719 605.459,-774 543.026,-736.232 468.973,-702.211 407.94,-676.732"/>
262
+ <ellipse fill="none" stroke="#71cc16" cx="668.373" cy="-819.165" rx="4.00002" ry="4.00002"/>
263
+ <polygon fill="#71cc16" stroke="#71cc16" points="407.883,-676.709 400.371,-668.72 403.265,-674.793 398.646,-672.877 398.646,-672.877 398.646,-672.877 403.265,-674.793 396.922,-677.033 407.883,-676.709 407.883,-676.709"/>
264
+ <text text-anchor="middle" x="666.459" y="-779.4" font-family="Times Roman,serif" font-size="14.00">repo_items</text>
265
+ </g>
266
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
267
+ <g id="edge42" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
268
+ <path fill="none" stroke="#266586" d="M727.249,-801.988C720.957,-791.613 713.414,-781.813 704.459,-774 621.261,-701.405 499.572,-664.926 408.924,-646.897"/>
269
+ <polygon fill="#266586" stroke="#266586" points="727.315,-802.106 728.327,-813.025 729.779,-806.457 732.243,-810.807 732.243,-810.807 732.243,-810.807 729.779,-806.457 736.159,-808.59 727.315,-802.106 727.315,-802.106"/>
270
+ <polygon fill="#266586" stroke="#266586" points="408.682,-646.85 399.721,-640.529 403.773,-645.898 398.864,-644.946 398.864,-644.946 398.864,-644.946 403.773,-645.898 398.008,-649.364 408.682,-646.85 408.682,-646.85"/>
271
+ <text text-anchor="middle" x="786.459" y="-779.4" font-family="Times Roman,serif" font-size="14.00">shared_repo_items</text>
272
+ </g>
273
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
274
+ <g id="edge44" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
275
+ <path fill="none" stroke="#d1eedf" d="M664.254,-824.351C650.566,-818.627 636.365,-813.564 622.459,-810 588.178,-801.213 330.152,-816.338 304.459,-792 296.281,-784.252 290.21,-774.996 285.79,-764.888"/>
276
+ <ellipse fill="none" stroke="#d1eedf" cx="668.125" cy="-826.015" rx="4.00002" ry="4.00002"/>
277
+ <polygon fill="#d1eedf" stroke="#d1eedf" points="285.732,-764.734 286.389,-753.787 283.957,-760.059 282.182,-755.385 282.182,-755.385 282.182,-755.385 283.957,-760.059 277.975,-756.982 285.732,-764.734 285.732,-764.734"/>
278
+ <text text-anchor="middle" x="360.459" y="-779.4" font-family="Times Roman,serif" font-size="14.00">root_repo_items</text>
279
+ </g>
280
+ <!-- Group&#45;&gt;RepositoryManager::RepoItem -->
281
+ <g id="edge46" class="edge"><title>Group&#45;&gt;RepositoryManager::RepoItem</title>
282
+ <path fill="none" stroke="#17f71a" d="M662.219,-824.048C649.142,-818.573 635.652,-813.66 622.459,-810 542.003,-787.678 510.217,-829.185 435.459,-792 432.597,-790.576 421.044,-778.821 405.542,-762.235"/>
283
+ <polygon fill="#17f71a" stroke="#17f71a" points="662.478,-824.16 669.875,-832.256 667.068,-826.142 671.659,-828.124 671.659,-828.124 671.659,-828.124 667.068,-826.142 673.443,-823.993 662.478,-824.16 662.478,-824.16"/>
284
+ <polygon fill="#17f71a" stroke="#17f71a" points="405.48,-762.169 401.965,-751.782 402.075,-758.508 398.67,-754.847 398.67,-754.847 398.67,-754.847 402.075,-758.508 395.375,-757.912 405.48,-762.169 405.48,-762.169"/>
285
+ <text text-anchor="middle" x="518.459" y="-779.4" font-family="Times Roman,serif" font-size="14.00">root_shared_repo_items</text>
286
+ </g>
287
+ <!-- Group&#45;&gt;RepositoryManager::Sharing -->
288
+ <g id="edge34" class="edge"><title>Group&#45;&gt;RepositoryManager::Sharing</title>
289
+ <path fill="none" stroke="#eaeaf5" d="M845.445,-832.014C860.302,-821.178 873.684,-807.939 882.459,-792 898.532,-762.808 894.005,-578.83 888.679,-450.444"/>
290
+ <polygon fill="#eaeaf5" stroke="#eaeaf5" points="845.296,-832.117 834.507,-834.082 841.178,-834.953 837.059,-837.788 837.059,-837.788 837.059,-837.788 841.178,-834.953 839.612,-841.495 845.296,-832.117 845.296,-832.117"/>
291
+ <polygon fill="#eaeaf5" stroke="#eaeaf5" points="888.666,-450.131 892.741,-439.95 888.456,-445.135 888.245,-440.139 888.245,-440.139 888.245,-440.139 888.456,-445.135 883.749,-440.329 888.666,-450.131 888.666,-450.131"/>
292
+ <text text-anchor="middle" x="923.459" y="-626.4" font-family="Times Roman,serif" font-size="14.00">sharings</text>
293
+ </g>
294
+ <!-- Group&#45;&gt;RepositoryManager::Sharing -->
295
+ <g id="edge38" class="edge"><title>Group&#45;&gt;RepositoryManager::Sharing</title>
296
+ <path fill="none" stroke="#13f7e8" d="M843.188,-824.8C860.647,-809.285 869.717,-791.55 855.459,-774 830.837,-743.69 794.082,-786.31 769.459,-756 698.84,-669.07 738.476,-611.629 769.459,-504 774.805,-485.43 782.693,-466.926 791.859,-449.236"/>
297
+ <ellipse fill="none" stroke="#13f7e8" cx="840.042" cy="-827.415" rx="4.00002" ry="4.00002"/>
298
+ <polygon fill="#13f7e8" stroke="#13f7e8" points="792.047,-448.883 800.73,-442.185 794.405,-444.473 796.762,-440.064 796.762,-440.064 796.762,-440.064 794.405,-444.473 792.793,-437.942 792.047,-448.883 792.047,-448.883"/>
299
+ <text text-anchor="middle" x="827.959" y="-626.4" font-family="Times Roman,serif" font-size="14.00">sharings_owners</text>
300
+ </g>
301
+ <!-- ActiveRecord::Base -->
302
+ <g id="node10" class="node"><title>ActiveRecord::Base</title>
303
+ <ellipse fill="none" stroke="black" cx="963.459" cy="-1203" rx="104.151" ry="18.3848"/>
304
+ <text text-anchor="middle" x="963.459" y="-1199.4" font-family="Times Roman,serif" font-size="14.00">ActiveRecord::Base</text>
305
+ </g>
306
+ <!-- ActiveRecord::Base&#45;&gt;RepositoryManager::SharingsMember -->
307
+ <g id="edge4" class="edge"><title>ActiveRecord::Base&#45;&gt;RepositoryManager::SharingsMember</title>
308
+ <path fill="none" stroke="black" d="M1058.7,-1195.42C1131.82,-1186.02 1232.88,-1164.99 1309.46,-1118 1345.45,-1095.91 1371.46,-1088.23 1371.46,-1046 1371.46,-1046 1371.46,-1046 1371.46,-324 1371.46,-246.212 1310.72,-184.829 1247.84,-142.126"/>
309
+ </g>
310
+ <!-- ActiveRecord::Base&#45;&gt;RepositoryManager::RepoItem -->
311
+ <g id="edge8" class="edge"><title>ActiveRecord::Base&#45;&gt;RepositoryManager::RepoItem</title>
312
+ <path fill="none" stroke="black" d="M926.717,-1185.59C904.934,-1175.81 876.564,-1164 850.459,-1156 769.371,-1131.15 745.919,-1137.83 663.459,-1118 374.686,-1048.56 194.714,-1176.51 20.4595,-936 -12.3961,-890.651 -0.229718,-862.038 20.4595,-810 46.9828,-743.288 114.109,-698.15 174.288,-669.76"/>
313
+ </g>
314
+ <!-- ActiveRecord::Base&#45;&gt;RepositoryManager::Sharing -->
315
+ <g id="edge14" class="edge"><title>ActiveRecord::Base&#45;&gt;RepositoryManager::Sharing</title>
316
+ <path fill="none" stroke="black" d="M1030.89,-1188.86C1137.61,-1164.51 1333.46,-1110.98 1333.46,-1046 1333.46,-1046 1333.46,-1046 1333.46,-783 1333.46,-658.542 1382.67,-604.651 1309.46,-504 1234.57,-401.042 1089.1,-356.591 988.93,-337.656"/>
317
+ </g>
318
+ <!-- ActiveRecord::Base&#45;&gt;User -->
319
+ <g id="edge32" class="edge"><title>ActiveRecord::Base&#45;&gt;User</title>
320
+ <path fill="none" stroke="black" d="M939.485,-1184.99C914.502,-1166.22 873.939,-1135.75 837.151,-1108.12"/>
321
+ </g>
322
+ <!-- ActiveRecord::Base&#45;&gt;Group -->
323
+ <g id="edge48" class="edge"><title>ActiveRecord::Base&#45;&gt;Group</title>
324
+ <path fill="none" stroke="black" d="M955.784,-1184.28C938.856,-1144 895.796,-1046.86 845.459,-974 836.337,-960.795 825.64,-947.48 814.849,-935.043"/>
325
+ </g>
326
+ </g>
327
+ </svg>