bug fixes

This commit is contained in:
Kostas Stamatis
2013-10-17 12:07:26 +03:00
parent 28a6b3d0e8
commit dc489d3e49
8 changed files with 26 additions and 15 deletions

View File

@@ -18,6 +18,7 @@ import java.util.Properties;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.dspace.core.ConfigurationManager; import org.dspace.core.ConfigurationManager;
import org.dspace.utils.DSpace;
import gr.ekt.bte.core.AbstractModifier; import gr.ekt.bte.core.AbstractModifier;
import gr.ekt.bte.core.MutableRecord; import gr.ekt.bte.core.MutableRecord;

View File

@@ -129,9 +129,12 @@ public class MultipleSubmissionLookupDataLoader implements DataLoader {
* @see gr.ekt.bte.core.DataLoader#getRecords(gr.ekt.bte.core.DataLoadingSpec) * @see gr.ekt.bte.core.DataLoader#getRecords(gr.ekt.bte.core.DataLoadingSpec)
*/ */
@Override @Override
public RecordSet getRecords(DataLoadingSpec arg0) public RecordSet getRecords(DataLoadingSpec loadingSpec)
throws MalformedSourceException { throws MalformedSourceException {
if (loadingSpec.getOffset()>0) //Identify the end of loading
return new RecordSet();
return getRecords(); return getRecords();
} }

View File

@@ -58,7 +58,7 @@ public class PubmedLookupProvider extends ConfigurableLookupProvider {
Set<String> pmids = keys != null ? keys.get(PUBMED) : null; Set<String> pmids = keys != null ? keys.get(PUBMED) : null;
Set<String> dois = keys != null ? keys.get(DOI) : null; Set<String> dois = keys != null ? keys.get(DOI) : null;
List<Record> results = new ArrayList<Record>(); List<Record> results = new ArrayList<Record>();
if (pmids != null && pmids.size()>0 && dois == null) { if (pmids != null && pmids.size()>0 && (dois == null || dois.size()==0)) {
for (String pmid : pmids){ for (String pmid : pmids){
PubmedItem p = null; PubmedItem p = null;
try try
@@ -73,7 +73,7 @@ public class PubmedLookupProvider extends ConfigurableLookupProvider {
results.add(convert(p)); results.add(convert(p));
} }
} }
else if (dois != null && dois.size()>0 && pmids == null) { else if (dois != null && dois.size()>0 && (pmids == null || pmids.size()==0)) {
StringBuffer query = new StringBuffer(); StringBuffer query = new StringBuffer();
for (String d : dois) { for (String d : dois) {
if (query.length() > 0) { if (query.length() > 0) {
@@ -87,7 +87,7 @@ public class PubmedLookupProvider extends ConfigurableLookupProvider {
results.add(convert(p)); results.add(convert(p));
} }
} }
else else if (dois != null && dois.size()>0 && pmids != null && pmids.size()>0)
{ {
//EKT:ToDo: support list of dois and pmids in the search method of pubmedService //EKT:ToDo: support list of dois and pmids in the search method of pubmedService
List<PubmedItem> pubmedResults = pubmedService.search(dois.iterator().next(), pmids.iterator().next()); List<PubmedItem> pubmedResults = pubmedService.search(dois.iterator().next(), pmids.iterator().next());

View File

@@ -56,7 +56,7 @@ public class SubmissionLookupOutputGenerator implements OutputGenerator {
ItemSubmissionLookupDTO dto = new ItemSubmissionLookupDTO(entry.getValue()); ItemSubmissionLookupDTO dto = new ItemSubmissionLookupDTO(entry.getValue());
dtoList.add(dto); dtoList.add(dto);
} }
return null; return new ArrayList<String>();
} }
@Override @Override

View File

@@ -126,7 +126,7 @@ public class SubmissionLookupService {
this.idents2provs = new HashMap<String, List<SubmissionLookupProvider>>(); this.idents2provs = new HashMap<String, List<SubmissionLookupProvider>>();
this.searchProviders = new ArrayList<SubmissionLookupProvider>(); this.searchProviders = new ArrayList<SubmissionLookupProvider>();
if (providers != null) { if (providers == null) {
this.providers = new ArrayList<SubmissionLookupProvider>(); this.providers = new ArrayList<SubmissionLookupProvider>();
for (SubmissionLookupProvider p : dataLoader.getProviders()) { for (SubmissionLookupProvider p : dataLoader.getProviders()) {

View File

@@ -83,13 +83,16 @@ public class EnhancedSubmissionLookupPublication extends SubmissionLookupPublica
{ {
EnhancerSubmissionLookup enhancer = enhancedMetadata.get(md); EnhancerSubmissionLookup enhancer = enhancedMetadata.get(md);
List<String> values = enhancer.getValues(this); List<String> values = enhancer.getValues(this);
List<Value> valuesvalues = new ArrayList<Value>(); if (values != null && values.size()>0) {
for (String s : values){ List<Value> valuesvalues = new ArrayList<Value>();
valuesvalues.add(new StringValue(s)); for (String s : values){
valuesvalues.add(new StringValue(s));
}
cacheEnhanched.put(md, values);
return valuesvalues;
} }
cacheEnhanched.put(md, values);
return valuesvalues;
} }
return null;
} }
else else
{ {

View File

@@ -80,6 +80,9 @@ public class SubmissionLookupPublication implements MutableRecord, Serializable
@Override @Override
public List<Value> getValues(String md) { public List<Value> getValues(String md) {
List<String> stringValues = storage.get(md); List<String> stringValues = storage.get(md);
if (stringValues == null){
return null;
}
List<Value> values = new ArrayList<Value>(); List<Value> values = new ArrayList<Value>();
for (String value : stringValues){ for (String value : stringValues){
values.add(new StringValue(value)); values.add(new StringValue(value));

View File

@@ -59,6 +59,7 @@
<bean name="transformationEngine" class="gr.ekt.bte.core.TransformationEngine"> <bean name="transformationEngine" class="gr.ekt.bte.core.TransformationEngine">
<property name="dataLoader" ref="multipleDataLoader"/> <property name="dataLoader" ref="multipleDataLoader"/>
<property name="workflow" ref="linearWorkflow"/> <property name="workflow" ref="linearWorkflow"/>
<property name="outputGenerator" ref="org.dspace.submit.lookup.SubmissionLookupOutputGenerator"/>
</bean> </bean>
<bean name="multipleDataLoader" class="org.dspace.submit.lookup.MultipleSubmissionLookupDataLoader"> <bean name="multipleDataLoader" class="org.dspace.submit.lookup.MultipleSubmissionLookupDataLoader">
@@ -72,6 +73,8 @@
</bean> </bean>
<bean name="org.dspace.submit.lookup.SubmissionLookupOutputGenerator" class="org.dspace.submit.lookup.SubmissionLookupOutputGenerator"/>
<!-- Specify here any filters or modifiers to run before the output --> <!-- Specify here any filters or modifiers to run before the output -->
<bean name="linearWorkflow" class="gr.ekt.bte.core.LinearWorkflow"> <bean name="linearWorkflow" class="gr.ekt.bte.core.LinearWorkflow">
<property name="process"> <property name="process">
@@ -83,8 +86,7 @@
</property> </property>
</bean> </bean>
<bean name="mapConverter_arxivSubject" class="org.dspace.submit.lookup.MapConverterModifier" <bean name="mapConverter_arxivSubject" class="org.dspace.submit.lookup.MapConverterModifier">
init-method="init">
<constructor-arg value="apConverter_arxivSubject Modifier"/> <constructor-arg value="apConverter_arxivSubject Modifier"/>
<property name="filename" value="mapConverter-arxivSubject.properties"/> <property name="filename" value="mapConverter-arxivSubject.properties"/>
<property name="fieldKeys"> <property name="fieldKeys">
@@ -94,8 +96,7 @@
</property> </property>
</bean> </bean>
<bean name="mapConverter_pubstatusPubmed" class="org.dspace.submit.lookup.MapConverterModifier" <bean name="mapConverter_pubstatusPubmed" class="org.dspace.submit.lookup.MapConverterModifier">
init-method="init">
<constructor-arg value="mapConverter_pubstatusPubmed Modifier"/> <constructor-arg value="mapConverter_pubstatusPubmed Modifier"/>
<property name="filename" value="mapConverter-pubstatusPubmed.properties"/> <property name="filename" value="mapConverter-pubstatusPubmed.properties"/>
<property name="fieldKeys"> <property name="fieldKeys">