1# -*- perl -*-
2# !!! DO NOT EDIT !!!
3# This file was automatically generated.
4package Net::Amazon::Validate::ItemSearch::ca::Classical;
5
6use 5.006;
7use strict;
8use warnings;
9
10sub new {
11    my ($class , %options) = @_;
12    my $self = {
13        '_default' => 'Title',
14        %options,
15    };
16
17    push @{$self->{_options}}, 'Author';
18    push @{$self->{_options}}, 'BrowseNode';
19    push @{$self->{_options}}, 'Composer';
20    push @{$self->{_options}}, 'Condition';
21    push @{$self->{_options}}, 'Conductor';
22    push @{$self->{_options}}, 'Count';
23    push @{$self->{_options}}, 'ItemPage';
24    push @{$self->{_options}}, 'Keywords';
25    push @{$self->{_options}}, 'MaximumPrice';
26    push @{$self->{_options}}, 'MerchantId';
27    push @{$self->{_options}}, 'MinimumPrice';
28    push @{$self->{_options}}, 'MusicLabel';
29    push @{$self->{_options}}, 'Sort';
30    push @{$self->{_options}}, 'Title';
31
32    bless $self, $class;
33}
34
35sub user_or_default {
36    my ($self, $user) = @_;
37    if (defined $user && length($user) > 0) {
38        return $self->find_match($user);
39    }
40    return $self->default();
41}
42
43sub default {
44    my ($self) = @_;
45    return $self->{_default};
46}
47
48sub find_match {
49    my ($self, $value) = @_;
50    for (@{$self->{_options}}) {
51        return $_ if lc($_) eq lc($value);
52    }
53    die "$value is not a valid value for ca::Classical!\n";
54}
55
561;
57
58__END__
59
60=head1 NAME
61
62Net::Amazon::Validate::ItemSearch::ca::Classical - valid search indicies
63for the ca locale and the Classical SearchIndex.
64
65=head1 DESCRIPTION
66
67The default value is Title, unless mode is specified.
68
69The list of available values are:
70
71    Author
72    BrowseNode
73    Composer
74    Condition
75    Conductor
76    Count
77    ItemPage
78    Keywords
79    MaximumPrice
80    MerchantId
81    MinimumPrice
82    MusicLabel
83    Sort
84    Title
85
86=cut
87