Java源码示例:org.geotools.data.Parameter
示例1
@Override
public Param apply(final ConfigOption input) {
if (input.isPassword()) {
return new Param(
input.getName(),
String.class,
input.getDescription(),
!input.isOptional(),
"mypassword",
Collections.singletonMap(Parameter.IS_PASSWORD, Boolean.TRUE));
}
if (input.getType().isPrimitive() && (input.getType() == boolean.class)) {
return new Param(
input.getName(),
input.getType(),
input.getDescription(),
true,
"true",
Collections.singletonMap(Parameter.OPTIONS, BooleanOptions));
}
return new Param(
input.getName(),
input.getType(),
input.getDescription(),
!input.isOptional());
}
示例2
@Test
public void test() throws GeoWavePluginException, URISyntaxException {
final List<Param> params = GeoWavePluginConfig.getPluginParams(new MemoryStoreFactoryFamily());
final HashMap<String, Serializable> paramValues = new HashMap<>();
for (final Param param : params) {
if (param.getName().equals(GeoWavePluginConfig.LOCK_MGT_KEY)) {
final List<String> options = (List<String>) param.metadata.get(Parameter.OPTIONS);
assertNotNull(options);
assertTrue(options.size() > 0);
paramValues.put(param.getName(), options.get(0));
} else if (param.getName().equals(GeoWavePluginConfig.FEATURE_NAMESPACE_KEY)) {
paramValues.put(param.getName(), new URI("http://test/test"));
} else if (param.getName().equals(GeoWavePluginConfig.TRANSACTION_BUFFER_SIZE)) {
paramValues.put(param.getName(), 1000);
} else if (!param.getName().equals(GeoWavePluginConfig.AUTH_URL_KEY)) {
paramValues.put(
param.getName(),
(Serializable) (param.getDefaultValue() == null ? "" : param.getDefaultValue()));
}
}
final GeoWavePluginConfig config =
new GeoWavePluginConfig(new MemoryStoreFactoryFamily(), paramValues);
Assert.assertEquals(1000, (int) config.getTransactionBufferSize());
assertNotNull(config.getLockingManagementFactory());
assertNotNull(config.getLockingManagementFactory().createLockingManager(config));
}
示例3
/**
* Test method for {@link
* com.sldeditor.rendertransformation.OptionalValueEditor#getCellEditorValue()}.
*/
@SuppressWarnings({"unchecked", "rawtypes"})
@Test
void testGetCellEditorValue() {
FunctionTableModel model = new FunctionTableModel();
model.addNewValue(0);
ProcessFunction processFunction = createProcessFunction();
FunctionName name =
new FunctionNameImpl(
"Test",
parameter("cellSize", Double.class),
new Parameter(
"outputBBOX", Number.class, null, null, false, 0, 100, null, null),
parameter("outputWidth", Number.class),
parameter("outputHeight", Number.class));
assertFalse(name.getArguments().get(0).isRequired());
assertTrue(name.getArguments().get(1).isRequired());
model.populate(name, processFunction);
TestOptionalValueEditor obj = new TestOptionalValueEditor(model);
assertNotNull(obj.getTableCellEditorComponent(null, null, false, 0, 0));
assertNotNull(obj.getCellEditorValue());
obj.setValue();
assertNull(obj.getTableCellEditorComponent(null, null, false, 1, 0));
}
示例4
private static Map<String, List<String>> getLockMgtOptions() {
final List<String> options = new ArrayList<>();
final Iterator<LockingManagementFactory> it = getLockManagementFactoryList();
while (it.hasNext()) {
options.add(it.next().toString());
}
final Map<String, List<String>> map = new HashMap<>();
map.put(Parameter.OPTIONS, options);
return map;
}
示例5
private static Map<String, List<String>> getIndexQueryStrategyOptions() {
final List<String> options = new ArrayList<>();
final Iterator<IndexQueryStrategySPI> it = getInxexQueryStrategyList();
while (it.hasNext()) {
options.add(it.next().toString());
}
final Map<String, List<String>> map = new HashMap<>();
map.put(Parameter.OPTIONS, options);
return map;
}
示例6
private static Map<String, List<String>> getAuthSPIOptions() {
final List<String> options = new ArrayList<>();
final Iterator<AuthorizationFactorySPI> it = getAuthorizationFactoryList();
while (it.hasNext()) {
options.add(it.next().toString());
}
final Map<String, List<String>> map = new HashMap<>();
map.put(Parameter.OPTIONS, options);
return map;
}
示例7
public static Expression getRenderingProcess() {
if (SINGLETON_RENDER_PROCESS == null) {
final ProcessFactory processFactory =
new AnnotatedBeanProcessFactory(
Text.text("Internal GeoWave Process Factory"),
"internal",
InternalDistributedRenderProcess.class);
final Name processName = new NameImpl("internal", "InternalDistributedRender");
final RenderingProcess process = (RenderingProcess) processFactory.create(processName);
final Map<String, Parameter<?>> parameters = processFactory.getParameterInfo(processName);
final InternalProcessFactory factory = new InternalProcessFactory();
// this is kinda a hack, but the only way to instantiate a process
// is
// for it to have a registered process factory, so temporarily
// register
// the process factory
Processors.addProcessFactory(factory);
SINGLETON_RENDER_PROCESS =
new RenderingProcessFunction(
processName,
Collections.singletonList(
new ParameterFunction(
null,
Collections.singletonList(new LiteralExpressionImpl("data")))),
parameters,
process,
null);
Processors.removeProcessFactory(factory);
}
return SINGLETON_RENDER_PROCESS;
}
示例8
@SuppressWarnings("unlikely-arg-type")
@Test
void testEquals() {
Param param = GeoPkgDataStoreFactory.DBTYPE;
List<DatabaseConnectionField> expectedDetailList = new ArrayList<DatabaseConnectionField>();
expectedDetailList.add(new DatabaseConnectionField(GeoPkgDataStoreFactory.DATABASE));
expectedDetailList.add(new DatabaseConnectionField(GeoPkgDataStoreFactory.USER));
String expectedDatabaseTypeLabel = "GeoPackage";
boolean expectedSupportsDuplication = false;
DatabaseConnection test =
new DatabaseConnection(
param,
expectedDatabaseTypeLabel,
expectedSupportsDuplication,
expectedDetailList,
null);
assertTrue(test.equals(test));
assertFalse(test.equals(""));
assertFalse(test.equals(null));
assertFalse(
new DatabaseConnection(
null,
expectedDatabaseTypeLabel,
expectedSupportsDuplication,
expectedDetailList,
null)
.equals(test));
assertFalse(
new DatabaseConnection(
param, null, expectedSupportsDuplication, expectedDetailList, null)
.equals(test));
assertFalse(
new DatabaseConnection(
param,
expectedDatabaseTypeLabel,
expectedSupportsDuplication,
null,
null)
.equals(test));
assertFalse(
new DatabaseConnection(
new Param(
"differetdbtype",
String.class,
"Type",
true,
"testgeopkg",
Collections.singletonMap(Parameter.LEVEL, "program")),
expectedDatabaseTypeLabel,
expectedSupportsDuplication,
expectedDetailList,
null)
.equals(test));
assertFalse(
new DatabaseConnection(
param, "", expectedSupportsDuplication, expectedDetailList, null)
.equals(test));
assertFalse(
new DatabaseConnection(
param,
expectedDatabaseTypeLabel,
!expectedSupportsDuplication,
expectedDetailList,
null)
.equals(test));
assertFalse(
new DatabaseConnection(
param,
expectedDatabaseTypeLabel,
expectedSupportsDuplication,
new ArrayList<DatabaseConnectionField>(),
null)
.equals(test));
}
示例9
/**
* Test method for {@link
* com.sldeditor.rendertransformation.CheckBoxRenderer#CheckBoxRenderer(com.sldeditor.rendertransformation.FunctionTableModel)}.
*/
@SuppressWarnings({"unchecked", "rawtypes"})
@Test
void testCheckBoxRenderer() {
JTable table = new JTable();
FunctionTableModel model = new FunctionTableModel();
assertNull(
new CheckBoxRenderer(null)
.getTableCellRendererComponent(null, null, false, false, 0, 0));
assertNull(
new CheckBoxRenderer(null)
.getTableCellRendererComponent(table, null, false, false, 0, 0));
assertNull(
new CheckBoxRenderer(model)
.getTableCellRendererComponent(null, null, false, false, 0, 0));
model.addNewValue(0);
ProcessFunction processFunction = createProcessFunction();
FunctionName name =
new FunctionNameImpl(
"Test",
parameter("cellSize", Double.class),
new Parameter(
"outputBBOX", Number.class, null, null, false, 0, 100, null, null),
parameter("outputWidth", Number.class),
parameter("outputHeight", Number.class));
assertFalse(name.getArguments().get(0).isRequired());
assertTrue(name.getArguments().get(1).isRequired());
model.populate(name, processFunction);
CheckBoxRenderer obj = new CheckBoxRenderer(model);
// Row - optional and not selected
assertEquals(obj, obj.getTableCellRendererComponent(table, null, false, false, 0, 0));
assertEquals(obj, obj.getTableCellRendererComponent(table, true, false, false, 0, 0));
assertTrue(obj.isSelected());
assertEquals(obj, obj.getTableCellRendererComponent(table, false, false, false, 0, 0));
assertFalse(obj.isSelected());
// Row - optional and selected
assertEquals(obj, obj.getTableCellRendererComponent(table, null, true, false, 0, 0));
assertEquals(obj, obj.getTableCellRendererComponent(table, true, true, false, 0, 0));
assertTrue(obj.isSelected());
assertEquals(obj, obj.getTableCellRendererComponent(table, false, true, false, 0, 0));
assertFalse(obj.isSelected());
// Row - required and not selected
assertEquals(
JLabel.class,
obj.getTableCellRendererComponent(table, null, false, false, 1, 0).getClass());
// Row - required and selected
assertEquals(
JLabel.class,
obj.getTableCellRendererComponent(table, null, true, false, 1, 0).getClass());
}
示例10
/** Test all the methods using a ProcessFunction */
@SuppressWarnings({"unchecked", "rawtypes"})
@Test
void testProcessFunction() {
FunctionTableModel model = new FunctionTableModel();
assertEquals(0, model.getRowCount());
model.addNewValue(0);
ProcessFunction processFunction = createProcessFunction();
FunctionName name =
new FunctionNameImpl(
new NameImpl("vec", "PointStacker"),
parameter("cellSize", Double.class),
new Parameter(
"outputBBOX", Number.class, null, null, false, 0, 100, null, null),
parameter("outputWidth", Number.class),
parameter("outputHeight", Number.class));
assertFalse(name.getArguments().get(0).isRequired());
assertTrue(name.getArguments().get(1).isRequired());
model.populate(name, processFunction);
assertEquals(3, model.getRowCount());
assertEquals(4, model.getColumnCount());
// Get value
assertEquals("outputBBOX", model.getValueAt(0, 0));
assertEquals(Number.class.getSimpleName(), model.getValueAt(0, 1));
assertEquals(true, model.getValueAt(0, 2));
assertEquals("env([wms_bbox])", model.getValueAt(0, 3));
assertNull(model.getValueAt(0, 4));
// Is editable
assertFalse(model.isCellEditable(0, 0));
assertFalse(model.isCellEditable(0, 1));
assertTrue(model.isCellEditable(0, FunctionTableModel.getOptionalColumn()));
assertFalse(model.isCellEditable(0, 3));
assertFalse(model.isCellEditable(0, 4));
// Set value
model.setValueAt(true, 0, 2);
assertTrue((Boolean) model.getValueAt(0, FunctionTableModel.getOptionalColumn()));
model.setValueAt(false, 0, 2);
assertFalse((Boolean) model.getValueAt(0, FunctionTableModel.getOptionalColumn()));
// Get row
assertNull(model.getValue(-1));
assertNull(model.getValue(10));
// Add a new value
assertEquals(0, model.getNoOfOccurences(null));
ProcessFunctionParameterValue value = model.getValue(0);
assertEquals(1, model.getNoOfOccurences(value));
model.addNewValue(0);
assertEquals(4, model.getRowCount());
assertEquals(2, model.getNoOfOccurences(value));
// Remove value
model.removeValue(3);
assertEquals(3, model.getRowCount());
// Get expression
ProcessFunction actualFunction = model.getExpression(null);
assertNull(actualFunction);
model.setValueAt(true, 0, FunctionTableModel.getOptionalColumn());
ProcessFunctionFactory factory = new ProcessFunctionFactory();
actualFunction = model.getExpression(factory);
assertNotNull(actualFunction);
// Update expression
FilterFactory ff = CommonFactoryFinder.getFilterFactory();
Expression expression = ff.literal(4.2);
model.update(expression, 0);
model.update(null, 1);
}
示例11
/**
* Test all the methods using a ProcessBriefType.
*
* <p>Not tested because it needs to interact with GeoServer to create a receive a remote custom
* WPS function.
*/
@SuppressWarnings({"unchecked", "rawtypes"})
@Disabled
@Test
void testProcessBriefType() {
FunctionTableModel model = new FunctionTableModel();
assertEquals(0, model.getRowCount());
model.addNewValue(0);
ProcessBriefType customFunction = createCustomFunction();
FunctionName name =
new FunctionNameImpl(
new NameImpl("vec", "PointStacker"),
parameter("cellSize", Double.class),
new Parameter(
"outputBBOX", Number.class, null, null, false, 0, 100, null, null),
parameter("outputWidth", Number.class),
parameter("outputHeight", Number.class));
assertFalse(name.getArguments().get(0).isRequired());
assertTrue(name.getArguments().get(1).isRequired());
model.populate(customFunction);
assertEquals(3, model.getRowCount());
assertEquals(4, model.getColumnCount());
// Get value
assertEquals("outputBBOX", model.getValueAt(0, 0));
assertEquals(Number.class.getSimpleName(), model.getValueAt(0, 1));
assertEquals(true, model.getValueAt(0, 2));
assertEquals("env([wms_bbox])", model.getValueAt(0, 3));
assertNull(model.getValueAt(0, 4));
// Is editable
assertFalse(model.isCellEditable(0, 0));
assertFalse(model.isCellEditable(0, 1));
assertTrue(model.isCellEditable(0, FunctionTableModel.getOptionalColumn()));
assertFalse(model.isCellEditable(0, 3));
assertFalse(model.isCellEditable(0, 4));
// Set value
model.setValueAt(true, 0, 2);
assertTrue((Boolean) model.getValueAt(0, FunctionTableModel.getOptionalColumn()));
model.setValueAt(false, 0, 2);
assertFalse((Boolean) model.getValueAt(0, FunctionTableModel.getOptionalColumn()));
// Get row
assertNull(model.getValue(-1));
assertNull(model.getValue(10));
// Add a new value
assertEquals(0, model.getNoOfOccurences(null));
ProcessFunctionParameterValue value = model.getValue(0);
assertEquals(1, model.getNoOfOccurences(value));
model.addNewValue(0);
assertEquals(4, model.getRowCount());
assertEquals(2, model.getNoOfOccurences(value));
// Remove value
model.removeValue(3);
assertEquals(3, model.getRowCount());
// Get expression
ProcessFunction actualFunction = model.getExpression(null);
assertNull(actualFunction);
model.setValueAt(true, 0, FunctionTableModel.getOptionalColumn());
ProcessFunctionFactory factory = new ProcessFunctionFactory();
actualFunction = model.getExpression(factory);
assertNotNull(actualFunction);
// Update expression
FilterFactory ff = CommonFactoryFinder.getFilterFactory();
Expression expression = ff.literal(4.2);
model.update(expression, 0);
model.update(null, 1);
}