If you are more comfortable with a scripting approach (in ruby) have a look at 
the jrdspace gem I wrote
It allows you to develop command line utilities that you can parameterize, it 
is easier to log to stdout/stderr or a file of your choice.
Personally I prefer to work with interpretative language with this type of 
maintenance scripts.

See the gem here:   https://github.com/akinom/dspace-jruby
And see a script that loops over all 
bitstreams<https://github.com/akinom/dspace-cli/blob/master/bitstreams/loop-bitstreams.rb>
 in communities/collections/items identified by  handles given as command line 
args
Running this on one of my communities looks like this:

Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=1024m; 
support was removed in 8.0
Using /Users/monikam/DSpaces/installs/updatespace
Loading jars
Loading /Users/monikam/DSpaces/installs/updatespace/config/dspace.cfg
INFO: Loading provided config file: 
/Users/monikam/DSpaces/installs/updatespace/config/dspace.cfg
log4j:WARN No appenders could be found for logger 
(org.dspace.core.ConfigurationManager).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more 
info.
INFO: Using dspace provided log configuration (log.init.config)
INFO: Loading: 
/Users/monikam/DSpaces/installs/updatespace/config/log4j.properties
Starting new DSpaceKernel
DB jdbc:oracle:thin:@localhost:11523/dspqual.world, UserName=DSPACE, Oracle 
JDBC driver
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01j3860933c.ORIGINAL.readme.pdf
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01j3860933c.ORIGINAL.Myers_Nature_Archive.zip
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.DenHartogGlowDischargeElectricField.txt
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.fig05data.txt
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.fig05plot.py
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.fig06data.txt
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.fig06plot.py
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.fig07data.txt
88435/dsp01pz50gz45g > 88435/dsp01x920g025r > 
88435/dsp01zs25xb94r.ORIGINAL.fig07plot.py
….
88435/dsp01pz50gz45g > 88435/dsp01j6731612k > 88435/dsp018p58pg29j > 
88435/dsp01zg64tp300.ORIGINAL.readme.txt
88435/dsp01pz50gz45g > 88435/dsp01j6731612k > 88435/dsp018p58pg29j > 
88435/dsp01zg64tp300.ORIGINAL.Stotler_PoP.zip
88435/dsp01pz50gz45g > 88435/dsp01j6731612k > 88435/dsp018p58pg29j > 
88435/dsp01h415pc93f.ORIGINAL.DSmith-ELM-Evolution-Data.zip
88435/dsp01pz50gz45g > 88435/dsp01j6731612k > 88435/dsp018p58pg29j > 
88435/dsp01vx021h49j.ORIGINAL.readme.txt
88435/dsp01pz50gz45g > 88435/dsp01j6731612k > 88435/dsp018p58pg29j > 
88435/dsp01vx021h49j.ORIGINAL.Zweben_Blobs.zip
--
Monika Mevenkamp
OIT Princeton University
Phone: 609-258-4161
Skype: mo-meven


From: <[email protected]> on behalf of "[email protected]" 
<[email protected]>
Date: Friday, November 9, 2018 at 12:22 AM
To: DSpace Technical Support <[email protected]>
Subject: [dspace-tech] Re: Mass manipulations with items in DSpace

Thank you for the answer! We'll learn it right now.

четверг, 8 ноября 2018 г., 17:45:54 UTC+3 пользователь Mark H. Wood написал:
On Thursday, November 8, 2018 at 7:56:55 AM UTC-5, 
[email protected]<javascript:> wrote:
Hello. Can you help please to understand is there a way to mass remove any PDF 
modifiers like watermark or/and password with save each item directions and 
don't reupload each item again?



There is nothing in DSpace to remove material from PDFs, but there is a 
framework for applying a procedure to bitstreams in bulk:  the Curation System, 
which will process a single item, a collection, a community, or the entire 
site.  If you can work out code to do what you want to a single bitstream, you 
can make it into a curation task and have the framework apply it to all of the 
bitstreams that need it.

You can also attach the task to workflows so that it is automatically applied 
to new submissions.

https://wiki.duraspace.org/display/DSDOC6x/Curation+System

For manipulating PDFs, I'd start by looking at PDFtk.

You may want to look at the PDF citation page generator for background 
information.  https://wiki.duraspace.org/display/DSDOC6x/PDF+Citation+Cover+Page
--
All messages to this mailing list should adhere to the DuraSpace Code of 
Conduct: https://duraspace.org/about/policies/code-of-conduct/
---
You received this message because you are subscribed to the Google Groups 
"DSpace Technical Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
[email protected]<mailto:[email protected]>.
To post to this group, send email to 
[email protected]<mailto:[email protected]>.
Visit this group at https://groups.google.com/group/dspace-tech.
For more options, visit https://groups.google.com/d/optout.

-- 
All messages to this mailing list should adhere to the DuraSpace Code of 
Conduct: https://duraspace.org/about/policies/code-of-conduct/
--- 
You received this message because you are subscribed to the Google Groups 
"DSpace Technical Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/dspace-tech.
For more options, visit https://groups.google.com/d/optout.

Reply via email to