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
master
jensp 2012-11-25 12:46:09 +00:00
parent c80e2042a0
commit 6273224fb6
7 changed files with 39 additions and 2 deletions

View File

@ -112,7 +112,7 @@ abstract class AbstractPublicationImporter<T extends Publication> {
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<T extends Publication> {
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());

View File

@ -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<Artic
}
}
@Override
protected Integer getFolderId() {
return Publication.getConfig().getDefaultArticlesInCollectedVolumeFolder();
}
}

View File

@ -2,6 +2,7 @@ package com.arsdigita.cms.scipublications.importer.csv;
import com.arsdigita.cms.contenttypes.ArticleInJournal;
import com.arsdigita.cms.contenttypes.ArticleInJournalBundle;
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.JournalImportReport;
@ -131,4 +132,9 @@ class ArticleInJournalImporter extends AbstractPublicationImporter<ArticleInJour
}
}
@Override
protected Integer getFolderId() {
return Publication.getConfig().getDefaultArticlesInJournalFolder();
}
}

View File

@ -2,6 +2,7 @@ package com.arsdigita.cms.scipublications.importer.csv;
import com.arsdigita.cms.contenttypes.CollectedVolume;
import com.arsdigita.cms.contenttypes.CollectedVolumeBundle;
import com.arsdigita.cms.contenttypes.Publication;
import com.arsdigita.cms.contenttypes.PublicationBundle;
import com.arsdigita.cms.scipublications.importer.report.PublicationImportReport;
import com.arsdigita.cms.scipublications.importer.util.ImporterUtil;
@ -38,4 +39,8 @@ class CollectedVolumeImporter extends AbstractPublicationWithPublisherImporter<C
}
}
@Override
protected Integer getFolderId() {
return Publication.getConfig().getDefaultCollectedVolumesFolder();
}
}

View File

@ -2,6 +2,7 @@ package com.arsdigita.cms.scipublications.importer.csv;
import com.arsdigita.cms.contenttypes.InProceedings;
import com.arsdigita.cms.contenttypes.InProceedingsBundle;
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;
@ -90,4 +91,9 @@ class InProceedingsImporter extends AbstractPublicationImporter<InProceedings> {
}
}
@Override
protected Integer getFolderId() {
return Publication.getConfig().getDefaultInProceedingsFolder();
}
}

View File

@ -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;

View File

@ -2,6 +2,7 @@ package com.arsdigita.cms.scipublications.importer.csv;
import com.arsdigita.cms.contenttypes.Proceedings;
import com.arsdigita.cms.contenttypes.ProceedingsBundle;
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;
@ -55,4 +56,8 @@ class ProceedingsImporter extends AbstractPublicationWithPublisherImporter<Proce
}
}
@Override
protected Integer getFolderId() {
return Publication.getConfig().getDefaultProceedingsFolder();
}
}