Introduce GOVERNANCE document and empty RESOLUTIONS file.
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI / Replicated / Balancer / First.pm
1 package DBIx::Class::Storage::DBI::Replicated::Balancer::First;
2
3 use Moose;
4 with 'DBIx::Class::Storage::DBI::Replicated::Balancer';
5 use namespace::clean -except => 'meta';
6
7 =head1 NAME
8
9 DBIx::Class::Storage::DBI::Replicated::Balancer::First - Just get the First Balancer
10
11 =head1 SYNOPSIS
12
13 This class is used internally by L<DBIx::Class::Storage::DBI::Replicated>.  You
14 shouldn't need to create instances of this class.
15
16 =head1 DESCRIPTION
17
18 Given a pool (L<DBIx::Class::Storage::DBI::Replicated::Pool>) of replicated
19 database's (L<DBIx::Class::Storage::DBI::Replicated::Replicant>), defines a
20 method by which query load can be spread out across each replicant in the pool.
21
22 This Balancer just gets whichever is the first replicant in the pool.
23
24 =head1 ATTRIBUTES
25
26 This class defines the following attributes.
27
28 =head1 METHODS
29
30 This class defines the following methods.
31
32 =head2 next_storage
33
34 Just get the first storage.  Probably only good when you have one replicant.
35
36 =cut
37
38 sub next_storage {
39   return  (shift->pool->active_replicants)[0];
40 }
41
42 =head1 FURTHER QUESTIONS?
43
44 Check the list of L<additional DBIC resources|DBIx::Class/GETTING HELP/SUPPORT>.
45
46 =head1 COPYRIGHT AND LICENSE
47
48 This module is free software L<copyright|DBIx::Class/COPYRIGHT AND LICENSE>
49 by the L<DBIx::Class (DBIC) authors|DBIx::Class/AUTHORS>. You can
50 redistribute it and/or modify it under the same terms as the
51 L<DBIx::Class library|DBIx::Class/COPYRIGHT AND LICENSE>.
52
53 =cut
54
55 __PACKAGE__->meta->make_immutable;
56
57 1;