Changeset 15018 for gsdl/trunk/perllib/plugins/BasPlug.pm
- Timestamp:
- 2008-02-27T17:07:17+13:00 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
gsdl/trunk/perllib/plugins/BasPlug.pm
r15006 r15018 109 109 'type' => "string", 110 110 'reqd' => "no" }, 111 { 'name' => "use_as_doc_identifier", 112 'desc' => "{BasPlug.use_as_doc_identifier}", 113 'type' => "string", 114 'reqd' => "no" , 115 'deft' => "" } , 111 116 { 'name' => "input_encoding", 112 117 'desc' => "{BasPlug.input_encoding}", … … 867 872 } 868 873 874 875 sub add_OID 876 { 877 my $self = shift (@_); 878 my ($doc_obj) = @_; 879 880 # See if a metadata field is specified as the field 881 if ((defined $self->{'use_as_doc_identifier'}) && ($self->{'use_as_doc_identifier'} ne "")) { 882 my $metadata_doc_id = $self->{'use_as_doc_identifier'}; 883 884 # Consider "tidying" up metadata_doc_id to be something 885 # suitable in a URL 886 # Could even support a user specified plugin RE for this. 887 888 my $top_section = $doc_obj->get_top_section(); 889 my $oid = $doc_obj->get_metadata_element($top_section,$metadata_doc_id); 890 ## print STDERR "**** oid = $oid\n"; 891 $doc_obj->set_OID($oid); 892 } 893 # See if there is a plugin-specific set_OID function... 894 elsif (defined ($self->can('set_OID'))) { 895 # it will need $doc_obj to set the Identifier metadata... 896 $self->set_OID(@_); # pass through any extra arguments supplied 897 } else { 898 # use the default set_OID() in doc.pm 899 $doc_obj->set_OID(); 900 } 901 } 869 902 870 903 # The BasPlug read_into_doc_obj() function. This function does all the … … 957 990 # do any automatic metadata extraction 958 991 $self->auto_extract_metadata ($doc_obj); 959 960 # add an OID 961 # see if there is a plugin-specific set_OID function... 962 if (defined ($self->can('set_OID'))) { 963 # it will need $doc_obj to set the Identifier metadata... 964 $self->set_OID($doc_obj); 965 } else { 966 # use the default set_OID() in doc.pm 967 $doc_obj->set_OID(); 968 } 992 993 $self->add_OID($doc_obj); 969 994 970 995 return (1,$doc_obj);
Note:
See TracChangeset
for help on using the changeset viewer.