@Test public void testSaveParameterLabel() { when( dialog.labelFormula.getFormula() ).thenReturn( null ); when( dialog.dataFormatFormula.getFormula() ).thenReturn( null ); ParameterDefinitionEntry entry = dialog.createQuerylessParameter( "paramName", "paramLabel", new Object(), "yyy", false, type ); final String actualDataFormat = entry.getParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, parameterContext ); final String actualLabel = entry.getParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, parameterContext ); assertEquals( "paramLabel", actualLabel ); assertEquals( "yyy", actualDataFormat ); final String labelFormula = entry.getParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL_FORMULA, parameterContext ); final String dataFormatFormula = entry.getParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT_FORMULA, parameterContext ); assertEquals( null, labelFormula ); assertEquals( null, dataFormatFormula ); }
@VisibleForTesting ParameterDefinitionEntry createQuerylessParameter( final String name, final String label, final Object rawDefaultValue, final String dataFormat, final boolean mandatory, final ParameterType type ) { final Class selectedType = (Class) valueTypeComboBox.getSelectedItem(); final AbstractParameter parameter; if ( type == null || !type.isMultiSelection() ) { parameter = new PlainParameter( name ); parameter.setValueType( selectedType ); } else { final Class valueType = Array.newInstance( selectedType, 0 ).getClass(); parameter = new StaticListParameter( name, true, false, valueType ); } if ( type != null ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TYPE, type.getInternalName() ); } if ( !StringUtils.isEmpty( label ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, label ); } else if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, labelFormula.getFormula() ); } parameter.setDefaultValue( rawDefaultValue ); parameter.setMandatory( mandatory ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN, String.valueOf( hiddenCheckBox.isSelected() ) ); if ( !StringUtils.isEmpty( hiddenFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN_FORMULA, String.valueOf( hiddenFormula.getFormula() ) ); } if ( !StringUtils.isEmpty( dataFormat ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormat ); } else if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormatFormula.getFormula() ); } parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DEFAULT_VALUE_FORMULA, defaultValueFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.POST_PROCESSOR_FORMULA, postProcessingFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TIMEZONE, timeZoneModel.getSelectedKey() ); if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL_FORMULA, labelFormula.getFormula() ); } if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT_FORMULA, dataFormatFormula.getFormula() ); } return parameter; }
ParameterDialog extends CommonDialog implements FormulaEditorDataModel { @VisibleForTesting ParameterDefinitionEntry createQuerylessParameter( final String name, final String label, final Object rawDefaultValue, final String dataFormat, final boolean mandatory, final ParameterType type ) { final Class selectedType = (Class) valueTypeComboBox.getSelectedItem(); final AbstractParameter parameter; if ( type == null || !type.isMultiSelection() ) { parameter = new PlainParameter( name ); parameter.setValueType( selectedType ); } else { final Class valueType = Array.newInstance( selectedType, 0 ).getClass(); parameter = new StaticListParameter( name, true, false, valueType ); } if ( type != null ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TYPE, type.getInternalName() ); } if ( !StringUtils.isEmpty( label ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, label ); } else if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, labelFormula.getFormula() ); } parameter.setDefaultValue( rawDefaultValue ); parameter.setMandatory( mandatory ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN, String.valueOf( hiddenCheckBox.isSelected() ) ); if ( !StringUtils.isEmpty( hiddenFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN_FORMULA, String.valueOf( hiddenFormula.getFormula() ) ); } if ( !StringUtils.isEmpty( dataFormat ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormat ); } else if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormatFormula.getFormula() ); } parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DEFAULT_VALUE_FORMULA, defaultValueFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.POST_PROCESSOR_FORMULA, postProcessingFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TIMEZONE, timeZoneModel.getSelectedKey() ); if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL_FORMULA, labelFormula.getFormula() ); } if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT_FORMULA, dataFormatFormula.getFormula() ); } return parameter; } }
ParameterDialog extends CommonDialog implements FormulaEditorDataModel { @VisibleForTesting ParameterDefinitionEntry createQuerylessParameter( final String name, final String label, final Object rawDefaultValue, final String dataFormat, final boolean mandatory, final ParameterType type ) { final Class selectedType = (Class) valueTypeComboBox.getSelectedItem(); final AbstractParameter parameter; if ( type == null || !type.isMultiSelection() ) { parameter = new PlainParameter( name ); parameter.setValueType( selectedType ); } else { final Class valueType = Array.newInstance( selectedType, 0 ).getClass(); parameter = new StaticListParameter( name, true, false, valueType ); } if ( type != null ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TYPE, type.getInternalName() ); } if ( !StringUtils.isEmpty( label ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, label ); } else if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, labelFormula.getFormula() ); } parameter.setDefaultValue( rawDefaultValue ); parameter.setMandatory( mandatory ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN, String.valueOf( hiddenCheckBox.isSelected() ) ); if ( !StringUtils.isEmpty( hiddenFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN_FORMULA, String.valueOf( hiddenFormula.getFormula() ) ); } if ( !StringUtils.isEmpty( dataFormat ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormat ); } else if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormatFormula.getFormula() ); } parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DEFAULT_VALUE_FORMULA, defaultValueFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.POST_PROCESSOR_FORMULA, postProcessingFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TIMEZONE, timeZoneModel.getSelectedKey() ); if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL_FORMULA, labelFormula.getFormula() ); } if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT_FORMULA, dataFormatFormula.getFormula() ); } return parameter; } ParameterDialog( final ReportDesignerContext context );  ParameterDialog( final Dialog aParent, final ReportDesignerContext context );  ParameterDialog( final Frame aParent, final ReportDesignerContext context ); }
ParameterDialog extends CommonDialog implements FormulaEditorDataModel { @VisibleForTesting ParameterDefinitionEntry createQuerylessParameter( final String name, final String label, final Object rawDefaultValue, final String dataFormat, final boolean mandatory, final ParameterType type ) { final Class selectedType = (Class) valueTypeComboBox.getSelectedItem(); final AbstractParameter parameter; if ( type == null || !type.isMultiSelection() ) { parameter = new PlainParameter( name ); parameter.setValueType( selectedType ); } else { final Class valueType = Array.newInstance( selectedType, 0 ).getClass(); parameter = new StaticListParameter( name, true, false, valueType ); } if ( type != null ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TYPE, type.getInternalName() ); } if ( !StringUtils.isEmpty( label ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, label ); } else if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, labelFormula.getFormula() ); } parameter.setDefaultValue( rawDefaultValue ); parameter.setMandatory( mandatory ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN, String.valueOf( hiddenCheckBox.isSelected() ) ); if ( !StringUtils.isEmpty( hiddenFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN_FORMULA, String.valueOf( hiddenFormula.getFormula() ) ); } if ( !StringUtils.isEmpty( dataFormat ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormat ); } else if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormatFormula.getFormula() ); } parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DEFAULT_VALUE_FORMULA, defaultValueFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.POST_PROCESSOR_FORMULA, postProcessingFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TIMEZONE, timeZoneModel.getSelectedKey() ); if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL_FORMULA, labelFormula.getFormula() ); } if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT_FORMULA, dataFormatFormula.getFormula() ); } return parameter; } ParameterDialog( final ReportDesignerContext context );  ParameterDialog( final Dialog aParent, final ReportDesignerContext context );  ParameterDialog( final Frame aParent, final ReportDesignerContext context ); ParameterEditResult performEditParameter( final ReportDesignerContext context,
                                                   final MasterReport masterReport,
                                                   final ParameterDefinitionEntry parameterDefinitionEntry ); String[] getDataFields(); String getParameter(); }
ParameterDialog extends CommonDialog implements FormulaEditorDataModel { @VisibleForTesting ParameterDefinitionEntry createQuerylessParameter( final String name, final String label, final Object rawDefaultValue, final String dataFormat, final boolean mandatory, final ParameterType type ) { final Class selectedType = (Class) valueTypeComboBox.getSelectedItem(); final AbstractParameter parameter; if ( type == null || !type.isMultiSelection() ) { parameter = new PlainParameter( name ); parameter.setValueType( selectedType ); } else { final Class valueType = Array.newInstance( selectedType, 0 ).getClass(); parameter = new StaticListParameter( name, true, false, valueType ); } if ( type != null ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TYPE, type.getInternalName() ); } if ( !StringUtils.isEmpty( label ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, label ); } else if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL, labelFormula.getFormula() ); } parameter.setDefaultValue( rawDefaultValue ); parameter.setMandatory( mandatory ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN, String.valueOf( hiddenCheckBox.isSelected() ) ); if ( !StringUtils.isEmpty( hiddenFormula.getFormula() ) ) { parameter .setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.HIDDEN_FORMULA, String.valueOf( hiddenFormula.getFormula() ) ); } if ( !StringUtils.isEmpty( dataFormat ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormat ); } else if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT, dataFormatFormula.getFormula() ); } parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DEFAULT_VALUE_FORMULA, defaultValueFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.POST_PROCESSOR_FORMULA, postProcessingFormulaField.getFormula() ); parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.TIMEZONE, timeZoneModel.getSelectedKey() ); if ( !StringUtils.isEmpty( labelFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.LABEL_FORMULA, labelFormula.getFormula() ); } if ( !StringUtils.isEmpty( dataFormatFormula.getFormula() ) ) { parameter.setParameterAttribute( ParameterAttributeNames.Core.NAMESPACE, ParameterAttributeNames.Core.DATA_FORMAT_FORMULA, dataFormatFormula.getFormula() ); } return parameter; } ParameterDialog( final ReportDesignerContext context );  ParameterDialog( final Dialog aParent, final ReportDesignerContext context );  ParameterDialog( final Frame aParent, final ReportDesignerContext context ); ParameterEditResult performEditParameter( final ReportDesignerContext context,
                                                   final MasterReport masterReport,
                                                   final ParameterDefinitionEntry parameterDefinitionEntry ); String[] getDataFields(); String getParameter();  }