From 6885f12dc5344f9729f3e8306a1a753effc77836 Mon Sep 17 00:00:00 2001 From: Alberto Date: Fri, 25 Jan 2013 19:13:19 +0100 Subject: [PATCH] Remote publish fixes --- .../elasticsearch/business/ESContentletAPIImpl.java | 11 ++++++----- .../publisher/pusher/bundler/ContentBundler.java | 9 ++------- .../publisher/receiver/handler/ContentHandler.java | 1 - .../dotcms/publisher/util/DependencyManager.java | 4 ++-- .../business/VersionableFactoryImpl.java | 13 ++++++++----- 5 files changed, 18 insertions(+), 20 deletions(-) diff --git a/src/com/dotcms/content/elasticsearch/business/ESContentletAPIImpl.java b/src/com/dotcms/content/elasticsearch/business/ESContentletAPIImpl.java index d7a99bf736ba..fdd4a4d8a2d3 100644 --- a/src/com/dotcms/content/elasticsearch/business/ESContentletAPIImpl.java +++ b/src/com/dotcms/content/elasticsearch/business/ESContentletAPIImpl.java @@ -2080,10 +2080,6 @@ private Contentlet checkin(Contentlet contentlet, ContentletRelationships conten String contentPushExpireTime = contentlet.getStringProperty("wfExpireTime"); String contentPushNeverExpire = contentlet.getStringProperty("wfNeverExpire"); - if(saveWithExistingID) - contentlet = conFac.save(contentlet, existingInode); - else - contentlet = conFac.save(contentlet); if (!InodeUtils.isSet(contentlet.getIdentifier())) { Treeable parent = null; @@ -2099,7 +2095,7 @@ private Contentlet checkin(Contentlet contentlet, ContentletRelationships conten else ident = APILocator.getIdentifierAPI().createNew(contPar, parent); contentlet.setIdentifier(ident.getId()); - contentlet = conFac.save(contentlet); + //contentlet = conFac.save(contentlet); } else { Identifier ident = APILocator.getIdentifierAPI().find(contentlet); @@ -2126,6 +2122,11 @@ private Contentlet checkin(Contentlet contentlet, ContentletRelationships conten } APILocator.getIdentifierAPI().save(ident); } + + if(saveWithExistingID) + contentlet = conFac.save(contentlet, existingInode); + else + contentlet = conFac.save(contentlet); APILocator.getVersionableAPI().setWorking(contentlet); diff --git a/src/com/dotcms/publisher/pusher/bundler/ContentBundler.java b/src/com/dotcms/publisher/pusher/bundler/ContentBundler.java index cbf68f1f97f6..b315aa43e7dc 100755 --- a/src/com/dotcms/publisher/pusher/bundler/ContentBundler.java +++ b/src/com/dotcms/publisher/pusher/bundler/ContentBundler.java @@ -89,13 +89,8 @@ public void generate(File bundleRoot, BundlerStatus status) if(UtilMethods.isSet(contentsIds) && !contentsIds.isEmpty()) { // this content set is a dependency of other assets, like htmlpages Set contents = new HashSet(); for (String contentIdentifier : contentsIds) { - try{ - contents.add(APILocator.getContentletAPI().findContentletByIdentifier(contentIdentifier, true, APILocator.getLanguageAPI().getDefaultLanguage().getId(), systemUser, false)); - }catch (Exception e) { - try{ - contents.add(APILocator.getContentletAPI().findContentletByIdentifier(contentIdentifier, false, APILocator.getLanguageAPI().getDefaultLanguage().getId(), systemUser, false)); - }catch (Exception e1) { } - } + contents.addAll(conAPI.search("+identifier:"+contentIdentifier+" +live:true +deleted:false", 0, -1, null, systemUser, false)); + contents.addAll(conAPI.search("+identifier:"+contentIdentifier+" +working:true +deleted:false", 0, -1, null, systemUser, false)); } //Delete duplicate diff --git a/src/com/dotcms/publisher/receiver/handler/ContentHandler.java b/src/com/dotcms/publisher/receiver/handler/ContentHandler.java index 0eb96ddac065..c97a4879ba4e 100644 --- a/src/com/dotcms/publisher/receiver/handler/ContentHandler.java +++ b/src/com/dotcms/publisher/receiver/handler/ContentHandler.java @@ -160,7 +160,6 @@ private void publish(Contentlet content, File folderOut, User userToUse, Content if(binaryFolder != null && binaryFolder.exists() && binaryFolder.listFiles().length > 0) content.setBinary(ff.getVelocityVarName(), binaryFolder.listFiles()[0]); } - } content = conAPI.checkin(content, userToUse, false); diff --git a/src/com/dotcms/publisher/util/DependencyManager.java b/src/com/dotcms/publisher/util/DependencyManager.java index 7952e5922386..e4dfd10f81b0 100644 --- a/src/com/dotcms/publisher/util/DependencyManager.java +++ b/src/com/dotcms/publisher/util/DependencyManager.java @@ -352,14 +352,14 @@ private void setContentDependencies(List luceneQueries) throws DotBundle //Getting all related content for (Contentlet con : cs) { + contentsToProcess.add(con); + Map> contentRel = APILocator.getContentletAPI().findContentRelationships(con, user); for (Relationship rel : contentRel.keySet()) { contentsToProcess.addAll(contentRel.get(rel)); } - - contentsToProcess.add(con); } // Adding the Contents (including related) and adding filesAsContent diff --git a/src/com/dotmarketing/business/VersionableFactoryImpl.java b/src/com/dotmarketing/business/VersionableFactoryImpl.java index 8782bd5e3908..ec1529fab2fc 100644 --- a/src/com/dotmarketing/business/VersionableFactoryImpl.java +++ b/src/com/dotmarketing/business/VersionableFactoryImpl.java @@ -151,11 +151,14 @@ private VersionInfo refreshVersionInfoFromDb(VersionInfo info) throws DotDataExc Identifier ident = APILocator.getIdentifierAPI().find(info.getIdentifier()); Class clazz = UtilMethods.getVersionInfoType(ident.getAssetType()); - HibernateUtil dh = new HibernateUtil(clazz); - dh.setQuery("from "+clazz.getName()+" where identifier=?"); - dh.setParam(info.getIdentifier()); - Logger.debug(this.getClass(), "getVersionInfo query: "+dh.getQuery()); - VersionInfo vi=(VersionInfo)dh.load(); + VersionInfo vi= null; + if(clazz != null) { + HibernateUtil dh = new HibernateUtil(clazz); + dh.setQuery("from "+clazz.getName()+" where identifier=?"); + dh.setParam(info.getIdentifier()); + Logger.debug(this.getClass(), "getVersionInfo query: "+dh.getQuery()); + vi=(VersionInfo)dh.load(); + } if(vi ==null || !UtilMethods.isSet(vi.getIdentifier())) { try { vi = (VersionInfo) clazz.newInstance();