Biblio-ILL-ISO

 view release on metacpan or  search on metacpan

lib/Biblio/ILL/ISO/Answer.pm  view on Meta::CPAN

    $sid = new Biblio::ILL::ISO::SystemId();
    $sid->set_institution_name("Brandon Public Library");
    $sa = new Biblio::ILL::ISO::SystemAddress("SMTP","library\@brandon.mb.ca");
    $loc = new Biblio::ILL::ISO::LocationInfo($sid, $sa);
    $locseq->add($loc);

    # Build a conditional-results condition
    my $condition = new Biblio::ILL::ISO::ConditionalResultsCondition("charges");
    my $dt = new Biblio::ILL::ISO::ISODate("20030727");
    my $tm = new Biblio::ILL::ISO::TransportationMode("Canada Post");
    my $ds = new Biblio::ILL::ISO::DeliveryService( $tm )
    my $conres = new Biblio::ILL::ISO::ConditionalResults($condition,
						          $dt,
						          $locseq,
						          $ds
						          );

    my $rexp = new Biblio::ILL::ISO::ResultsExplanation( $conres );
    $msg->set_results_explanation($rexp);

 This is an optional field.

=cut
sub set_results_explanation {
    my $self = shift;
    my ($parm) = shift;

    croak "missing results-explanation" unless $parm;
    croak "invalid results-explanation" unless (ref($parm) eq "Biblio::ILL::ISO::ResultsExplanation");

    $self->{"results-explanation"} = $parm;

    return;
}

#---------------------------------------------------------------
#  This is EXTERNAL, which we don't handle
#---------------------------------------------------------------
#sub set_supplemental_item_description {
#    my $self = shift;
#    my ($parm) = shift;
#
#    croak "missing supplemental-item-description" unless $parm;
#    croak "invalid supplemental-item-description" unless (ref($parm) eq "Biblio::ILL::ISO::SupplementalItemDescription");
#
#    $self->{"supplemental-item-description"} = $parm;
#
#    return;
#}

#---------------------------------------------------------------
#
#---------------------------------------------------------------
=head1

=head2 set_send_to_list($stlts)

 Sets the message's send-to-list.
 Expects a valid Biblio::ILL::ISO::SendToListTypeSequence.

    my $sid = new Biblio::ILL::ISO::SystemId("MBOM");
    my $stlt = new Biblio::ILL::ISO::SendToListType( $sid );
    my $stlts = new Biblio::ILL::ISO::SendToListTypeSequence( $stlt );

    $sid = new Biblio::ILL::ISO::SystemId("MWPL");
    my $act = new Biblio::ILL::ISO::AccountNumber("PLS001");
    my $sa = new Biblio::ILL::ISO::SystemAddress("SMTP","pls\@gov.mb.ca");
    $stlts->add( new Biblio::ILL::ISO::SendToListType( $sid,
						       $act,
						       $sa
						      )
 	        );

    $msg->set_send_to_list($stlts);

 This is an optional field.

=cut
sub set_send_to_list {
    my $self = shift;
    my ($parm) = shift;

    croak "missing send-to-list" unless $parm;
    croak "invalid send-to-list" unless (ref($parm) eq "Biblio::ILL::ISO::SendToListTypeSequence");

    $self->{"send-to-list"} = $parm;

    return;
}

#---------------------------------------------------------------
#
#---------------------------------------------------------------
=head1

=head2 set_already_tried_list($atlt)

 Sets the message's already-tried-list.
 Expects a valid Biblio::ILL::ISO::AlreadyTriedListType.

    my $sid = new Biblio::ILL::ISO::SystemId("BVAS");
    my $atlt = new Biblio::ILL::ISO::AlreadyTriedListType( $sid );

    $sid = new Biblio::ILL::ISO::SystemId();
    $sid->set_institution_name("Winnipeg Public Library");
    $atlt->add($sid);

    $sid = new Biblio::ILL::ISO::SystemId();
    $sid->set_person_name("Frank Emil Urwald");
    $atlt->add($sid);

    $atlt->add( new Biblio::ILL::ISO::SystemId("MBOM"));

    $msg->set_already_tried_list($atlt);

 This is an optional field.

=cut
sub set_already_tried_list {
    my $self = shift;
    my ($parm) = shift;

    croak "missing already-tried-list" unless $parm;
    croak "invalid already-tried-list" unless (ref($parm) eq "Biblio::ILL::ISO::AlreadyTriedListType");

    $self->{"already-tried-list"} = $parm;

    return;
}

#---------------------------------------------------------------
#
#---------------------------------------------------------------
=head1

=head2 set_responder_optional_messages($rom)

 Sets the message's responder-optional-messages.
 Expects a valid Biblio::ILL::ISO::ResponderOptionalMessageType.

    my $rom = new Biblio::ILL::ISO::ResponderOptionalMessageType(1,1,
                                                                 "desires",
                                                                 "requires"
                                                                 );
    $msg->set_responder_optional_messages($rom);

 This is an optional field.

=cut
sub set_responder_optional_messages {
    my $self = shift;
    my ($parm) = shift;

    croak "missing responder-optional-messages" unless $parm;
    croak "invalid responder-optional-messages" unless (ref($parm) eq "Biblio::ILL::ISO::ResponderOptionalMessageType");

    $self->{"responder-optional-messages"} = $parm;

    return;
}

#---------------------------------------------------------------
#
#---------------------------------------------------------------
=head1

=head2 set_responder_note($note)

 Sets the message's responder-note.
 Expects a simple text string.

    $msg->set_responder_note("This is a responder note");



( run in 0.721 second using v1.01-cache-2.11-cpan-c966e8aa7e8 )