From 6273224fb62c7fd6c0c29b282f8e622098dcfaa7 Mon Sep 17 00:00:00 2001 From: jensp Date: Sun, 25 Nov 2012 12:46:09 +0000 Subject: [PATCH] Durch den CSV-Importer importierte Publikationen werden jetzt im den korrekten Ordner abgelegt (Ticket #1448). git-svn-id: https://svn.libreccm.org/ccm/trunk@1962 8810af33-2d31-482b-a856-94f89814c4df --- .../importer/csv/AbstractPublicationImporter.java | 11 ++++++++++- .../csv/ArticleInCollectedVolumeImporter.java | 5 +++++ .../importer/csv/ArticleInJournalImporter.java | 6 ++++++ .../importer/csv/CollectedVolumeImporter.java | 5 +++++ .../importer/csv/InProceedingsImporter.java | 6 ++++++ .../importer/csv/MonographImporter.java | 3 ++- .../importer/csv/ProceedingsImporter.java | 5 +++++ 7 files changed, 39 insertions(+), 2 deletions(-) diff --git a/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/AbstractPublicationImporter.java b/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/AbstractPublicationImporter.java index 7cc0ed09f..160ba0064 100644 --- a/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/AbstractPublicationImporter.java +++ b/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/AbstractPublicationImporter.java @@ -112,7 +112,7 @@ abstract class AbstractPublicationImporter { if (!pretend) { publication.save(); - final Integer folderId = Publication.getConfig().getDefaultPublicationsFolder(); + final Integer folderId = getFolderId(); final Folder folder = new Folder(new BigDecimal(folderId)); publication.setContentSection(folder.getContentSection()); publication.setLanguage(Kernel.getConfig().getLanguagesIndependentCode()); @@ -155,6 +155,15 @@ abstract class AbstractPublicationImporter { protected abstract PublicationBundle createBundle(final T publication); + /** + * Overwrite this method to put a publication of specific type into a special folder. + * + * @return + */ + protected Integer getFolderId() { + return Publication.getConfig().getDefaultPublicationsFolder(); + } + private void processTitleAndName(final T publication) { if (!pretend) { publication.setTitle(data.getTitle()); diff --git a/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/ArticleInCollectedVolumeImporter.java b/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/ArticleInCollectedVolumeImporter.java index f5f7715db..2e2d2b3be 100644 --- a/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/ArticleInCollectedVolumeImporter.java +++ b/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/ArticleInCollectedVolumeImporter.java @@ -2,6 +2,7 @@ package com.arsdigita.cms.scipublications.importer.csv; import com.arsdigita.cms.contenttypes.ArticleInCollectedVolume; import com.arsdigita.cms.contenttypes.ArticleInCollectedVolumeBundle; +import com.arsdigita.cms.contenttypes.Publication; import com.arsdigita.cms.contenttypes.PublicationBundle; import com.arsdigita.cms.scipublications.importer.report.FieldImportReport; import com.arsdigita.cms.scipublications.importer.report.PublicationImportReport; @@ -101,4 +102,8 @@ class ArticleInCollectedVolumeImporter extends AbstractPublicationImporter { return new InProceedingsBundle(inProceedings); } } + + @Override + protected Integer getFolderId() { + return Publication.getConfig().getDefaultInProceedingsFolder(); + } } diff --git a/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/MonographImporter.java b/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/MonographImporter.java index 63128e706..f8f1306e4 100644 --- a/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/MonographImporter.java +++ b/ccm-sci-publicationscsvimporter/src/com/arsdigita/cms/scipublications/importer/csv/MonographImporter.java @@ -1,6 +1,7 @@ package com.arsdigita.cms.scipublications.importer.csv; import com.arsdigita.cms.contenttypes.Monograph; +import com.arsdigita.cms.contenttypes.Publication; import com.arsdigita.cms.contenttypes.PublicationBundle; import com.arsdigita.cms.contenttypes.PublicationWithPublisherBundle; import com.arsdigita.cms.scipublications.importer.report.PublicationImportReport; @@ -37,5 +38,5 @@ class MonographImporter extends AbstractPublicationWithPublisherImporter