RM-1144 & RM-1145 - changes to file to action - post review changes

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@61188 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Mark Hibbins
2014-02-05 21:23:03 +00:00
parent 0723b193e3
commit 9ce6a21575
5 changed files with 66 additions and 89 deletions

View File

@@ -25,6 +25,7 @@ import java.util.List;
import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.service.cmr.repository.NodeRef;
import org.apache.commons.lang.StringUtils;
/**
* Date parameter processor.
@@ -45,22 +46,14 @@ public class DateParameterProcessor extends ParameterProcessor implements Parame
private static final String SEP = ".";
private static final String[] ALL_FIELDS_FOR_SUBSTITUTION_QUERY = {
DAY,
DAY + SEP + SHORT,
DAY + SEP + LONG,
DAY + SEP + NUMBER,
WEEK,
WEEK + SEP + SHORT,
WEEK + SEP + LONG,
WEEK + SEP + NUMBER,
MONTH,
MONTH + SEP + SHORT,
MONTH + SEP + LONG,
MONTH + SEP + NUMBER,
YEAR,
YEAR + SEP + SHORT,
YEAR + SEP + LONG,
YEAR + SEP + NUMBER
YEAR + SEP + LONG
};
/**
@@ -201,7 +194,7 @@ public class DateParameterProcessor extends ParameterProcessor implements Parame
{
List<String> suggestions = new ArrayList<String>();
String namePrefix = this.getName() + ".";
if(this.getName().toLowerCase().contains(substitutionFragment.toLowerCase()))
if(StringUtils.isBlank(substitutionFragment) || this.getName().toLowerCase().contains(substitutionFragment.toLowerCase()))
{
for(String field: ALL_FIELDS_FOR_SUBSTITUTION_QUERY) {
suggestions.add(namePrefix + field);

View File

@@ -30,7 +30,6 @@ import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.service.cmr.action.ParameterizedItem;
import org.alfresco.service.cmr.action.ParameterizedItemDefinition;
import org.alfresco.service.cmr.repository.NodeRef;
import org.apache.commons.lang.StringUtils;
/**
* Parameter processor component
@@ -135,13 +134,10 @@ public class ParameterProcessorComponent implements ParameterSubstitutionSuggest
public List<String> getSubstitutionSuggestions(final String substitutionFragment)
{
List<String> suggestions = new ArrayList<String>();
if (StringUtils.isNotBlank(substitutionFragment))
{
for (ParameterSubstitutionSuggester suggestor : this.subtitutionSuggesterProcessors)
{
suggestions.addAll(suggestor.getSubstitutionSuggestions(substitutionFragment.toLowerCase()));
}
}
return suggestions;
}

View File

@@ -18,6 +18,7 @@
*/
package org.alfresco.repo.web.scripts.substitutionsuggestions;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -38,6 +39,7 @@ import org.springframework.extensions.webscripts.WebScriptRequest;
public class RmSubstitutionSuggestionsGet extends DeclarativeWebScript
{
private final static String FRAGMENT_PARAMETER = "fragment";
private final static String PATH_PARAMETER = "path";
private final static String SUBSTITUTIONS_MODEL_KEY = "substitutions";
@@ -57,11 +59,25 @@ public class RmSubstitutionSuggestionsGet extends DeclarativeWebScript
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache)
{
String fragment = req.getParameter(FRAGMENT_PARAMETER);
List<String> substitutionSuggestions = this.parameterProcessorComponent.getSubstitutionSuggestions(fragment);
String path = req.getParameter(PATH_PARAMETER);
List<String> substitutionSuggestions = new ArrayList<String>();
substitutionSuggestions.addAll(getSubPathSuggestions(path, fragment));
substitutionSuggestions.addAll(this.parameterProcessorComponent.getSubstitutionSuggestions(fragment));
Map<String, Object> model = new HashMap<String, Object>();
model.put(SUBSTITUTIONS_MODEL_KEY, substitutionSuggestions);
return model;
}
private List<String> getSubPathSuggestions(final String path, final String fragment) {
List<String> pathSuggestions = new ArrayList<String>();
if(path != null)
{
// TODO - populate path suggestions
}
return pathSuggestions;
}
}

View File

@@ -46,80 +46,55 @@ public class DateParameterProcessorTest
public void testGetSubstitutionSuggestions_All_01()
{
List<String> suggestions = this.dateParameterProcessor.getSubstitutionSuggestions("date");
assertTrue(suggestions.contains("date.day"));
assertTrue(suggestions.contains("date.day.short"));
assertTrue(suggestions.contains("date.day.long"));
assertTrue(suggestions.contains("date.day.number"));
assertTrue(suggestions.contains("date.week"));
assertTrue(suggestions.contains("date.week.short"));
assertTrue(suggestions.contains("date.week.long"));
assertTrue(suggestions.contains("date.week.number"));
assertTrue(suggestions.contains("date.month"));
assertTrue(suggestions.contains("date.month.short"));
assertTrue(suggestions.contains("date.month.long"));
assertTrue(suggestions.contains("date.month.number"));
assertTrue(suggestions.contains("date.year"));
assertTrue(suggestions.contains("date.year.short"));
assertTrue(suggestions.contains("date.year.long"));
assertTrue(suggestions.contains("date.year.number"));
assertEquals(16, suggestions.size());
assertEquals(8, suggestions.size());
}
@Test
public void testGetSubstitutionSuggestions_All_02()
{
List<String> suggestions = this.dateParameterProcessor.getSubstitutionSuggestions("dat");
assertTrue(suggestions.contains("date.day"));
assertTrue(suggestions.contains("date.day.short"));
assertTrue(suggestions.contains("date.day.long"));
assertTrue(suggestions.contains("date.day.number"));
assertTrue(suggestions.contains("date.week"));
assertTrue(suggestions.contains("date.week.short"));
assertTrue(suggestions.contains("date.week.long"));
assertTrue(suggestions.contains("date.week.number"));
assertTrue(suggestions.contains("date.month"));
assertTrue(suggestions.contains("date.month.short"));
assertTrue(suggestions.contains("date.month.long"));
assertTrue(suggestions.contains("date.month.number"));
assertTrue(suggestions.contains("date.year"));
assertTrue(suggestions.contains("date.year.short"));
assertTrue(suggestions.contains("date.year.long"));
assertTrue(suggestions.contains("date.year.number"));
assertEquals(16, suggestions.size());
assertEquals(8, suggestions.size());
}
@Test
public void testGetSubstitutionSuggestions_All_03()
{
List<String> suggestions = this.dateParameterProcessor.getSubstitutionSuggestions("at");
assertTrue(suggestions.contains("date.day"));
assertTrue(suggestions.contains("date.day.short"));
assertTrue(suggestions.contains("date.day.long"));
assertTrue(suggestions.contains("date.day.number"));
assertTrue(suggestions.contains("date.week"));
assertTrue(suggestions.contains("date.week.short"));
assertTrue(suggestions.contains("date.week.long"));
assertTrue(suggestions.contains("date.week.number"));
assertTrue(suggestions.contains("date.month"));
assertTrue(suggestions.contains("date.month.short"));
assertTrue(suggestions.contains("date.month.long"));
assertTrue(suggestions.contains("date.month.number"));
assertTrue(suggestions.contains("date.year"));
assertTrue(suggestions.contains("date.year.short"));
assertTrue(suggestions.contains("date.year.long"));
assertTrue(suggestions.contains("date.year.number"));
assertEquals(16, suggestions.size());
assertEquals(8, suggestions.size());
}
@Test
public void testGetSubstitutionSuggestions_Partial_01()
{
List<String> suggestions = this.dateParameterProcessor.getSubstitutionSuggestions("ay");
assertTrue(suggestions.contains("date.day"));
assertTrue(suggestions.contains("date.day.short"));
assertTrue(suggestions.contains("date.day.long"));
assertTrue(suggestions.contains("date.day.number"));
assertEquals(4, suggestions.size());
assertEquals(3, suggestions.size());
}
@Test
@@ -127,13 +102,11 @@ public class DateParameterProcessorTest
{
List<String> suggestions = this.dateParameterProcessor.getSubstitutionSuggestions("on");
assertTrue(suggestions.contains("date.day.long"));
assertTrue(suggestions.contains("date.week.long"));
assertTrue(suggestions.contains("date.month"));
assertTrue(suggestions.contains("date.month.short"));
assertTrue(suggestions.contains("date.month.long"));
assertTrue(suggestions.contains("date.month.number"));
assertTrue(suggestions.contains("date.year.long"));
assertEquals(7, suggestions.size());
assertEquals(5, suggestions.size());
}
}

View File

@@ -84,7 +84,6 @@ public class SubstitutionSuggestionsRestApiTest extends BaseRMWebScriptTestCase
{
return Arrays.asList(new String[]
{
"date.month",
"date.month.number",
"date.month.long",
"date.month.short"