RDBO: Setups der Auth*-Instanzen vereinheitlicht
authorMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 6 Jun 2013 10:36:34 +0000 (12:36 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 13 Jun 2013 14:24:19 +0000 (16:24 +0200)
16 files changed:
SL/DB/AuthClient.pm
SL/DB/AuthClientGroup.pm
SL/DB/AuthClientUser.pm
SL/DB/AuthGroup.pm
SL/DB/AuthGroupRight.pm
SL/DB/AuthUser.pm
SL/DB/AuthUserConfig.pm
SL/DB/AuthUserGroup.pm
SL/DB/MetaSetup/AuthClient.pm
SL/DB/MetaSetup/AuthClientGroup.pm
SL/DB/MetaSetup/AuthClientUser.pm
SL/DB/MetaSetup/AuthGroup.pm
SL/DB/MetaSetup/AuthGroupRight.pm
SL/DB/MetaSetup/AuthUser.pm
SL/DB/MetaSetup/AuthUserConfig.pm
SL/DB/MetaSetup/AuthUserGroup.pm

index a37c930..bf016a6 100644 (file)
@@ -1,6 +1,3 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthClient;
 
 use strict;
@@ -8,19 +5,16 @@ use strict;
 use SL::DB::MetaSetup::AuthClient;
 use SL::DB::Manager::AuthClient;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
-__PACKAGE__->meta->schema('auth');
-
 __PACKAGE__->meta->add_relationship(
   users => {
     type      => 'many to many',
-    map_class => 'SL::DB::AuthUserGroup',
+    map_class => 'SL::DB::AuthClientUser',
     map_from  => 'client',
     map_to    => 'user',
   },
   groups => {
     type      => 'many to many',
-    map_class => 'SL::DB::AuthUserGroup',
+    map_class => 'SL::DB::AuthClientGroup',
     map_from  => 'client',
     map_to    => 'group',
   },
index 758841b..8d31fbf 100644 (file)
@@ -1,15 +1,9 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthClientGroup;
 
 use strict;
 
 use SL::DB::MetaSetup::AuthClientGroup;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
-__PACKAGE__->meta->schema('auth');
-
 __PACKAGE__->meta->make_manager_class;
 
 1;
index b2063dc..c01447e 100644 (file)
@@ -1,15 +1,9 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthClientUser;
 
 use strict;
 
 use SL::DB::MetaSetup::AuthClientUser;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
-__PACKAGE__->meta->schema('auth');
-
 __PACKAGE__->meta->make_manager_class;
 
 1;
index ce47bd3..2bb168e 100644 (file)
@@ -1,6 +1,3 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthGroup;
 
 use strict;
@@ -9,8 +6,6 @@ use SL::DB::MetaSetup::AuthGroup;
 use SL::DB::Manager::AuthGroup;
 use SL::DB::AuthGroupRight;
 
-__PACKAGE__->meta->schema('auth');
-
 __PACKAGE__->meta->add_relationship(
   users => {
     type      => 'many to many',
@@ -25,7 +20,7 @@ __PACKAGE__->meta->add_relationship(
   },
   clients => {
     type      => 'many to many',
-    map_class => 'SL::DB::AuthClient',
+    map_class => 'SL::DB::AuthClientGroup',
     map_from  => 'group',
     map_to    => 'client',
   },
index 49e4344..1ba9ae1 100644 (file)
@@ -1,16 +1,9 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthGroupRight;
 
 use strict;
 
 use SL::DB::MetaSetup::AuthGroupRight;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
 __PACKAGE__->meta->make_manager_class;
 
-__PACKAGE__->meta->schema('auth');
-__PACKAGE__->meta->initialize;
-
 1;
index 41644eb..a11248e 100644 (file)
@@ -1,6 +1,3 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthUser;
 
 use strict;
@@ -9,9 +6,9 @@ use List::Util qw(first);
 
 use SL::DB::MetaSetup::AuthUser;
 use SL::DB::Manager::AuthUser;
+use SL::DB::AuthClient;
 use SL::DB::AuthUserGroup;
-
-__PACKAGE__->meta->schema('auth');
+use SL::DB::Helper::Util;
 
 __PACKAGE__->meta->add_relationship(
   groups => {
@@ -27,7 +24,7 @@ __PACKAGE__->meta->add_relationship(
   },
   clients => {
     type      => 'many to many',
-    map_class => 'SL::DB::AuthClient',
+    map_class => 'SL::DB::AuthUserClient',
     map_from  => 'user',
     map_to    => 'client',
   },
@@ -35,6 +32,17 @@ __PACKAGE__->meta->add_relationship(
 
 __PACKAGE__->meta->initialize;
 
+sub validate {
+  my ($self) = @_;
+
+  my @errors;
+  push @errors, $::locale->text('The login is missing.')          if !$self->login;
+  push @errors, $::locale->text('The login is not unique.')          if !SL::DB::Helper::Util::is_unique($self, 'login');
+  push @errors, "chunky bacon";
+
+  return @errors;
+}
+
 sub get_config_value {
   my ($self, $key) = @_;
 
index 2cb8e6b..b52a1a1 100644 (file)
@@ -1,16 +1,9 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthUserConfig;
 
 use strict;
 
 use SL::DB::MetaSetup::AuthUserConfig;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
 __PACKAGE__->meta->make_manager_class;
 
-__PACKAGE__->meta->schema('auth');
-__PACKAGE__->meta->initialize;
-
 1;
index 495cb66..be88c4e 100644 (file)
@@ -1,29 +1,9 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::AuthUserGroup;
 
 use strict;
 
 use SL::DB::MetaSetup::AuthUserGroup;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
 __PACKAGE__->meta->make_manager_class;
 
-__PACKAGE__->meta->schema('auth');
-
-__PACKAGE__->meta->add_foreign_keys(
-  user => {
-    class       => 'SL::DB::AuthUser',
-    key_columns => { user_id => 'id' },
-  },
-
-  group => {
-    class       => 'SL::DB::AuthGroup',
-    key_columns => { group_id => 'id' },
-  },
-);
-
-__PACKAGE__->meta->initialize;
-
 1;
index 1b0a81a..b78050c 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'clients',
+  schema  => 'auth',
 
   columns => [
     id         => { type => 'serial', not_null => 1 },
index e922639..f4e2f87 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'clients_groups',
+  schema  => 'auth',
 
   columns => [
     client_id => { type => 'integer', not_null => 1 },
index b365772..85d0ef9 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'clients_users',
+  schema  => 'auth',
 
   columns => [
     client_id => { type => 'integer', not_null => 1 },
index 31d4915..9e75aac 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'group',
+  schema  => 'auth',
 
   columns => [
     id          => { type => 'serial', not_null => 1 },
index 0cf5d72..6777966 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'group_rights',
+  schema  => 'auth',
 
   columns => [
     group_id => { type => 'integer', not_null => 1 },
index 04bc23e..2175190 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'user',
+  schema  => 'auth',
 
   columns => [
     id       => { type => 'serial', not_null => 1 },
index 2d132eb..688998b 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'user_config',
+  schema  => 'auth',
 
   columns => [
     user_id   => { type => 'integer', not_null => 1 },
index f185014..86a0ed5 100644 (file)
@@ -8,6 +8,7 @@ use base qw(SL::DB::Object);
 
 __PACKAGE__->meta->setup(
   table   => 'user_group',
+  schema  => 'auth',
 
   columns => [
     user_id  => { type => 'integer', not_null => 1 },
@@ -15,6 +16,18 @@ __PACKAGE__->meta->setup(
   ],
 
   primary_key_columns => [ 'user_id', 'group_id' ],
+
+  foreign_keys => [
+    user => {
+      class       => 'SL::DB::AuthUser',
+      key_columns => { user_id => 'id' },
+    },
+
+    group => {
+      class       => 'SL::DB::AuthGroup',
+      key_columns => { group_id => 'id' },
+    },
+  ],
 );
 
 1;