jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amit Bhattacharjee" <ami...@esspl.com>
Subject How to update a same file with different version
Date Wed, 07 Oct 2009 14:25:46 GMT
Hi,

 

Can you send me sample code to update a same file with different version. My
code is like this when I am uploading the file for first time its working
fine. How to update it with different version.

 

 

if (mimeType == null) mimeType = "application/octet-stream";

                                //if (!roseMode.hasNode("AmitNode1")) {

                                      try{

                                      Node fileNode = null;

                                           

 
if(!roseMode.hasNode(file.getName())){

                                               fileNode =
roseMode.addNode(file.getName(), "nt:file");

 
}

                                           else{

                                               fileNode =
roseMode.getNode(file.getName());

                                              }

 

                                      Node resNode =
null;//fileNode.addNode("jcr:content", "nt:resource");

 
if(!fileNode.hasNode("jcr:content")){

                                             resNode =
fileNode.addNode("jcr:content", "nt:resource");

 

                                           } else{

                                               resNode =
fileNode.getNode("jcr:content");

                                            }

 

                                     

                                      resNode.setProperty("jcr:mimeType",
mimeType);

                                      resNode.setProperty("jcr:encoding",
"");

                                      resNode.setProperty("jcr:data", new
FileInputStream(file));

                                      Calendar lastModified =
Calendar.getInstance();

 
lastModified.setTimeInMillis(file.lastModified());

 
resNode.setProperty("jcr:lastModified", lastModified);

                                      fileNode.addMixin("mix:versionable");

                                      fileNode.checkout();

                                      jcrSession.save();

                                      fileNode.checkin();

 
VersionHistory history = fileNode.getVersionHistory();

                                                 VersionIterator iter =
history.getAllVersions();

                                                 iter.skip(1);

 

                                               while(iter.hasNext()) {

                                                 Version version = (Version)
iter.nextVersion();

                                                 NodeIterator iter1 =
version.getNodes();

 

                                                     if (iter1.hasNext()) {

                                                       Node no =
iter1.nextNode();

                                                       out.println("Version
saved on " +

 
version.getCreated().getTime().toString() +

 
" version no is  " +

 
version.getName());

                                                      }

 

                                               }

 

 

 

Thanks & Regards

Amit Bhattacharjee

 


Mime
View raw message