Difference between revisions of "Building a DataSet"

From EPrints Documentation
Jump to: navigation, search
(Modify EPrint Status Field)
(Add the dark archive dataset definition)
Line 12: Line 12:
  
 
<pre>
 
<pre>
        dark_archive => {
+
dark_archive => {
                sqlname => "eprint",
+
    sqlname => "eprint",
                virtual => 1,
+
    virtual => 1,
                class => "EPrints::DataObj::EPrint",
+
    class => "EPrints::DataObj::EPrint",
                confid => "eprint",
+
    confid => "eprint",
                import => 1,
+
    import => 1,
                index => 1,
+
    index => 1,
                filters => [ { meta_fields => [ 'eprint_status' ], value => 'dark_archive', describe=>0 } ],
+
    filters => [ { meta_fields => [ 'eprint_status' ], value => 'dark_archive', describe=>0 } ],
                dataset_id_field => "eprint_status",
+
    dataset_id_field => "eprint_status",
                datestamp => "lastmod",
+
    datestamp => "lastmod",
        },
+
},
 
</pre>
 
</pre>
  
 
  epadmin update_database_structure <repoid>
 
  epadmin update_database_structure <repoid>

Revision as of 14:43, 29 March 2011

Modify EPrint Status Field

We must start my modifying the eprint_status field so that it can have the new value dark_archive.

push( @{$c->{fields}->{eprint}}, {
  name=>"eprint_status", type=>"set", required=>1,
  options=>[qw/ inbox buffer archive deletion dark_archive /] },
  replace_core=>1 #this flag must be used with EXTREME caution, it makes is very easy to break things
});

Add the dark archive dataset definition

dark_archive => {
     sqlname => "eprint",
     virtual => 1,
     class => "EPrints::DataObj::EPrint",
     confid => "eprint",
     import => 1,
     index => 1,
     filters => [ { meta_fields => [ 'eprint_status' ], value => 'dark_archive', describe=>0 } ],
     dataset_id_field => "eprint_status",
     datestamp => "lastmod",
},
epadmin update_database_structure <repoid>