Project:
SpotBugs version: 4.9.3
Code analyzed:
32806 lines of code analyzed, in 804 classes, in 55 packages.
| Metric | Total | Density* |
|---|---|---|
| High Priority Warnings | 58 | 1.77 |
| Medium Priority Warnings | 564 | 17.19 |
| Total Warnings | 622 | 18.96 |
(* Defects per Thousand lines of non-commenting source statements)
| Warning Type | Number |
|---|---|
| Bad practice Warnings | 65 |
| Correctness Warnings | 21 |
| Experimental Warnings | 1 |
| Internationalization Warnings | 19 |
| Malicious code vulnerability Warnings | 357 |
| Multithreaded correctness Warnings | 24 |
| Performance Warnings | 45 |
| Dodgy code Warnings | 90 |
| Total | 622 |
Click on a warning row to see full context information.
| Code | Warning |
|---|---|
| CT | Exception thrown in class org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher at new org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher(Object, ObservationMatcherOp, ObservationMatcherOp[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher at new org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher(ObservationMatcherOp[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.data.validation.CKMagValidator at new org.aavso.tools.vstar.data.validation.CKMagValidator(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase at new org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase(String, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.NumberSelectionPane at new org.aavso.tools.vstar.ui.NumberSelectionPane(String, double, double, double, double, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.dialog.DateToJdDialog at new org.aavso.tools.vstar.ui.dialog.DateToJdDialog(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.dialog.LogDialog at new org.aavso.tools.vstar.ui.dialog.LogDialog() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.dialog.StarSelectorDialog at new org.aavso.tools.vstar.ui.dialog.StarSelectorDialog() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.dialog.TextAreaTabs at new org.aavso.tools.vstar.ui.dialog.TextAreaTabs(List, List, int, int, boolean, boolean, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DResultDialog at new org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DResultDialog(String, String, IPeriodAnalysisAlgorithm, PeriodAnalysisCoordinateType[], PeriodAnalysisCoordinateType) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.model.list.AbstractModelObservationTableModel at new org.aavso.tools.vstar.ui.model.list.AbstractModelObservationTableModel(List, SeriesType) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel at new org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel(Map, ICoordSource, Comparator, ITimeElementEntity, Map) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel at new org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel(Map, ICoordSource, Comparator) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel at new org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel(Map, ICoordSource, Comparator, Map) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.model.plot.PeriodAnalysis2DPlotModel at new org.aavso.tools.vstar.ui.model.plot.PeriodAnalysis2DPlotModel(Map, PeriodAnalysisCoordinateType, PeriodAnalysisCoordinateType, boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.ui.resources.StarGroups at new org.aavso.tools.vstar.ui.resources.StarGroups() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.discrepant.DiscrepantReport at new org.aavso.tools.vstar.util.discrepant.DiscrepantReport(String, String, int, String, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.model.Harmonic at new org.aavso.tools.vstar.util.model.Harmonic(double) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.model.Harmonic at new org.aavso.tools.vstar.util.model.Harmonic(double, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.model.RelativeAmplitudeAndPhaseCreator at new org.aavso.tools.vstar.util.model.RelativeAmplitudeAndPhaseCreator(List) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint at new org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint(double[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint at new org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint(PeriodAnalysisCoordinateType[], double[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.util.property.ApplicationProperties at new org.aavso.tools.vstar.util.property.ApplicationProperties(MainFrame) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.vela.VeLaInterpreter at new org.aavso.tools.vstar.vela.VeLaInterpreter() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.vela.VeLaInterpreter at new org.aavso.tools.vstar.vela.VeLaInterpreter(boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| CT | Exception thrown in class org.aavso.tools.vstar.vela.VeLaInterpreter at new org.aavso.tools.vstar.vela.VeLaInterpreter(boolean, boolean, List) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
| Co | org.aavso.tools.vstar.util.model.Harmonic.compareTo(Harmonic) incorrectly handles double value |
| DE | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.updateChartProperties() might ignore java.lang.Exception |
| Dm | org.aavso.tools.vstar.ui.ToolBar.retrieveToolBarIcons() invokes System.exit(...), which shuts down the entire virtual machine |
| Dm | org.aavso.tools.vstar.ui.VStar$4.run() invokes System.exit(...), which shuts down the entire virtual machine |
| Dm | org.aavso.tools.vstar.ui.mediator.Mediator.quit() invokes System.exit(...), which shuts down the entire virtual machine |
| Dm | org.aavso.tools.vstar.util.property.ApplicationProperties.update() invokes System.exit(...), which shuts down the entire virtual machine |
| Dm | org.aavso.tools.vstar.vela.VeLaInterpreter$5.apply(List) invokes System.exit(...), which shuts down the entire virtual machine |
| ES | Comparison of String parameter using == or != in org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase.getMType(String) |
| ES | Comparison of String parameter using == or != in org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase.getMType(String) |
| ES | Comparison of String objects using == or != in org.aavso.tools.vstar.util.TSBase.project() |
| ES | Comparison of String objects using == or != in org.aavso.tools.vstar.util.model.TSPolynomialFitter.polymast(int) |
| ES | Comparison of String objects using == or != in org.aavso.tools.vstar.util.period.dcdft.TSDcDft.multiPeriodicFit(List, PeriodAnalysisDerivedMultiPeriodicModel) |
| Eq | org.aavso.tools.vstar.util.model.Harmonic defines compareTo(Harmonic) and uses Object.equals() |
| FS | Format string should use %n rather than \n in org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel.toUncertaintyString() |
| HE | org.aavso.tools.vstar.util.model.PeriodFitParameters defines equals and uses Object.hashCode() |
| HE | org.aavso.tools.vstar.util.period.wwz.WWZStatistic defines equals and uses Object.hashCode() |
| ME | org.aavso.tools.vstar.data.filter.SeriesTypeFieldMatcher$Kind.name field is public and mutable |
| NP | org.aavso.tools.vstar.data.filter.ObservationMatcherOp.toString() may return null |
| NP | org.aavso.tools.vstar.plugin.CustomFilterPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.GeneralToolPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.ModelCreatorPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.ObservationSinkPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.ObservationSourcePluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.ObservationToolPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.ObservationTransformerPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.plugin.period.PeriodAnalysisPluginBase.test() has Boolean return type and returns explicit null |
| NP | org.aavso.tools.vstar.ui.mediator.message.UndoableActionType.toString() may return null |
| NP | org.aavso.tools.vstar.ui.resources.LoginType.toString() may return null |
| NP | org.aavso.tools.vstar.util.AbstractExtremaFinder.toString() may return null |
| NP | org.aavso.tools.vstar.util.period.wwz.WWZCoordinateType.toString() may return null |
| NP | org.aavso.tools.vstar.util.prefs.NumericPrecisionPrefs$Type.toString() may return null |
| Nm | The class name org.aavso.tools.vstar.data.Property$propType doesn't start with an upper case letter |
| OS | org.aavso.tools.vstar.plugin.ob.src.impl.TextFormatObservationSourcePlugin.getObservationRetriever() may fail to close stream |
| RV | Exceptional return value of java.io.File.mkdir() ignored in org.aavso.tools.vstar.ui.VStar.<static initializer for VStar>() |
| RV | Exceptional return value of java.io.File.mkdir() ignored in org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.installPlugin(String, PluginManager$Operation) |
| RV | org.aavso.tools.vstar.util.comparator.RankedIndexPairComparator.compare(double[], double[]) negates the return value of Double.compare(double, double) |
| Se | org.aavso.tools.vstar.util.stats.epoch.AlphaOmegaMeanJDEpochStrategy stored into non-transient field PhaseParameterDialog.epochStrategy |
| Se | org.aavso.tools.vstar.util.comparator.DoubleAsStringComparator implements Comparator but not Serializable |
| Se | org.aavso.tools.vstar.util.comparator.DoubleComparator implements Comparator but not Serializable |
| Code | Warning |
|---|---|
| EC | Call to java.util.Locale.equals(String) in org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase.getDescription() |
| EC | Call to java.util.Locale.equals(String) in org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase.getDisplayName() |
| EC | Call to java.util.Locale.equals(String) in org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase$AAVSOPhotometryURLObservationRetriever.getSourceType() |
| FE | Doomed test for equality to NaN in org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DChartPane$3.update(PeriodAnalysisSelectionMessage) |
| FE | Doomed test for equality to NaN in org.aavso.tools.vstar.util.model.AbstractModel.fitMetrics() |
| FL | Using floating-point loop counters can lead to unexpected behavior. |
| IL | There is an apparent infinite loop in org.aavso.tools.vstar.vela.VeLaScriptDriver.main(String[]) |
| MF | Field ObservationAndMeanPlotModel.modelFunctionSeriesNum masks field in superclass org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel |
| NP | Possible null pointer dereference of dcdft in org.aavso.tools.vstar.scripting.VStarScriptingAPI.dcdftCommon(String, DcDftAnalysisType, double, double, double) on exception path |
| NP | Possible null pointer dereference of obs in org.aavso.tools.vstar.ui.mediator.Mediator.saveSyntheticObsListToFile(Component, ObservationSinkPluginBase, ViewModeType, File, String) |
| NP | Possible null pointer dereference of formats in org.aavso.tools.vstar.util.prefs.NumericPrecisionPrefs.getInputFormatString(int, NumericPrecisionPrefs$Type) on exception path |
| NP | Possible null pointer dereference of formats in org.aavso.tools.vstar.util.prefs.NumericPrecisionPrefs.getOutputFormat(int, NumericPrecisionPrefs$Type) on exception path |
| NP | Possible null pointer dereference of formats in org.aavso.tools.vstar.util.prefs.NumericPrecisionPrefs.getOutputFormatLocaleIndependent(int, NumericPrecisionPrefs$Type) on exception path |
| NP | Possible null pointer dereference of reader in org.aavso.tools.vstar.vela.VeLaScriptDriver.main(String[]) on exception path |
| RCN | Nullcheck of delimiter2suffixes at line 100 of value previously dereferenced in org.aavso.tools.vstar.ui.dialog.DelimitedFieldFileSaveChooser.getSelectedFile() |
| RpC | Repeated conditional test in org.aavso.tools.vstar.ui.ToolBar.retrieveToolBarIcons() |
| SING | Class (org.aavso.tools.vstar.scripting.ScriptRunner) using singleton design pattern has non-private constructor. |
| SING | Class (org.aavso.tools.vstar.ui.dialog.StarSelectorDialog) using singleton design pattern directly or indirectly implements Serializable interface. |
| SING | Class (org.aavso.tools.vstar.ui.dialog.prefs.PreferencesDialog) using singleton design pattern directly or indirectly implements Serializable interface. |
| SING | Class (org.aavso.tools.vstar.ui.resources.StarGroups) using singleton design pattern has non-private constructor. |
| SING | Class (org.aavso.tools.vstar.vela.VeLaStandardLibrary) using singleton design pattern has non-private constructor. |
| Code | Warning |
|---|---|
| OBL | org.aavso.tools.vstar.ui.task.NewStarFromObSourcePluginWithSuppliedFileTask.createObservationArtefacts() may fail to clean up java.io.InputStream |
| Code | Warning |
|---|---|
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.auth.AAVSOPostUserPassXMLAuthenticationSource.authenticate(String, String): String.getBytes() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.auth.Auth0JSONAutheticationSource.authenticate(String, String): new java.io.InputStreamReader(InputStream) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.input.AbstractObservationRetriever.removeNegativeBytes(String): new String(byte[], int, int) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.input.AbstractObservationRetriever.removeNegativeBytes(String): String.getBytes() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.plugin.ObservationSourcePluginBase.getTestRetriever(String[], String): String.getBytes() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase$AAVSOPhotometryURLObservationRetriever.retrieveAAVSOPhotometryURLObs(InputStream, SeriesType): new java.io.InputStreamReader(InputStream) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.plugin.ob.src.impl.TextFormatObservationSourcePlugin.getObservationRetriever(): new java.io.InputStreamReader(InputStream) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.plugin.ob.src.impl.TextFormatObservationSourcePlugin.getObservationRetriever(): String.getBytes() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.scripting.ScriptRunner.runScript(File): new java.io.FileReader(File) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.dialog.LogDialog.createLogPanel(): new java.io.FileReader(String) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.retrieveRemotePluginInfo(String): new java.io.InputStreamReader(InputStream) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.task.NewStarFromFileTask.createFileBasedObservationArtefacts(File, ObservationSourceAnalyser): new java.io.FileReader(String) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.task.NewStarFromObSourcePluginTask.configure(): String.getBytes() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.task.ObsListFileSaveTask.doInBackground(): new java.io.PrintWriter(File) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.vela.VeLaDialog.execute(): java.io.ByteArrayOutputStream.toString() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.vela.VeLaDialog.execute(): new java.io.PrintStream(OutputStream) |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.ui.vela.VeLaDialog.showOutput(ByteArrayOutputStream): java.io.ByteArrayOutputStream.toString() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.util.discrepant.VSXWebServiceZapperLogger.lodge(DiscrepantReport): String.getBytes() |
| Dm | Found reliance on default encoding in org.aavso.tools.vstar.vela.VeLaScriptDriver.main(String[]): new java.io.FileReader(String) |
| Code | Warning |
|---|---|
| EI | org.aavso.tools.vstar.data.CommentCodes.getCommentcodes() may expose internal representation by returning CommentCodes.commentcodes |
| EI | org.aavso.tools.vstar.data.ValidObservation.getDetails() may expose internal representation by returning ValidObservation.details |
| EI | org.aavso.tools.vstar.data.ValidObservation.getMagnitude() may expose internal representation by returning ValidObservation.magnitude |
| EI | org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher.getMatcherOps() may expose internal representation by returning AbstractObservationFieldMatcher.ops |
| EI | org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher.getObservationSelectionMessage() may expose internal representation by returning AbstractObservationFieldMatcher.observationSelectionMessage |
| EI | org.aavso.tools.vstar.data.filter.ObservationFilter.getMatchers() may expose internal representation by returning ObservationFilter.matchers |
| EI | org.aavso.tools.vstar.data.validation.AAVSOFormatFieldInfoSource.getFieldIndexMap() may expose internal representation by returning AAVSOFormatFieldInfoSource.fieldIndexMap |
| EI | org.aavso.tools.vstar.data.validation.SimpleFormatFieldInfoSource.getFieldIndexMap() may expose internal representation by returning SimpleFormatFieldInfoSource.fieldIndexMap |
| EI | org.aavso.tools.vstar.exception.ObservationValidationWarning.getObservation() may expose internal representation by returning ObservationValidationWarning.ob |
| EI | org.aavso.tools.vstar.input.AbstractObservationRetriever.getInvalidObservations() may expose internal representation by returning AbstractObservationRetriever.invalidObservations |
| EI | org.aavso.tools.vstar.input.AbstractObservationRetriever.getValidObservationCategoryMap() may expose internal representation by returning AbstractObservationRetriever.validObservationCategoryMap |
| EI | org.aavso.tools.vstar.input.AbstractObservationRetriever.getValidObservations() may expose internal representation by returning AbstractObservationRetriever.validObservations |
| EI | org.aavso.tools.vstar.plugin.ObservationSourcePluginBase.getInputStreams() may expose internal representation by returning ObservationSourcePluginBase.inputStreams |
| EI | org.aavso.tools.vstar.plugin.ob.sink.impl.CommonTextFormatSinkPluginBase.getDelimiterNameValuePairs() may expose internal representation by returning CommonTextFormatSinkPluginBase.DELIMS |
| EI | org.aavso.tools.vstar.plugin.ob.sink.impl.CommonTextFormatSinkPluginBase.getDelimiterSuffixValuePairs() may expose internal representation by returning CommonTextFormatSinkPluginBase.SUFFIXES |
| EI | org.aavso.tools.vstar.ui.MainFrame.getStatusPane() may expose internal representation by returning MainFrame.statusPane |
| EI | org.aavso.tools.vstar.ui.NamedComponent.getComponent() may expose internal representation by returning NamedComponent.component |
| EI | org.aavso.tools.vstar.ui.dialog.AdditiveLoadFileOrUrlChooser.getDefaultFileExtensions() may expose internal representation by returning AdditiveLoadFileOrUrlChooser.extensions |
| EI | org.aavso.tools.vstar.ui.dialog.Checkbox.getUIComponent() may expose internal representation by returning Checkbox.checkbox |
| EI | org.aavso.tools.vstar.ui.dialog.NumberFieldBase.getUIComponent() may expose internal representation by returning NumberFieldBase.textField |
| EI | org.aavso.tools.vstar.ui.dialog.SelectableTextField.getUIComponent() may expose internal representation by returning SelectableTextField.textChooser |
| EI | org.aavso.tools.vstar.ui.dialog.StarGroupSelectionPane.getStarGroups() may expose internal representation by returning StarGroupSelectionPane.starGroups |
| EI | org.aavso.tools.vstar.ui.dialog.TextArea.getUIComponent() may expose internal representation by returning TextArea.textArea |
| EI | org.aavso.tools.vstar.ui.dialog.TextAreaTabs.getUIComponent() may expose internal representation by returning TextAreaTabs.tabs |
| EI | org.aavso.tools.vstar.ui.dialog.TextDialog.getTextFields() may expose internal representation by returning TextDialog.textFields |
| EI | org.aavso.tools.vstar.ui.dialog.TextField.getUIComponent() may expose internal representation by returning TextField.textField |
| EI | org.aavso.tools.vstar.ui.dialog.model.HarmonicInputDialog.getHarmonics() may expose internal representation by returning HarmonicInputDialog.harmonicsPerSelectedPeriod |
| EI | org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DChartPane.getChart() may expose internal representation by returning PeriodAnalysis2DChartPane.chart |
| EI | org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DChartPane.getModel() may expose internal representation by returning PeriodAnalysis2DChartPane.model |
| EI | org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysisDataTablePane.getTable() may expose internal representation by returning PeriodAnalysisDataTablePane.table |
| EI | org.aavso.tools.vstar.ui.dialog.period.refinement.PeriodGatheringPane.getPeriods() may expose internal representation by returning PeriodGatheringPane.periods |
| EI | org.aavso.tools.vstar.ui.dialog.period.wwz.WWZPlotPane.getChart() may expose internal representation by returning WWZPlotPane.chart |
| EI | org.aavso.tools.vstar.ui.dialog.period.wwz.WWZPlotPane.getModel() may expose internal representation by returning WWZPlotPane.model |
| EI | org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManagementOperation.getManager() may expose internal representation by returning PluginManagementOperation.manager |
| EI | org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.getLibs() may expose internal representation by returning PluginManager.libs |
| EI | org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.getLocalDescriptionsToJarName() may expose internal representation by returning PluginManager.localDescriptions |
| EI | org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.getLocalPluginsByJarName() may expose internal representation by returning PluginManager.localPlugins |
| EI | org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.getRemoteDescriptionsToJarName() may expose internal representation by returning PluginManager.remoteDescriptions |
| EI | org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.getRemotePluginsByJarName() may expose internal representation by returning PluginManager.remotePlugins |
| EI | org.aavso.tools.vstar.ui.dialog.prefs.NewGroupWithStarsDialog.getStarList() may expose internal representation by returning NewGroupWithStarsDialog.starList |
| EI | org.aavso.tools.vstar.ui.dialog.prefs.SeriesColorSelectionPane.getChangedSeriesColorMap() may expose internal representation by returning SeriesColorSelectionPane.changedSeriesColorMap |
| EI | org.aavso.tools.vstar.ui.dialog.prefs.SeriesSizeSelectionPane.getChangedSeriesSizeMap() may expose internal representation by returning SeriesSizeSelectionPane.changedSeriesSizeMap |
| EI | org.aavso.tools.vstar.ui.dialog.series.AbstractSeriesVisibilityDialog.getNextPane() may expose internal representation by returning AbstractSeriesVisibilityDialog.nextPane |
| EI | org.aavso.tools.vstar.ui.dialog.series.SeriesVisibilityPane.getVisibilityDeltaMap() may expose internal representation by returning SeriesVisibilityPane.visibilityDeltaMap |
| EI | org.aavso.tools.vstar.ui.mediator.DocumentManager.getStatsInfo() may expose internal representation by returning DocumentManager.statsInfo |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getAnalysisTypeChangeNotifier() may expose internal representation by returning Mediator.analysisTypeChangeNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getDiscrepantObservationNotifier() may expose internal representation by returning Mediator.discrepantObservationNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getDocumentManager() may expose internal representation by returning Mediator.documentManager |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getExcludedObservationNotifier() may expose internal representation by returning Mediator.excludedObservationNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getFilteredObservationNotifier() may expose internal representation by returning Mediator.filteredObservationNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getHarmonicSearchNotifier() may expose internal representation by returning Mediator.harmonicSearchNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getMeanSourceSeriesChangeNotifier() may expose internal representation by returning Mediator.meanSourceSeriesChangeNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getModelCreationNotifier() may expose internal representation by returning Mediator.modelCreationNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getModelDialog() may expose internal representation by returning Mediator.modelDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getModelSelectionMessage() may expose internal representation by returning Mediator.modelSelectionMessage |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getModelSelectionNofitier() may expose internal representation by returning Mediator.modelSelectionNofitier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getMultipleObservationSelectionNotifier() may expose internal representation by returning Mediator.multipleObservationSelectionNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getNewStarMessageList() may expose internal representation by returning Mediator.newStarMessageList |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getNewStarNotifier() may expose internal representation by returning Mediator.newStarNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getObsFilterDialog() may expose internal representation by returning Mediator.obsFilterDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getObservationFiltersDialog() may expose internal representation by returning Mediator.observationFiltersDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getObservationSelectionNotifier() may expose internal representation by returning Mediator.observationSelectionNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPanRequestNotifier() may expose internal representation by returning Mediator.panRequestNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPeriodAnalysisRefinementNotifier() may expose internal representation by returning Mediator.periodAnalysisRefinementNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPeriodAnalysisSelectionNotifier() may expose internal representation by returning Mediator.periodAnalysisSelectionNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPeriodChangeNotifier() may expose internal representation by returning Mediator.periodChangeNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPhaseChangeNotifier() may expose internal representation by returning Mediator.phaseChangeNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPhaseDialog() may expose internal representation by returning Mediator.phaseDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPhaseParameterDialog() may expose internal representation by returning Mediator.phaseParameterDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getPhaseSelectionNotifier() may expose internal representation by returning Mediator.phaseSelectionNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getProgressNotifier() may expose internal representation by returning Mediator.progressNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getSeriesCreationNotifier() may expose internal representation by returning Mediator.seriesCreationNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getSeriesVisibilityChangeNotifier() may expose internal representation by returning Mediator.seriesVisibilityChangeNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getStopRequestNotifier() may expose internal representation by returning Mediator.stopRequestNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getUndoActionNotifier() may expose internal representation by returning Mediator.undoActionNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getUndoableActionManager() may expose internal representation by returning Mediator.undoableActionManager |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getValidObsList() may expose internal representation by returning Mediator.validObsList |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getValidObservationCategoryMap() may expose internal representation by returning Mediator.validObservationCategoryMap |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getVelaFileSaveDialog() may expose internal representation by returning Mediator.velaFileSaveDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getVelaXMLsaveDialog() may expose internal representation by returning Mediator.velaXMLsaveDialog |
| EI | org.aavso.tools.vstar.ui.mediator.Mediator.getZoomRequestNotifier() may expose internal representation by returning Mediator.zoomRequestNotifier |
| EI | org.aavso.tools.vstar.ui.mediator.StarInfo.getRetriever() may expose internal representation by returning StarInfo.retriever |
| EI | org.aavso.tools.vstar.ui.mediator.message.AnalysisTypeChangeMessage.getMeansListPane() may expose internal representation by returning AnalysisTypeChangeMessage.meansListPane |
| EI | org.aavso.tools.vstar.ui.mediator.message.AnalysisTypeChangeMessage.getObsAndMeanChartPane() may expose internal representation by returning AnalysisTypeChangeMessage.obsAndMeanChartPane |
| EI | org.aavso.tools.vstar.ui.mediator.message.AnalysisTypeChangeMessage.getObsListPane() may expose internal representation by returning AnalysisTypeChangeMessage.obsListPane |
| EI | org.aavso.tools.vstar.ui.mediator.message.DiscrepantObservationMessage.getObservation() may expose internal representation by returning DiscrepantObservationMessage.observation |
| EI | org.aavso.tools.vstar.ui.mediator.message.ExcludedObservationMessage.getObservations() may expose internal representation by returning ExcludedObservationMessage.observations |
| EI | org.aavso.tools.vstar.ui.mediator.message.FilteredObservationMessage.getFilteredObs() may expose internal representation by returning FilteredObservationMessage.filteredObs |
| EI | org.aavso.tools.vstar.ui.mediator.message.HarmonicSearchResultMessage.getHarmonics() may expose internal representation by returning HarmonicSearchResultMessage.harmonics |
| EI | org.aavso.tools.vstar.ui.mediator.message.MultipleObservationSelectionMessage.getObservations() may expose internal representation by returning MultipleObservationSelectionMessage.observations |
| EI | org.aavso.tools.vstar.ui.mediator.message.NewStarMessage.getLoadDate() may expose internal representation by returning NewStarMessage.loadDate |
| EI | org.aavso.tools.vstar.ui.mediator.message.NewStarMessage.getObsCategoryMap() may expose internal representation by returning NewStarMessage.obsCategoryMap |
| EI | org.aavso.tools.vstar.ui.mediator.message.NewStarMessage.getObservations() may expose internal representation by returning NewStarMessage.obs |
| EI | org.aavso.tools.vstar.ui.mediator.message.NewStarMessage.getStarInfo() may expose internal representation by returning NewStarMessage.starInfo |
| EI | org.aavso.tools.vstar.ui.mediator.message.ObservationSelectionMessage.getObservation() may expose internal representation by returning ObservationSelectionMessage.observation |
| EI | org.aavso.tools.vstar.ui.mediator.message.PeriodAnalysisRefinementMessage.getNewTopHits() may expose internal representation by returning PeriodAnalysisRefinementMessage.newTopHits |
| EI | org.aavso.tools.vstar.ui.mediator.message.PeriodAnalysisRefinementMessage.getRefinedData() may expose internal representation by returning PeriodAnalysisRefinementMessage.refinedData |
| EI | org.aavso.tools.vstar.ui.mediator.message.PeriodAnalysisRefinementMessage.getRefinedTopHits() may expose internal representation by returning PeriodAnalysisRefinementMessage.refinedTopHits |
| EI | org.aavso.tools.vstar.ui.mediator.message.PhaseChangeMessage.getSeriesVisibilityMap() may expose internal representation by returning PhaseChangeMessage.seriesVisibilityMap |
| EI | org.aavso.tools.vstar.ui.mediator.message.PhaseSelectionMessage.getSeriesVisibilityMap() may expose internal representation by returning PhaseSelectionMessage.seriesVisibilityMap |
| EI | org.aavso.tools.vstar.ui.mediator.message.SeriesCreationMessage.getObs() may expose internal representation by returning SeriesCreationMessage.obs |
| EI | org.aavso.tools.vstar.ui.mediator.message.SeriesVisibilityChangeMessage.getVisibleSeries() may expose internal representation by returning SeriesVisibilityChangeMessage.visibleSeries |
| EI | org.aavso.tools.vstar.ui.model.list.AbstractSyntheticObservationTableModel.getObs() may expose internal representation by returning AbstractSyntheticObservationTableModel.obs |
| EI | org.aavso.tools.vstar.ui.model.list.PeriodAnalysisDataTableModel.getData() may expose internal representation by returning PeriodAnalysisDataTableModel.data |
| EI | org.aavso.tools.vstar.ui.model.list.ValidObservationTableModel.getObsInserter() may expose internal representation by returning ValidObservationTableModel.obsInserter |
| EI | org.aavso.tools.vstar.ui.model.list.ValidObservationTableModel.getObsSourceListMap() may expose internal representation by returning ValidObservationTableModel.obsSourceListMap |
| EI | org.aavso.tools.vstar.ui.model.list.ValidObservationTableModel.getObservations() may expose internal representation by returning ValidObservationTableModel.validObservations |
| EI | org.aavso.tools.vstar.ui.model.list.WWZDataTableModel.getStats() may expose internal representation by returning WWZDataTableModel.stats |
| EI | org.aavso.tools.vstar.ui.model.list.WWZDataTableModel.getWwt() may expose internal representation by returning WWZDataTableModel.wwt |
| EI | org.aavso.tools.vstar.ui.model.plot.ContinuousModelFunction.getFit() may expose internal representation by returning ContinuousModelFunction.fit |
| EI | org.aavso.tools.vstar.ui.model.plot.ContinuousModelFunction.getPpModel() may expose internal representation by returning ContinuousModelFunction.ppModel |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel.getMeanObsList() may expose internal representation by returning ObservationAndMeanPlotModel.meanObsList |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel.getMeansChangeNotifier() may expose internal representation by returning ObservationAndMeanPlotModel.meansChangeNotifier |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel.getTimeElementEntity() may expose internal representation by returning ObservationAndMeanPlotModel.timeElementEntity |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel.getSeriesNumToObSrcListMap() may expose internal representation by returning ObservationPlotModel.seriesNumToObSrcListMap |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel.getSeriesNumToSrcTypeMap() may expose internal representation by returning ObservationPlotModel.seriesNumToSrcTypeMap |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel.getSeriesVisibilityMap() may expose internal representation by returning ObservationPlotModel.seriesVisibilityMap |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel.getSeriesWhoseElementsShouldBeJoinedVisually() may expose internal representation by returning ObservationPlotModel.seriesToBeJoinedVisually |
| EI | org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel.getSrcTypeToSeriesNumMap() may expose internal representation by returning ObservationPlotModel.srcTypeToSeriesNumMap |
| EI | org.aavso.tools.vstar.ui.model.plot.PeriodAnalysis2DPlotModel.getAnalysisValues() may expose internal representation by returning PeriodAnalysis2DPlotModel.analysisValues |
| EI | org.aavso.tools.vstar.ui.model.plot.PeriodAnalysis2DPlotModel.getDomainValues() may expose internal representation by returning PeriodAnalysis2DPlotModel.domainValues |
| EI | org.aavso.tools.vstar.ui.model.plot.PeriodAnalysis2DPlotModel.getRangeValues() may expose internal representation by returning PeriodAnalysis2DPlotModel.rangeValues |
| EI | org.aavso.tools.vstar.ui.model.plot.WWZ2DPlotModel.getStats() may expose internal representation by returning WWZ2DPlotModel.stats |
| EI | org.aavso.tools.vstar.ui.pane.list.ObservationListPane.getInvalidDataTable() may expose internal representation by returning ObservationListPane.invalidDataTable |
| EI | org.aavso.tools.vstar.ui.pane.list.ObservationListPane.getLastObSelected() may expose internal representation by returning ObservationListPane.lastObSelected |
| EI | org.aavso.tools.vstar.ui.pane.list.ObservationListPane.getValidDataTable() may expose internal representation by returning ObservationListPane.validDataTable |
| EI | org.aavso.tools.vstar.ui.pane.list.SyntheticObservationListPane.getLastObSelected() may expose internal representation by returning SyntheticObservationListPane.lastObSelected |
| EI | org.aavso.tools.vstar.ui.pane.list.SyntheticObservationListPane.getObsTable() may expose internal representation by returning SyntheticObservationListPane.obsTable |
| EI | org.aavso.tools.vstar.ui.pane.list.SyntheticObservationListPane.getObsTableModel() may expose internal representation by returning SyntheticObservationListPane.obsTableModel |
| EI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.getChartControlPanel() may expose internal representation by returning AbstractObservationPlotPane.chartControlPanel |
| EI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.getChartPanel() may expose internal representation by returning AbstractObservationPlotPane.chartPanel |
| EI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.getLastObSelected() may expose internal representation by returning AbstractObservationPlotPane.lastObSelected |
| EI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.getLastPointClicked() may expose internal representation by returning AbstractObservationPlotPane.lastPointClicked |
| EI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.getObsInfo() may expose internal representation by returning AbstractObservationPlotPane.obsInfo |
| EI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.getRenderer() may expose internal representation by returning AbstractObservationPlotPane.renderer |
| EI | org.aavso.tools.vstar.ui.pane.plot.ObservationAndMeanPlotPane.getObsModel() may expose internal representation by returning AbstractObservationPlotPane.obsModel |
| EI | org.aavso.tools.vstar.ui.pane.plot.PhaseAndMeanPlotPane.getObsModels() may expose internal representation by returning PhaseAndMeanPlotPane.obsAndMeanModels |
| EI | org.aavso.tools.vstar.ui.resources.StarGroups.getNotifier() may expose internal representation by returning StarGroups.notifier |
| EI | org.aavso.tools.vstar.util.TSBase.getObservations() may expose internal representation by returning TSBase.observations |
| EI | org.aavso.tools.vstar.util.model.AbstractModel.getFit() may expose internal representation by returning AbstractModel.fit |
| EI | org.aavso.tools.vstar.util.model.AbstractModel.getFunctionStrings() may expose internal representation by returning AbstractModel.functionStrMap |
| EI | org.aavso.tools.vstar.util.model.AbstractModel.getResiduals() may expose internal representation by returning AbstractModel.residuals |
| EI | org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel.getFit() may expose internal representation by returning PeriodAnalysisDerivedMultiPeriodicModel.fit |
| EI | org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel.getFunctionStrings() may expose internal representation by returning PeriodAnalysisDerivedMultiPeriodicModel.functionStrMap |
| EI | org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel.getHarmonics() may expose internal representation by returning PeriodAnalysisDerivedMultiPeriodicModel.harmonics |
| EI | org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel.getParameters() may expose internal representation by returning PeriodAnalysisDerivedMultiPeriodicModel.parameters |
| EI | org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel.getResiduals() may expose internal representation by returning PeriodAnalysisDerivedMultiPeriodicModel.residuals |
| EI | org.aavso.tools.vstar.util.model.RelativeAmplitudeAndPhaseCreator.getHarmonicMap() may expose internal representation by returning RelativeAmplitudeAndPhaseCreator.harmonicMap |
| EI | org.aavso.tools.vstar.util.model.TSPolynomialFitter.getFit() may expose internal representation by returning TSPolynomialFitter.fit |
| EI | org.aavso.tools.vstar.util.model.TSPolynomialFitter.getFunctionStrings() may expose internal representation by returning TSPolynomialFitter.functionStrMap |
| EI | org.aavso.tools.vstar.util.model.TSPolynomialFitter.getResiduals() may expose internal representation by returning TSPolynomialFitter.residuals |
| EI | org.aavso.tools.vstar.util.model.WWZMultiperiodicModel.getFit() may expose internal representation by returning WWZMultiperiodicModel.fit |
| EI | org.aavso.tools.vstar.util.model.WWZMultiperiodicModel.getResiduals() may expose internal representation by returning WWZMultiperiodicModel.residuals |
| EI | org.aavso.tools.vstar.util.notification.ListChangeMessage.getSource() may expose internal representation by returning ListChangeMessage.source |
| EI | org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint.getCoordTypes() may expose internal representation by returning PeriodAnalysisDataPoint.coordTypes |
| EI | org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint.getCoords() may expose internal representation by returning PeriodAnalysisDataPoint.coords |
| EI | org.aavso.tools.vstar.util.period.dcdft.TSDcDft.getAdjustedJDs() may expose internal representation by returning org.aavso.tools.vstar.util.TSBase.tvec |
| EI | org.aavso.tools.vstar.util.period.dcdft.TSDcDft.getMags() may expose internal representation by returning org.aavso.tools.vstar.util.TSBase.xvec |
| EI | org.aavso.tools.vstar.util.period.dcdft.TSDcDft.getResultSeries() may expose internal representation by returning TSDcDft.resultSeries |
| EI | org.aavso.tools.vstar.util.period.dcdft.TSDcDft.getTopHits() may expose internal representation by returning TSDcDft.topHits |
| EI | org.aavso.tools.vstar.util.period.dcdft.TSDcDft.getWeights() may expose internal representation by returning org.aavso.tools.vstar.util.TSBase.wvec |
| EI | org.aavso.tools.vstar.util.period.dcdft.TSDcDft.refineByFrequency(List, List, List) may expose internal representation by returning TSDcDft.deltaTopHits |
| EI | org.aavso.tools.vstar.util.period.wwz.WeightedWaveletZTransform.getMaximalStats() may expose internal representation by returning WeightedWaveletZTransform.maximalStats |
| EI | org.aavso.tools.vstar.util.period.wwz.WeightedWaveletZTransform.getObs() may expose internal representation by returning WeightedWaveletZTransform.obs |
| EI | org.aavso.tools.vstar.util.period.wwz.WeightedWaveletZTransform.getStats() may expose internal representation by returning WeightedWaveletZTransform.stats |
| EI | org.aavso.tools.vstar.util.stats.Bin.getMagnitudes() may expose internal representation by returning Bin.magnitudes |
| EI | org.aavso.tools.vstar.util.stats.Bin.getMeanObservation() may expose internal representation by returning Bin.meanObservation |
| EI | org.aavso.tools.vstar.util.stats.BinningResult.getMagnitudeBins() may expose internal representation by returning BinningResult.magnitudeBins |
| EI | org.aavso.tools.vstar.util.stats.BinningResult.getMeanObservations() may expose internal representation by returning BinningResult.meanObservations |
| EI | org.aavso.tools.vstar.vela.AST.getChildren() may expose internal representation by returning AST.children |
| EI | org.aavso.tools.vstar.vela.AST.getOperand() may expose internal representation by returning AST.literal |
| EI | org.aavso.tools.vstar.vela.FunctionExecutor.getParameterTypes() may expose internal representation by returning FunctionExecutor.parameterTypes |
| EI | org.aavso.tools.vstar.vela.Operand.functionVal() may expose internal representation by returning Operand.functionVal |
| EI | org.aavso.tools.vstar.vela.Operand.listVal() may expose internal representation by returning Operand.listVal |
| EI | org.aavso.tools.vstar.vela.VeLaInterpreter.getEnvironments() may expose internal representation by returning VeLaInterpreter.environments |
| EI | org.aavso.tools.vstar.vela.VeLaInterpreter.getStack() may expose internal representation by returning VeLaInterpreter.stack |
| EI | org.aavso.tools.vstar.vela.VeLaScope.getFunctions() may expose internal representation by returning VeLaScope.functions |
| EI2 | org.aavso.tools.vstar.data.ValidObservation.setMagnitude(Magnitude) may expose internal representation by storing an externally mutable object into ValidObservation.magnitude |
| EI2 | new org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher(Object, ObservationMatcherOp, ObservationMatcherOp[]) may expose internal representation by storing an externally mutable object into AbstractObservationFieldMatcher.ops |
| EI2 | org.aavso.tools.vstar.data.filter.AbstractObservationFieldMatcher.setSelectedObservationMessage(ObservationSelectionMessage) may expose internal representation by storing an externally mutable object into AbstractObservationFieldMatcher.observationSelectionMessage |
| EI2 | org.aavso.tools.vstar.data.filter.PhaseFieldMatcher.setSelectedObservationMessage(ObservationSelectionMessage) may expose internal representation by storing an externally mutable object into PhaseFieldMatcher.observationSelectionMessage |
| EI2 | new org.aavso.tools.vstar.data.validation.CommonTextFormatValidator(String, CsvReader, int, int, String, IFieldInfoSource) may expose internal representation by storing an externally mutable object into CommonTextFormatValidator.lineReader |
| EI2 | new org.aavso.tools.vstar.exception.ObservationValidationWarning(String, ValidObservation) may expose internal representation by storing an externally mutable object into ObservationValidationWarning.ob |
| EI2 | new org.aavso.tools.vstar.exception.ObservationValidationWarning(ValidObservation) may expose internal representation by storing an externally mutable object into ObservationValidationWarning.ob |
| EI2 | new org.aavso.tools.vstar.input.database.AuthenticationTask(List, String, String) may expose internal representation by storing an externally mutable object into AuthenticationTask.authenticators |
| EI2 | new org.aavso.tools.vstar.input.text.ObservationFieldSplitter(CsvReader, int, int) may expose internal representation by storing an externally mutable object into ObservationFieldSplitter.lineReader |
| EI2 | new org.aavso.tools.vstar.input.text.ObservationSourceAnalyser(LineNumberReader, String) may expose internal representation by storing an externally mutable object into ObservationSourceAnalyser.obsSource |
| EI2 | new org.aavso.tools.vstar.input.text.TextFormatObservationReader(LineNumberReader, ObservationSourceAnalyser, String) may expose internal representation by storing an externally mutable object into TextFormatObservationReader.reader |
| EI2 | org.aavso.tools.vstar.plugin.ObservationSourcePluginBase.setInputInfo(List, String) may expose internal representation by storing an externally mutable object into ObservationSourcePluginBase.inputStreams |
| EI2 | org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase.setInfo(StarInfo) may expose internal representation by storing an externally mutable object into AIDWebServiceObservationSourcePluginBase.info |
| EI2 | new org.aavso.tools.vstar.plugin.ob.src.impl.NamedNodeMapSequence(NamedNodeMap) may expose internal representation by storing an externally mutable object into NamedNodeMapSequence.nodeMap |
| EI2 | new org.aavso.tools.vstar.ui.MenuBar(IMainUI, UIType) may expose internal representation by storing an externally mutable object into MenuBar.parent |
| EI2 | new org.aavso.tools.vstar.ui.NamedComponent(String, Component) may expose internal representation by storing an externally mutable object into NamedComponent.component |
| EI2 | new org.aavso.tools.vstar.ui.NamedComponent(String, Component, String) may expose internal representation by storing an externally mutable object into NamedComponent.component |
| EI2 | new org.aavso.tools.vstar.ui.ToolBar(MenuBar) may expose internal representation by storing an externally mutable object into ToolBar.menuBar |
| EI2 | new org.aavso.tools.vstar.ui.dialog.FileExtensionFilter(List) may expose internal representation by storing an externally mutable object into FileExtensionFilter.extensions |
| EI2 | new org.aavso.tools.vstar.ui.dialog.ObservationDetailsDialog(ValidObservation) may expose internal representation by storing an externally mutable object into ObservationDetailsDialog.ob |
| EI2 | new org.aavso.tools.vstar.ui.dialog.PlotControlDialog(String, ObservationAndMeanPlotPane, TimeElementsInBinSettingPane, NamedComponent, AnalysisType) may expose internal representation by storing an externally mutable object into PlotControlDialog.plotPane |
| EI2 | new org.aavso.tools.vstar.ui.dialog.PlotControlDialog(String, ObservationAndMeanPlotPane, TimeElementsInBinSettingPane, NamedComponent, AnalysisType) may expose internal representation by storing an externally mutable object into PlotControlDialog.timeElementsInBinSettingPane |
| EI2 | new org.aavso.tools.vstar.ui.dialog.SeriesTypeCreationDialog(List) may expose internal representation by storing an externally mutable object into SeriesTypeCreationDialog.obs |
| EI2 | new org.aavso.tools.vstar.ui.dialog.StarGroupSelectionPane(JTextField, boolean) may expose internal representation by storing an externally mutable object into StarGroupSelectionPane.starField |
| EI2 | new org.aavso.tools.vstar.ui.dialog.model.HarmonicInfoDialog(HarmonicSearchResultMessage, Component) may expose internal representation by storing an externally mutable object into HarmonicInfoDialog.interfaceComponent |
| EI2 | new org.aavso.tools.vstar.ui.dialog.model.HarmonicInfoDialog(HarmonicSearchResultMessage, Component) may expose internal representation by storing an externally mutable object into HarmonicInfoDialog.msg |
| EI2 | new org.aavso.tools.vstar.ui.dialog.model.HarmonicInputDialog(Component, List, Map, String) may expose internal representation by storing an externally mutable object into HarmonicInputDialog.freqToHarmonics |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DChartPane(JFreeChart, PeriodAnalysis2DPlotModel, boolean) may expose internal representation by storing an externally mutable object into PeriodAnalysis2DChartPane.chart |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DChartPane(JFreeChart, PeriodAnalysis2DPlotModel, boolean) may expose internal representation by storing an externally mutable object into PeriodAnalysis2DChartPane.model |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysisDataTablePane(PeriodAnalysisDataTableModel, IPeriodAnalysisAlgorithm, boolean) may expose internal representation by storing an externally mutable object into PeriodAnalysisDataTablePane.model |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.wwz.WWZDataTablePane(WWZDataTableModel) may expose internal representation by storing an externally mutable object into WWZDataTablePane.model |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.wwz.WWZPlotPane(JFreeChart, WWZ2DPlotModel, double, double) may expose internal representation by storing an externally mutable object into WWZPlotPane.chart |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.wwz.WWZPlotPane(JFreeChart, WWZ2DPlotModel, double, double) may expose internal representation by storing an externally mutable object into WWZPlotPane.model |
| EI2 | new org.aavso.tools.vstar.ui.dialog.period.wwz.WeightedWaveletZTransformResultDialog(String, String, WeightedWaveletZTransform, WWZCoordinateType) may expose internal representation by storing an externally mutable object into WeightedWaveletZTransformResultDialog.wwt |
| EI2 | new org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManagementDialog(PluginManager) may expose internal representation by storing an externally mutable object into PluginManagementDialog.manager |
| EI2 | new org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManagementOperation(PluginManager, String) may expose internal representation by storing an externally mutable object into PluginManagementOperation.manager |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.AbstractSeriesVisibilityDialog(ISeriesInfoProvider, String, JPanel) may expose internal representation by storing an externally mutable object into AbstractSeriesVisibilityDialog.nextPane |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.MeanSourcePane(ObservationAndMeanPlotModel, ObservationAndMeanPlotPane) may expose internal representation by storing an externally mutable object into MeanSourcePane.obsPlotModel |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.MeanSourcePane(ObservationAndMeanPlotModel, ObservationAndMeanPlotPane) may expose internal representation by storing an externally mutable object into MeanSourcePane.obsPlotPane |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.MultipleSeriesSelectionDialog(SeriesVisibilityPane) may expose internal representation by storing an externally mutable object into MultipleSeriesSelectionDialog.seriesVisibilityPane |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.SeriesVisibilityPane(ObservationAndMeanPlotModel, AnalysisType, boolean, boolean, boolean) may expose internal representation by storing an externally mutable object into SeriesVisibilityPane.obsPlotModel |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.SingleSeriesSelectionDialog(ObservationAndMeanPlotModel) may expose internal representation by storing an externally mutable object into SingleSeriesSelectionDialog.obsPlotModel |
| EI2 | new org.aavso.tools.vstar.ui.dialog.series.SingleSeriesSelectionPane(ObservationAndMeanPlotModel) may expose internal representation by storing an externally mutable object into SingleSeriesSelectionPane.obsPlotModel |
| EI2 | new org.aavso.tools.vstar.ui.mediator.StarInfo(AbstractObservationRetriever, String, String, Double, Double, String, String, String, RAInfo, DecInfo, Integer) may expose internal representation by storing an externally mutable object into StarInfo.retriever |
| EI2 | org.aavso.tools.vstar.ui.mediator.StarInfo.setRetriever(AbstractObservationRetriever) may expose internal representation by storing an externally mutable object into StarInfo.retriever |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.AnalysisTypeChangeMessage(AnalysisType, ObservationAndMeanPlotPane, ObservationListPane, SyntheticObservationListPane, ViewModeType) may expose internal representation by storing an externally mutable object into AnalysisTypeChangeMessage.meansListPane |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.AnalysisTypeChangeMessage(AnalysisType, ObservationAndMeanPlotPane, ObservationListPane, SyntheticObservationListPane, ViewModeType) may expose internal representation by storing an externally mutable object into AnalysisTypeChangeMessage.obsAndMeanChartPane |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.AnalysisTypeChangeMessage(AnalysisType, ObservationAndMeanPlotPane, ObservationListPane, SyntheticObservationListPane, ViewModeType) may expose internal representation by storing an externally mutable object into AnalysisTypeChangeMessage.obsListPane |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.DiscrepantObservationMessage(ValidObservation, Object) may expose internal representation by storing an externally mutable object into DiscrepantObservationMessage.observation |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.ExcludedObservationMessage(List, Object) may expose internal representation by storing an externally mutable object into ExcludedObservationMessage.observations |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.HarmonicSearchResultMessage(Object, List, IPeriodAnalysisDatum, double) may expose internal representation by storing an externally mutable object into HarmonicSearchResultMessage.harmonics |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.MultipleObservationSelectionMessage(List, Object) may expose internal representation by storing an externally mutable object into MultipleObservationSelectionMessage.observations |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.NewStarMessage(NewStarType, StarInfo, List, Map, double, double, String) may expose internal representation by storing an externally mutable object into NewStarMessage.obs |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.NewStarMessage(NewStarType, StarInfo, List, Map, double, double, String) may expose internal representation by storing an externally mutable object into NewStarMessage.obsCategoryMap |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.NewStarMessage(NewStarType, StarInfo, List, Map, double, double, String) may expose internal representation by storing an externally mutable object into NewStarMessage.starInfo |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.ObservationSelectionMessage(ValidObservation, Object) may expose internal representation by storing an externally mutable object into ObservationSelectionMessage.observation |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.PeriodAnalysisRefinementMessage(Object, Map, Map, List) may expose internal representation by storing an externally mutable object into PeriodAnalysisRefinementMessage.newTopHits |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.PeriodAnalysisRefinementMessage(Object, Map, Map, List) may expose internal representation by storing an externally mutable object into PeriodAnalysisRefinementMessage.refinedData |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.PeriodAnalysisRefinementMessage(Object, Map, Map, List) may expose internal representation by storing an externally mutable object into PeriodAnalysisRefinementMessage.refinedTopHits |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.PhaseChangeMessage(Object, double, double, Map) may expose internal representation by storing an externally mutable object into PhaseChangeMessage.seriesVisibilityMap |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.PhaseSelectionMessage(Object, double, double, Map) may expose internal representation by storing an externally mutable object into PhaseSelectionMessage.seriesVisibilityMap |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.SeriesCreationMessage(Object, SeriesType, List) may expose internal representation by storing an externally mutable object into SeriesCreationMessage.obs |
| EI2 | new org.aavso.tools.vstar.ui.mediator.message.SeriesVisibilityChangeMessage(Object, Set) may expose internal representation by storing an externally mutable object into SeriesVisibilityChangeMessage.visibleSeries |
| EI2 | new org.aavso.tools.vstar.ui.model.list.AbstractSyntheticObservationTableModel(List) may expose internal representation by storing an externally mutable object into AbstractSyntheticObservationTableModel.obs |
| EI2 | new org.aavso.tools.vstar.ui.model.list.InvalidObservationTableModel(List) may expose internal representation by storing an externally mutable object into InvalidObservationTableModel.invalidObservations |
| EI2 | new org.aavso.tools.vstar.ui.model.list.PeriodAnalysisDataTableModel(PeriodAnalysisCoordinateType[], Map) may expose internal representation by storing an externally mutable object into PeriodAnalysisDataTableModel.columnTypes |
| EI2 | new org.aavso.tools.vstar.ui.model.list.PeriodAnalysisDataTableModel(PeriodAnalysisCoordinateType[], Map) may expose internal representation by storing an externally mutable object into PeriodAnalysisDataTableModel.data |
| EI2 | org.aavso.tools.vstar.ui.model.list.PeriodAnalysisDataTableModel.setData(Map) may expose internal representation by storing an externally mutable object into PeriodAnalysisDataTableModel.data |
| EI2 | new org.aavso.tools.vstar.ui.model.list.ValidObservationTableModel(Map, List, ITableColumnInfoSource) may expose internal representation by storing an externally mutable object into ValidObservationTableModel.obsSourceListMap |
| EI2 | new org.aavso.tools.vstar.ui.model.list.WWZDataTableModel(List, WeightedWaveletZTransform) may expose internal representation by storing an externally mutable object into WWZDataTableModel.stats |
| EI2 | new org.aavso.tools.vstar.ui.model.list.WWZDataTableModel(List, WeightedWaveletZTransform) may expose internal representation by storing an externally mutable object into WWZDataTableModel.wwt |
| EI2 | new org.aavso.tools.vstar.ui.model.plot.ContinuousModelFunction(UnivariateRealFunction, List, double, ICoordSource) may expose internal representation by storing an externally mutable object into ContinuousModelFunction.fit |
| EI2 | org.aavso.tools.vstar.ui.model.plot.ContinuousModelFunction.setPpModel(PhasedObservationAndMeanPlotModel) may expose internal representation by storing an externally mutable object into ContinuousModelFunction.ppModel |
| EI2 | new org.aavso.tools.vstar.ui.model.plot.ContinuousModelPlotModel(ContinuousModelFunction) may expose internal representation by storing an externally mutable object into ContinuousModelPlotModel.modelFunction |
| EI2 | new org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel(Map, ICoordSource, Comparator, ITimeElementEntity, Map) may expose internal representation by storing an externally mutable object into ObservationAndMeanPlotModel.timeElementEntity |
| EI2 | new org.aavso.tools.vstar.ui.model.plot.PeriodAnalysis2DPlotModel(Map, PeriodAnalysisCoordinateType, PeriodAnalysisCoordinateType, boolean) may expose internal representation by storing an externally mutable object into PeriodAnalysis2DPlotModel.analysisValues |
| EI2 | new org.aavso.tools.vstar.ui.model.plot.PhasedObservationAndMeanPlotModel(Map, ICoordSource, Comparator, ITimeElementEntity, Map, ContinuousModelFunction, int) may expose internal representation by storing an externally mutable object into PhasedObservationAndMeanPlotModel.modelFunction |
| EI2 | new org.aavso.tools.vstar.ui.model.plot.WWZ2DPlotModel(List, WWZCoordinateType, WWZCoordinateType) may expose internal representation by storing an externally mutable object into WWZ2DPlotModel.stats |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.ListSearchPane(AbstractTableModel, TableRowSorter) may expose internal representation by storing an externally mutable object into ListSearchPane.rowSorter |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.ObservationListPane(String, ValidObservationTableModel, InvalidObservationTableModel, boolean, Set, AnalysisType) may expose internal representation by storing an externally mutable object into ObservationListPane.validDataModel |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.SyntheticObservationListPane(AbstractSyntheticObservationTableModel, String) may expose internal representation by storing an externally mutable object into SyntheticObservationListPane.obsTableModel |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.VeLaListSearchPane(ValidObservationTableModel, TableRowSorter) may expose internal representation by storing an externally mutable object into VeLaListSearchPane.model |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.VeLaListSearchPane(ValidObservationTableModel, TableRowSorter) may expose internal representation by storing an externally mutable object into VeLaListSearchPane.rowSorter |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.VisibleSeriesRowFilter(ValidObservationTableModel, Set, AnalysisType) may expose internal representation by storing an externally mutable object into VisibleSeriesRowFilter.tableModel |
| EI2 | new org.aavso.tools.vstar.ui.pane.list.VisibleSeriesRowFilter(ValidObservationTableModel, Set, AnalysisType) may expose internal representation by storing an externally mutable object into VisibleSeriesRowFilter.visibleSeries |
| EI2 | new org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane(String, String, String, String, ObservationAndMeanPlotModel, Dimension, AbstractObservationRetriever) may expose internal representation by storing an externally mutable object into AbstractObservationPlotPane.bounds |
| EI2 | new org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane(String, String, String, String, ObservationAndMeanPlotModel, Dimension, AbstractObservationRetriever) may expose internal representation by storing an externally mutable object into AbstractObservationPlotPane.obsModel |
| EI2 | new org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane(String, String, String, String, ObservationAndMeanPlotModel, Dimension, AbstractObservationRetriever) may expose internal representation by storing an externally mutable object into AbstractObservationPlotPane.retriever |
| EI2 | new org.aavso.tools.vstar.ui.pane.plot.PhaseAndMeanPlotPane(String, String, Dimension, double, double, AbstractObservationRetriever, PhasedObservationAndMeanPlotModel[]) may expose internal representation by storing an externally mutable object into PhaseAndMeanPlotPane.obsAndMeanModels |
| EI2 | new org.aavso.tools.vstar.ui.pane.plot.TimeElementsInBinSettingPane(String, ObservationAndMeanPlotPane, ITimeElementEntity) may expose internal representation by storing an externally mutable object into TimeElementsInBinSettingPane.plotPane |
| EI2 | new org.aavso.tools.vstar.ui.pane.plot.TimeElementsInBinSettingPane(String, ObservationAndMeanPlotPane, ITimeElementEntity) may expose internal representation by storing an externally mutable object into TimeElementsInBinSettingPane.timeElementEntity |
| EI2 | new org.aavso.tools.vstar.ui.task.NewStarFromObSourcePluginTask(ObservationSourcePluginBase) may expose internal representation by storing an externally mutable object into NewStarFromObSourcePluginTask.obSourcePlugin |
| EI2 | new org.aavso.tools.vstar.ui.task.NewStarFromObSourcePluginWithSuppliedFileTask(ObservationSourcePluginBase, File, boolean) may expose internal representation by storing an externally mutable object into NewStarFromObSourcePluginWithSuppliedFileTask.obSourcePlugin |
| EI2 | new org.aavso.tools.vstar.ui.task.NewStarFromObSourcePluginWithSuppliedURLTask(ObservationSourcePluginBase, URL, boolean) may expose internal representation by storing an externally mutable object into NewStarFromObSourcePluginWithSuppliedURLTask.obSourcePlugin |
| EI2 | new org.aavso.tools.vstar.ui.task.ObsListFileSaveTask(ObservationSinkPluginBase, List, File, String) may expose internal representation by storing an externally mutable object into ObsListFileSaveTask.observations |
| EI2 | new org.aavso.tools.vstar.ui.task.ObsListFileSaveTask(ObservationSinkPluginBase, List, File, String) may expose internal representation by storing an externally mutable object into ObsListFileSaveTask.plugin |
| EI2 | new org.aavso.tools.vstar.ui.task.PeriodAnalysisTask(PeriodAnalysisPluginBase, SeriesType, List) may expose internal representation by storing an externally mutable object into PeriodAnalysisTask.obs |
| EI2 | new org.aavso.tools.vstar.ui.task.PeriodAnalysisTask(PeriodAnalysisPluginBase, SeriesType, List) may expose internal representation by storing an externally mutable object into PeriodAnalysisTask.periodAnalysisPlugin |
| EI2 | new org.aavso.tools.vstar.ui.task.PhasePlotTask(double, double, Map) may expose internal representation by storing an externally mutable object into PhasePlotTask.seriesVisibilityMap |
| EI2 | new org.aavso.tools.vstar.ui.undo.ObservationExclusionAction(List, boolean) may expose internal representation by storing an externally mutable object into ObservationExclusionAction.obs |
| EI2 | new org.aavso.tools.vstar.util.AbstractExtremaFinder(List, UnivariateRealFunction, ICoordSource, double) may expose internal representation by storing an externally mutable object into AbstractExtremaFinder.obs |
| EI2 | new org.aavso.tools.vstar.util.TSBase(List) may expose internal representation by storing an externally mutable object into TSBase.observations |
| EI2 | new org.aavso.tools.vstar.util.model.AbstractModel(List) may expose internal representation by storing an externally mutable object into AbstractModel.obs |
| EI2 | new org.aavso.tools.vstar.util.model.PeriodAnalysisDerivedMultiPeriodicModel(PeriodAnalysisDataPoint, List, IPeriodAnalysisAlgorithm) may expose internal representation by storing an externally mutable object into PeriodAnalysisDerivedMultiPeriodicModel.harmonics |
| EI2 | new org.aavso.tools.vstar.util.model.WWZMultiperiodicModel(WeightedWaveletZTransform, List) may expose internal representation by storing an externally mutable object into WWZMultiperiodicModel.periods |
| EI2 | new org.aavso.tools.vstar.util.model.WWZMultiperiodicModel(WeightedWaveletZTransform, List) may expose internal representation by storing an externally mutable object into WWZMultiperiodicModel.wwt |
| EI2 | new org.aavso.tools.vstar.util.notification.ListChangeMessage(ListChangeType, List, int, Object) may expose internal representation by storing an externally mutable object into ListChangeMessage.source |
| EI2 | new org.aavso.tools.vstar.util.notification.NotifyingArrayList(ArrayList) may expose internal representation by storing an externally mutable object into NotifyingArrayList.list |
| EI2 | new org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint(PeriodAnalysisCoordinateType[], double[]) may expose internal representation by storing an externally mutable object into PeriodAnalysisDataPoint.coordTypes |
| EI2 | new org.aavso.tools.vstar.util.period.wwz.WeightedWaveletZTransform(List, double, double) may expose internal representation by storing an externally mutable object into WeightedWaveletZTransform.obs |
| EI2 | new org.aavso.tools.vstar.util.property.ApplicationProperties(MainFrame) may expose internal representation by storing an externally mutable object into ApplicationProperties.frame |
| EI2 | new org.aavso.tools.vstar.util.stats.Bin(ValidObservation, double[]) may expose internal representation by storing an externally mutable object into Bin.magnitudes |
| EI2 | new org.aavso.tools.vstar.util.stats.Bin(ValidObservation, double[]) may expose internal representation by storing an externally mutable object into Bin.meanObservation |
| EI2 | new org.aavso.tools.vstar.util.stats.BinningResult(SeriesType, int, List, List) may expose internal representation by storing an externally mutable object into BinningResult.magnitudeBins |
| EI2 | new org.aavso.tools.vstar.util.stats.BinningResult(SeriesType, int, List, List) may expose internal representation by storing an externally mutable object into BinningResult.meanObservations |
| EI2 | new org.aavso.tools.vstar.vela.AST(String, Operand) may expose internal representation by storing an externally mutable object into AST.literal |
| EI2 | new org.aavso.tools.vstar.vela.ExpressionVisitor(VeLaInterpreter) may expose internal representation by storing an externally mutable object into ExpressionVisitor.interpreter |
| EI2 | new org.aavso.tools.vstar.vela.FunctionExecutor(Optional, List, List, Optional, Optional) may expose internal representation by storing an externally mutable object into FunctionExecutor.parameterNames |
| EI2 | new org.aavso.tools.vstar.vela.FunctionExecutor(Optional, List, List, Optional, Optional) may expose internal representation by storing an externally mutable object into FunctionExecutor.parameterTypes |
| EI2 | new org.aavso.tools.vstar.vela.JavaMethodExecutor(Object, Method, Optional, List, List, Optional, Optional) may expose internal representation by storing an externally mutable object into JavaMethodExecutor.method |
| EI2 | new org.aavso.tools.vstar.vela.Operand(Type, List) may expose internal representation by storing an externally mutable object into Operand.listVal |
| EI2 | new org.aavso.tools.vstar.vela.Operand(Type, FunctionExecutor) may expose internal representation by storing an externally mutable object into Operand.functionVal |
| EI2 | org.aavso.tools.vstar.vela.Operand.setFunctionVal(FunctionExecutor) may expose internal representation by storing an externally mutable object into Operand.functionVal |
| EI2 | org.aavso.tools.vstar.vela.Operand.setListVal(List) may expose internal representation by storing an externally mutable object into Operand.listVal |
| EI2 | new org.aavso.tools.vstar.vela.UserDefinedFunctionExecutor(VeLaInterpreter, Optional, List, List, Optional, Optional, Optional) may expose internal representation by storing an externally mutable object into UserDefinedFunctionExecutor.vela |
| EI2 | new org.aavso.tools.vstar.vela.VeLaEnvironment(Map, Set) may expose internal representation by storing an externally mutable object into VeLaEnvironment.cache |
| EI2 | new org.aavso.tools.vstar.vela.VeLaEnvironment(Map, Set) may expose internal representation by storing an externally mutable object into VeLaEnvironment.constants |
| EI2 | new org.aavso.tools.vstar.vela.VeLaInterpreter(boolean, boolean, List) may expose internal representation by storing an externally mutable object into VeLaInterpreter.sourceDirectories |
| EI2 | new org.aavso.tools.vstar.vela.VeLaValidObservationEnvironment(ValidObservation) may expose internal representation by storing an externally mutable object into VeLaValidObservationEnvironment.ob |
| MS | Public static org.aavso.tools.vstar.data.SeriesType.getSeriesColorChangeNotifier() may expose internal representation by returning SeriesType.seriesColorChangeNotifier |
| MS | Public static org.aavso.tools.vstar.data.SeriesType.getSeriesSizeChangeNotifier() may expose internal representation by returning SeriesType.seriesSizeChangeNotifier |
| MS | Public static org.aavso.tools.vstar.data.SeriesType.values() may expose internal representation by returning SeriesType.values |
| MS | Public static org.aavso.tools.vstar.data.ValidObservation.getDetailTitles() may expose internal representation by returning ValidObservation.detailTitles |
| MS | Public static org.aavso.tools.vstar.data.ValidObservation.getDetailTypes() may expose internal representation by returning ValidObservation.detailTypes |
| MS | Public static org.aavso.tools.vstar.data.ValidObservation.getStandardDetailKeys() may expose internal representation by returning ValidObservation.standardDetailKeys |
| MS | org.aavso.tools.vstar.data.filter.DoubleFieldMatcher.ops should be package protected |
| MS | org.aavso.tools.vstar.data.filter.ObservationFilter.MATCHERS is a mutable collection |
| MS | org.aavso.tools.vstar.plugin.ob.sink.impl.CommonTextFormatSinkPluginBase.DELIMS is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.plugin.ob.sink.impl.CommonTextFormatSinkPluginBase.SUFFIXES is a mutable collection which should be package protected |
| MS | Public static org.aavso.tools.vstar.scripting.ScriptRunner.getInstance() may expose internal representation by returning ScriptRunner.instance |
| MS | Public static org.aavso.tools.vstar.scripting.VStarScriptingAPI.getInstance() may expose internal representation by returning VStarScriptingAPI.instance |
| MS | org.aavso.tools.vstar.ui.MenuBar.minimalUIExclusions is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.ui.VStar.LOGGER isn't final but should be |
| MS | Public static org.aavso.tools.vstar.ui.dialog.StarSelectorDialog.getInstance() may expose internal representation by returning StarSelectorDialog.instance |
| MS | Public static org.aavso.tools.vstar.ui.dialog.prefs.PreferencesDialog.getInstance() may expose internal representation by returning PreferencesDialog.instance |
| MS | Public static org.aavso.tools.vstar.ui.mediator.Mediator.getInstance() may expose internal representation by returning Mediator.mediator |
| MS | Public static org.aavso.tools.vstar.ui.mediator.Mediator.getUI() may expose internal representation by returning Mediator.ui |
| MS | org.aavso.tools.vstar.ui.mediator.message.ProgressInfo.BUSY_PROGRESS isn't final but should be |
| MS | org.aavso.tools.vstar.ui.mediator.message.ProgressInfo.CLEAR_PROGRESS isn't final but should be |
| MS | org.aavso.tools.vstar.ui.mediator.message.ProgressInfo.COMPLETE_PROGRESS isn't final but should be |
| MS | org.aavso.tools.vstar.ui.mediator.message.ProgressInfo.INCREMENT_PROGRESS isn't final but should be |
| MS | org.aavso.tools.vstar.ui.mediator.message.ProgressInfo.START_PROGRESS isn't final but should be |
| MS | org.aavso.tools.vstar.ui.model.list.AAVSOFormatRawDataColumnInfoSource.COLUMN_NAMES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.ui.model.list.ArbitraryFormatRawDataColumnInfoSource.COLUMN_NAMES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.ui.model.list.SimpleFormatRawDataColumnInfoSource.COLUMN_NAMES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.ui.model.plot.JDCoordSource.instance isn't final but should be |
| MS | org.aavso.tools.vstar.ui.model.plot.PreviousCyclePhaseCoordSource.instance isn't final but should be |
| MS | org.aavso.tools.vstar.ui.model.plot.StandardPhaseCoordSource.instance isn't final but should be |
| MS | org.aavso.tools.vstar.ui.pane.plot.PhaseAndMeanPlotPane.PHASE isn't final but should be |
| MS | Public static org.aavso.tools.vstar.ui.resources.ResourceAccessor.getLoginInfo() may expose internal representation by returning ResourceAccessor.loginInfo |
| MS | Public static org.aavso.tools.vstar.ui.resources.StarGroups.getInstance() may expose internal representation by returning StarGroups.instance |
| MS | org.aavso.tools.vstar.util.comparator.JDComparator.instance isn't final but should be |
| MS | org.aavso.tools.vstar.util.notification.ListChangeMessage.NONE isn't final but should be |
| MS | org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint.DCDFT_COORD_TYPES should be package protected |
| MS | org.aavso.tools.vstar.util.prefs.ChartPropertiesPrefs.MAX_PNG_SCALE_FACTOR isn't final but should be |
| MS | org.aavso.tools.vstar.util.prefs.ChartPropertiesPrefs.MIN_PNG_SCALE_FACTOR isn't final but should be |
| MS | org.aavso.tools.vstar.util.stats.PhaseCalcs.epochStrategyMap isn't final but should be |
| MS | org.aavso.tools.vstar.vela.FunctionExecutor.ANY_FORMAL_NAMES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.vela.FunctionExecutor.ANY_FORMAL_TYPES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.vela.FunctionExecutor.NO_FORMAL_NAMES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.vela.FunctionExecutor.NO_FORMAL_TYPES is a mutable collection which should be package protected |
| MS | org.aavso.tools.vstar.vela.Operand.EMPTY_LIST isn't final but should be |
| MS | org.aavso.tools.vstar.vela.Operand.NO_VALUE isn't final but should be |
| MS | org.aavso.tools.vstar.vela.VeLaLexer.modeNames should be both final and package protected |
| MS | org.aavso.tools.vstar.vela.VeLaLexer._decisionToDFA should be package protected |
| MS | org.aavso.tools.vstar.vela.VeLaLexer.ruleNames should be package protected |
| MS | org.aavso.tools.vstar.vela.VeLaLexer.tokenNames should be package protected |
| MS | org.aavso.tools.vstar.vela.VeLaParser._decisionToDFA should be package protected |
| MS | org.aavso.tools.vstar.vela.VeLaParser.ruleNames should be package protected |
| MS | org.aavso.tools.vstar.vela.VeLaParser.tokenNames should be package protected |
| Code | Warning |
|---|---|
| AT | Shared primitive variable "obsTextProvided" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "cancelled" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "obsCount" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "successful" in one thread may not yield the value of the most recent write from another thread |
| AT | This write of the 64-bit primitive variable "maxAmp" may not atomic |
| AT | This write of the 64-bit primitive variable "maxPeriod" may not atomic |
| AT | This write of the 64-bit primitive variable "maxWWZ" may not atomic |
| AT | This write of the 64-bit primitive variable "minAmp" may not atomic |
| AT | This write of the 64-bit primitive variable "minPeriod" may not atomic |
| AT | This write of the 64-bit primitive variable "minWWZ" may not atomic |
| AT | This write of the 64-bit primitive variable "fhi" may not atomic |
| AT | This write of the 64-bit primitive variable "flo" may not atomic |
| AT | This write of the 64-bit primitive variable "fhi" may not atomic |
| AT | This write of the 64-bit primitive variable "flo" may not atomic |
| AT | This write of the 64-bit primitive variable "maxPeriod" may not atomic |
| AT | This write of the 64-bit primitive variable "minPeriod" may not atomic |
| AT | Operation on the "ntau" shared variable in "WeightedWaveletZTransform" class is not atomic |
| AT | Shared primitive variable "numdat" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "nfreq" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "nfreq" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "ntau" in one thread may not yield the value of the most recent write from another thread |
| AT | Shared primitive variable "threadCount" in one thread may not yield the value of the most recent write from another thread |
| LI | Incorrect lazy initialization of static field org.aavso.tools.vstar.scripting.VStarScriptingAPI.instance in org.aavso.tools.vstar.scripting.VStarScriptingAPI.getInstance() |
| SWL | org.aavso.tools.vstar.scripting.VStarScriptingAPI.pause(long) calls Thread.sleep() with a lock held |
| Code | Warning |
|---|---|
| Dm | new org.aavso.tools.vstar.data.CommentCodes(String) invokes inefficient new String() constructor |
| Dm | org.aavso.tools.vstar.input.database.Authenticator.authenticate() invokes inefficient new String(String) constructor |
| Dm | org.aavso.tools.vstar.ui.mediator.Mediator.createNewStarObservationArtefacts(NewStarType, StarInfo, int, boolean) forces garbage collection; extremely dubious except in benchmarking code |
| SBSC | org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase.getInputName() concatenates strings using + in a loop |
| SBSC | org.aavso.tools.vstar.scripting.VStarScriptingAPI.getSeries() concatenates strings using + in a loop |
| SBSC | org.aavso.tools.vstar.ui.dialog.MultiEntryComponentDialog.okAction() concatenates strings using + in a loop |
| SBSC | org.aavso.tools.vstar.ui.dialog.model.HarmonicInfoDialog$3.actionPerformed(ActionEvent) concatenates strings using + in a loop |
| SBSC | org.aavso.tools.vstar.ui.task.NewStarFromObSourcePluginTask.configure() concatenates strings using + in a loop |
| SBSC | org.aavso.tools.vstar.util.model.RelativeAmplitudeAndPhaseCreator.getRelativeSequenceString(double, int, boolean) concatenates strings using + in a loop |
| SIC | Should org.aavso.tools.vstar.ui.dialog.DateToJdDialog$DoubleFieldSeconds be a _static_ inner class? |
| SIC | Should org.aavso.tools.vstar.ui.dialog.prefs.ChartPropertiesSelectionPane$ChartFontLabel be a _static_ inner class? |
| SIC | Should org.aavso.tools.vstar.ui.dialog.prefs.ChartPropertiesSelectionPane$ColorRectComponent be a _static_ inner class? |
| SIC | Should org.aavso.tools.vstar.ui.dialog.prefs.ChartPropertiesSelectionPane$FontDialog be a _static_ inner class? |
| SIC | Should org.aavso.tools.vstar.ui.dialog.prefs.SeriesSizeSelectionPane$DotComponent be a _static_ inner class? |
| SIC | Should org.aavso.tools.vstar.util.period.dcdft.TSDcDft$ResolutionResult be a _static_ inner class? |
| SS | Unread field: org.aavso.tools.vstar.data.validation.JulianDayValidator.pattern; should this field be static? |
| SS | Unread field: org.aavso.tools.vstar.data.validation.MagnitudeFieldValidator.MAG_INDEX; should this field be static? |
| SS | Unread field: org.aavso.tools.vstar.data.validation.MagnitudeFieldValidator.MAG_MODIFIER_INDEX; should this field be static? |
| SS | Unread field: org.aavso.tools.vstar.data.validation.MagnitudeFieldValidator.UNCERTAINTY_INDEX; should this field be static? |
| SS | Unread field: org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManagementDialog.DIALOG_TITLE; should this field be static? |
| SS | Unread field: org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManagementDialog.DIALOG_TITLE_MOD; should this field be static? |
| WMI | org.aavso.tools.vstar.data.SeriesType.updateSeriesColorMap(Map) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.data.SeriesType.updateSeriesSizeMap(Map) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.data.ValidObservation.toString() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase.getURLs() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.dialog.InfoDialog.createInfoPanel(List) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | new org.aavso.tools.vstar.ui.dialog.prefs.LocaleSelectionPane() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.dialog.series.SeriesVisibilityPane.seriesVisibilityChange(Map) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.mediator.Mediator.createPhasePlotArtefacts(double, double, Map) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.mediator.message.PhaseChangeMessage.toString() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.model.plot.ObservationAndMeanPlotModel.determineMeanSeriesSource() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | new org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel(Map, ICoordSource, Comparator) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | new org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel(Map, ICoordSource, Comparator, Map) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.model.plot.ObservationPlotModel.getVisibleSeries() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.seriesVisibilityChange(Map) makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.setMagScale() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.setSeriesColors() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.setSeriesSizes() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.setSeriesVisibility() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.resources.StarGroups.createStarGroupPrefsValue() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.ui.resources.StarGroups.createStarGroupPrefsValue() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.util.model.RelativeAmplitudeAndPhaseCreator.hasHarmonics() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.util.period.dcdft.PeriodAnalysisDataPoint.toString() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.vela.VeLaEnvironment.toString() makes inefficient use of keySet iterator instead of entrySet iterator |
| WMI | org.aavso.tools.vstar.vela.VeLaInterpreter$3.apply(List) makes inefficient use of keySet iterator instead of entrySet iterator |
| Code | Warning |
|---|---|
| DLS | Dead store to starName in org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase.getURLs() |
| DLS | Dead store to lastGroup in org.aavso.tools.vstar.ui.MenuBar.createAnalysisMenu() |
| DLS | Dead store to statsTextArea in org.aavso.tools.vstar.ui.dialog.InfoDialog.createInfoPanel(List) |
| DLS | Dead store to jda in org.aavso.tools.vstar.util.TSBase.load_raw() |
| DLS | Dead store to jdb in org.aavso.tools.vstar.util.TSBase.load_raw() |
| DLS | Dead store to damplit in org.aavso.tools.vstar.util.period.dcdft.TSDcDft.dcdftCommon() |
| DLS | Dead store to hiper in org.aavso.tools.vstar.util.period.dcdft.TSDcDft.frequency_range() |
| DLS | Dead store to nnn in org.aavso.tools.vstar.util.period.dcdft.TSDcDft.multiPeriodicFit(List, PeriodAnalysisDerivedMultiPeriodicModel) |
| DLS | Dead store to xlofre in org.aavso.tools.vstar.util.period.dcdft.TSDcDft.period_range() |
| DLS | Dead store to parameterNames in new org.aavso.tools.vstar.vela.JavaMethodExecutor(Object, Method, Optional, List, List, Optional, Optional) |
| FE | Test for floating point equality in org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.setMagScale() |
| FE | Test for floating point equality in org.aavso.tools.vstar.util.model.Harmonic.isHarmonic(Harmonic) |
| IA | Potentially ambiguous invocation of either an outer or inherited method org.aavso.tools.vstar.ui.dialog.AbstractOkCancelDialog.createButtonPane() in new org.aavso.tools.vstar.ui.dialog.prefs.ChartPropertiesSelectionPane$FontDialog(ChartPropertiesSelectionPane, Font) |
| ICAST | Integral division result cast to double or float in new org.aavso.tools.vstar.ui.model.plot.ContinuousModelPlotModel(ContinuousModelFunction) |
| ICAST | Integral division result cast to double or float in org.aavso.tools.vstar.ui.pane.plot.VStarPlotDataRenderer.setSeriesSize(int, int) |
| NP | Load of known null value in org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceObservationSourcePluginBase.getMType(String) |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.deleteAllPlugins() due to return value of called method |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.deleteAllPlugins() due to return value of called method |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.retrieveLocalPluginInfo() due to return value of called method |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.ui.dialog.plugin.manager.PluginManager.retrieveLocalPluginInfo() due to return value of called method |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.ui.resources.PluginLoader.loadPlugins() due to return value of called method |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.ui.resources.PluginLoader.loadPlugins() due to return value of called method |
| NP | Possible null pointer dereference in org.aavso.tools.vstar.vela.VeLaInterpreter.loadUserCode() due to return value of called method |
| RCN | Redundant nullcheck of id, which is known to be non-null in org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceCSVObservationSourcePlugin$VSXCSVObservationRetriever.retrieveNextObservation(CsvReader) |
| RCN | Redundant nullcheck of id, which is known to be non-null in org.aavso.tools.vstar.plugin.ob.src.impl.AIDWebServiceXMLAttributeObservationSourcePlugin$VSXAIDAttributeObservationRetriever.retrieveObservation(INodeSequence) |
| RCN | Redundant nullcheck of org.aavso.tools.vstar.ui.ToolBar.newStarFromDatabaseIcon, which is known to be non-null in org.aavso.tools.vstar.ui.ToolBar.retrieveToolBarIcons() |
| REC | Exception is caught when Exception is not thrown in org.aavso.tools.vstar.ui.VStar.<static initializer for VStar>() |
| REC | Exception is caught when Exception is not thrown in org.aavso.tools.vstar.vela.Operand.object2Operand(Type, Object) |
| RV | Return value of org.aavso.tools.vstar.input.AbstractObservationRetriever.getNumberOfRecords() ignored, but method has no side effect |
| RV | Return value of org.aavso.tools.vstar.input.AbstractObservationRetriever.getNumberOfRecords() ignored, but method has no side effect |
| SA | Double assignment of urlStr in org.aavso.tools.vstar.util.help.Help.openPluginHelp(String) |
| SF | Switch statement found in org.aavso.tools.vstar.data.filter.BooleanFieldMatcher.matches(ValidObservation) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.data.filter.DoubleFieldMatcher.matches(ValidObservation) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.data.filter.SeriesTypeFieldMatcher.matches(ValidObservation) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.data.filter.StringFieldMatcher.matches(ValidObservation) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.plugin.ob.src.impl.AAVSOPhotometryURLObservationSourceBase$AAVSOPhotometryURLSearchParameterDialog$2.actionPerformed(ActionEvent) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.dialog.AdditiveLoadFileOrUrlChooser.createPluginsList() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.mediator.Mediator.saveSyntheticObsListToFile(Component, ObservationSinkPluginBase, ViewModeType, File, String) where one case falls through to the next case |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.AAVSOFormatRawDataColumnInfoSource.getTableColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.AAVSOFormatRawDataColumnInfoSource.getTableColumnTitle(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.AAVSOFormatRawDataColumnInfoSource.getTableColumnValue(int, ValidObservation) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.InvalidObservationTableModel.getColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.InvalidObservationTableModel.getColumnName(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.InvalidObservationTableModel.getValueAt(int, int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.PhasePlotMeanObservationTableModel.getColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.PhasePlotMeanObservationTableModel.getColumnName(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.PhasePlotMeanObservationTableModel.getValueAt(int, int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.PhasePlotModelObservationTableModel.getColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.PhasePlotModelObservationTableModel.getColumnName(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.PhasePlotModelObservationTableModel.getValueAt(int, int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.RawDataMeanObservationTableModel.getColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.RawDataMeanObservationTableModel.getColumnName(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.RawDataMeanObservationTableModel.getValueAt(int, int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.RawDataModelObservationTableModel.getColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.RawDataModelObservationTableModel.getColumnName(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.RawDataModelObservationTableModel.getValueAt(int, int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.SimpleFormatRawDataColumnInfoSource.getTableColumnClass(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.SimpleFormatRawDataColumnInfoSource.getTableColumnTitle(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.model.list.SimpleFormatRawDataColumnInfoSource.getTableColumnValue(int, ValidObservation) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.ui.vela.VeLaDialog$2.keyTyped(KeyEvent) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.util.period.wwz.WWZCoordinateType.getTypeFromId(int) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.Type.name2Vela(String) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaInterpreter$10.apply(List) where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaParser.anonFundef() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaParser.funcall() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaParser.ifExpression() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaParser.list() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaParser.namedFundef() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaParser.sequence() where default case is missing |
| SF | Switch statement found in org.aavso.tools.vstar.vela.VeLaValidObservationEnvironment.operand(Type, String, Object) where default case is missing |
| ST | Write to static field org.aavso.tools.vstar.data.ValidObservation.detailIndex from instance method org.aavso.tools.vstar.data.ValidObservation.addDetail(String, Property, String) |
| ST | Write to static field org.aavso.tools.vstar.ui.mediator.DocumentManager.filterNum from instance method org.aavso.tools.vstar.ui.mediator.DocumentManager.getNextUntitledFilterName() |
| ST | Write to static field org.aavso.tools.vstar.ui.mediator.Mediator.ui from instance method org.aavso.tools.vstar.ui.mediator.Mediator.setUI(IMainUI) |
| ST | Write to static field org.aavso.tools.vstar.ui.mediator.Mediator.ui from instance method new org.aavso.tools.vstar.ui.mediator.Mediator() |
| ST | Write to static field org.aavso.tools.vstar.ui.vela.VeLaDialog.code from instance method new org.aavso.tools.vstar.ui.vela.VeLaDialog(String, String) |
| ST | Write to static field org.aavso.tools.vstar.ui.vela.VeLaDialog.code from instance method new org.aavso.tools.vstar.ui.vela.VeLaDialog(String, String, JComponent, Consumer) |
| UC | Method org.aavso.tools.vstar.ui.dialog.period.PeriodAnalysis2DChartPane.datasetChanged(DatasetChangeEvent) seems to be useless |
| UC | Useless condition: it's known that this.interrupted == false at this point |
| UC | Useless object stored in variable dzeta of method org.aavso.tools.vstar.util.model.TSPolynomialFitter.polyfit() |
| UC | Useless object stored in variable extendedParams of method new org.aavso.tools.vstar.vela.JavaMethodExecutor(Object, Method, Optional, List, List, Optional, Optional) |
| UrF | Unread public/protected field: org.aavso.tools.vstar.util.TSBase.dsig |
| UrF | Unread public/protected field: org.aavso.tools.vstar.util.TSBase.dtsig |
| UrF | Unread public/protected field: org.aavso.tools.vstar.util.TSBase.magspan |
| UrF | Unread public/protected field: org.aavso.tools.vstar.util.TSBase.ndigt |
| UrF | Unread public/protected field: org.aavso.tools.vstar.util.TSBase.obias |
| UrF | Unread public/protected field: org.aavso.tools.vstar.util.TSBase.tmark |
| UwF | Unwritten public or protected field: org.aavso.tools.vstar.ui.dialog.series.AbstractSeriesVisibilityDialog.seriesVisibilityPane |
| UwF | Unwritten public or protected field: org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.chartControlPanel |
| UwF | Unwritten public or protected field: org.aavso.tools.vstar.ui.pane.plot.AbstractObservationPlotPane.obsInfo |
| UwF | Unwritten public or protected field: org.aavso.tools.vstar.util.notification.NotifyingList.notifier |
This write of a variable shared between functions depends on the current value of the variable (either because it's a compound operation - e.g. +=, ++ - or it simply depends on the current value), as such it consists of more than one discrete operation. These operations are not atomic in themselves and need further synchronization. See SEI CERT rule VNA02-J. Simply declaring a variable volatile fails to guarantee the atomicity of compound operations on the variable, but synchronizing the writes on top of declaring the variable volatile for read operations is sufficient.
To solve this issue, synchronize compound operations and other write operations depending on the previous value, use read-write locks, or declare the shared variable with an atomic type.
The long and the double are 64-bit primitive types, and depending on the Java Virtual Machine implementation assigning a value to them can be treated as two separate 32-bit writes, and as such it's not atomic. See JSL 17.7. Non-Atomic Treatment of double and long. See SEI CERT rule VNA05-J. Ensure atomicity when reading and writing 64-bit values for more info. This bug can be ignored in platforms which guarantee that 64-bit long and double type read and write operations are atomic.
To fix it, declare the variable volatile, change the type of the field to the corresponding atomic type from java.lang.concurrent.atomic or correctly synchronize the code.
Declaring the variable volatile may not be enough in some cases: e.g. when the variable is assigned a value which depends on the current value or on the result of nonatomic compound operations.
SEI CERT rule VNA00-J describes that reading a shared primitive variable in one thread may not yield the value of the most recent write to the variable from another thread. Consequently, the thread may observe a stale value of the shared variable.
To fix it, declare the variable volatile, change the type of the field to the corresponding atomic type from java.lang.concurrent.atomic or correctly synchronize the code.
Declaring the variable volatile may not be enough in some cases: e.g. when the variable is assigned a value which depends on the current value or on the result of nonatomic compound operations.
This guarantees that 64-bit primitive long and double variables are accessed atomically.
Classes that throw exceptions in their constructors are vulnerable to Finalizer attacks
A finalizer attack can be prevented, by declaring the class final, using an empty finalizer declared as final, or by a clever use of a private constructor.
See SEI CERT Rule OBJ-11
for more information.
This method compares double or float values using pattern like this: val1 > val2 ? 1 : val1 < val2 ? -1 : 0. This pattern works incorrectly for -0.0 and NaN values which may result in incorrect sorting result or broken collection (if compared values are used as keys). Consider using Double.compare or Float.compare static methods which handle all the special cases correctly.
This method might ignore an exception. In general, exceptions should be handled or reported in some way, or they should be thrown out of the method.
This instruction assigns a value to a local variable, but the value is not read or used in any subsequent instruction. Often, this indicates an error, because the value computed is never used.
Note that Sun's javac compiler often generates dead stores for final local variables. Because SpotBugs is a bytecode-based tool, there is no easy way to eliminate these false positives.
Code explicitly invokes garbage collection. Except for specific use in benchmarking, this is very dubious.
In the past, situations where people have explicitly invoked the garbage collector in routines such as close or finalize methods has led to huge performance black holes. Garbage collection can be expensive. Any situation that forces hundreds or thousands of garbage collections will bring the machine to a crawl.
Invoking System.exit shuts down the entire Java virtual machine. This should only been done when it is appropriate. Such calls make it hard or impossible for your code to be invoked by other code. Consider throwing a RuntimeException instead.
Creating a new java.lang.String object using the
no-argument constructor wastes memory because the object so created will
be functionally indistinguishable from the empty string constant
"". Java guarantees that identical string constants
will be represented by the same String object. Therefore,
you should just use the empty string constant directly.
Using the java.lang.String(String) constructor wastes memory
because the object so constructed will be functionally indistinguishable
from the String passed as a parameter. Just use the
argument String directly.
Found a call to a method which will perform a byte to String (or String to byte) conversion, and will assume that the default platform encoding is suitable. This will cause the application behavior to vary between platforms. Use an alternative API and specify a charset name or Charset object explicitly.
This method calls equals(Object) on two references of different class types and analysis suggests they will be to objects of different classes at runtime. Further, examination of the equals methods that would be invoked suggest that either this call will always return false, or else the equals method is not symmetric (which is a property required by the contract for equals in class Object).
Returning a reference to a mutable object value stored in one of the object's fields exposes the internal representation of the object. If instances are accessed by untrusted code, and unchecked changes to the mutable object would compromise security or other important properties, you will need to do something different. Returning a new copy of the object is better approach in many situations.
This code stores a reference to an externally mutable object into the internal representation of the object. If instances are accessed by untrusted code, and unchecked changes to the mutable object would compromise security or other important properties, you will need to do something different. Storing a copy of the object is better approach in many situations.
This code compares java.lang.String objects for reference
equality using the == or != operators.
Unless both strings are either constants in a source file, or have been
interned using the String.intern() method, the same string
value may be represented by two different String objects. Consider
using the equals(Object) method instead.
This code compares a java.lang.String parameter for reference
equality using the == or != operators. Requiring callers to
pass only String constants or interned strings to a method is unnecessarily
fragile, and rarely leads to measurable performance gains. Consider
using the equals(Object) method instead.
This class defines a compareTo(...) method but inherits its
equals() method from java.lang.Object.
Generally, the value of compareTo should return zero if and only if
equals returns true. If this is violated, weird and unpredictable
failures will occur in classes such as PriorityQueue.
In Java 5 the PriorityQueue.remove method uses the compareTo method,
while in Java 6 it uses the equals method.
From the JavaDoc for the compareTo method in the Comparable interface:
It is strongly recommended, but not strictly required that (x.compareTo(y)==0) == (x.equals(y)).
Generally speaking, any class that implements the Comparable interface and violates this condition
should clearly indicate this fact. The recommended language
is "Note: this class has a natural ordering that is inconsistent with equals."
This code checks to see if a floating point value is equal to the special
Not A Number value (e.g., if (x == Double.NaN)). However,
because of the special semantics of NaN, no value
is equal to Nan, including NaN. Thus,
x == Double.NaN always evaluates to false.
To check to see if a value contained in x
is the special Not A Number value, use
Double.isNaN(x) (or Float.isNaN(x) if
x is floating point precision).
This operation compares two floating point values for equality.
Because floating point calculations may involve rounding,
calculated float and double values may not be accurate.
For values that must be precise, such as monetary values,
consider using a fixed-precision type such as BigDecimal.
For values that need not be precise, consider comparing for equality
within some range, for example:
if ( Math.abs(x - y) < .0000001 ).
See the Java Language Specification, section 4.2.4.
Using floating-point variables should not be used as loop counters, as they are not precise, which may result in incorrect loops. A loop counter is a variable that is changed with each iteration and controls when the loop should terminate. It is decreased or increased by a fixed amount each iteration.
See rule NUM09-J.
This format string includes a newline character (\n). In format strings, it is generally
preferable to use %n, which will produce the platform-specific line separator.
When using text blocks introduced in Java 15, use the \ escape sequence:
String value = """
first line%n\
second line%n\
""";
This class overrides equals(Object), but does not
override hashCode(), and inherits the implementation of
hashCode() from java.lang.Object (which returns
the identity hash code, an arbitrary value assigned to the object
by the VM). Therefore, the class is very likely to violate the
invariant that equal objects must have equal hashcodes.
If you don't think instances of this class will ever be inserted into a HashMap/HashTable,
the recommended hashCode implementation to use is:
public int hashCode() {
assert false : "hashCode not designed";
return 42; // any arbitrary constant will do
}
An inner class is invoking a method that could be resolved to either an inherited method or a method defined in an outer class.
For example, you invoke foo(17), which is defined in both a superclass and in an outer method.
By the Java semantics,
it will be resolved to invoke the inherited method, but this may not be what
you intend.
If you really intend to invoke the inherited method, invoke it by invoking the method on super (e.g., invoke super.foo(17)), and thus it will be clear to other readers of your code and to SpotBugs that you want to invoke the inherited method, not the method in the outer class.
If you call this.foo(17), then the inherited method will be invoked. However, since SpotBugs only looks at
classfiles, it
cannot tell the difference between an invocation of this.foo(17) and foo(17), it will still
complain about a potential ambiguous invocation.
This code casts the result of an integral division (e.g., int or long division) operation to double or float. Doing division on integers truncates the result to the integer value closest to zero. The fact that the result was cast to double suggests that this precision should have been retained. What was probably meant was to cast one or both of the operands to double before performing the division. Here is an example:
int x = 2;
int y = 5;
// Wrong: yields result 0.0
double value1 = x / y;
// Right: yields result 0.4
double value2 = x / (double) y;
This loop doesn't seem to have a way to terminate (other than by perhaps throwing an exception).
This method contains an unsynchronized lazy initialization of a non-volatile static field. Because the compiler or processor may reorder instructions, threads are not guaranteed to see a completely initialized object, if the method can be called by multiple threads. You can make the field volatile to correct the problem. For more information, see the Java Memory Model web site.
A mutable public field is defined inside a public enum, thus can be changed by malicious code or by accident from another package. Though mutable enum fields may be used for lazy initialization, it's a bad practice to expose them to the outer world. Consider declaring this field final and/or package-private.
This class defines a field with the same name as a visible instance field in a superclass. This is confusing, and may indicate an error if methods update or access one of the fields when they wanted the other.
A mutable collection instance is assigned to a final static field, thus can be changed by malicious code or by accident from another package. Consider wrapping this field into Collections.unmodifiableSet/List/Map/etc. to avoid this vulnerability.
A mutable collection instance is assigned to a final static field, thus can be changed by malicious code or by accident from another package. The field could be made package protected to avoid this vulnerability. Alternatively you may wrap this field into Collections.unmodifiableSet/List/Map/etc. to avoid this vulnerability.
This public static or protected static field is not final, and
could be changed by malicious code or
by accident from another package.
The field could be made final to avoid
this vulnerability.
A mutable static field could be changed by malicious code or by accident from another package. The field could be made package protected and/or made final to avoid this vulnerability.
A mutable static field could be changed by malicious code or by accident. The field could be made package protected to avoid this vulnerability.
A public static method returns a reference to a mutable object or an array that is part of the static state of the class. Any code that calls this method can freely modify the underlying array. One fix is to return a copy of the array.
The variable referenced at this point is known to be null due to an earlier check against null. Although this is valid, it might be a mistake (perhaps you intended to refer to a different variable, or perhaps the earlier check to see if the variable is null should have been a check to see if it was non-null).
A method that returns either Boolean.TRUE, Boolean.FALSE or null is an accident waiting to happen. This method can be invoked as though it returned a value of type boolean, and the compiler will insert automatic unboxing of the Boolean value. If a null value is returned, this will result in a NullPointerException.
There is a branch of statement that, if executed, guarantees that
a null value will be dereferenced, which
would generate a NullPointerException when the code is executed.
Of course, the problem might be that the branch or statement is infeasible and that
the null pointer exception cannot ever be executed; deciding that is beyond the ability of SpotBugs.
The return value from a method is dereferenced without a null check,
and the return value of that method is one that should generally be checked
for null. This may lead to a NullPointerException when the code is executed.
A reference value which is null on some exception control path is
dereferenced here. This may lead to a NullPointerException
when the code is executed.
Note that because SpotBugs currently does not prune infeasible exception paths,
this may be a false warning.
Also note that SpotBugs considers the default case of a switch statement to be an exception path, since the default case is often infeasible.
This toString method seems to return null in some circumstances. A liberal reading of the spec could be interpreted as allowing this, but it is probably a bad idea and could cause other code to break. Return the empty string or some other appropriate string rather than null.
Class names should be nouns, in mixed case with the first letter of each internal word capitalized. Try to keep your class names simple and descriptive. Use whole words-avoid acronyms and abbreviations (unless the abbreviation is much more widely used than the long form, such as URL or HTML).
This method may fail to clean up (close, dispose of) a stream, database object, or other resource requiring an explicit cleanup operation.
In general, if a method opens a stream or other resource, the method should use a try/finally block to ensure that the stream or resource is cleaned up before the method returns.
This bug pattern is essentially the same as the OS_OPEN_STREAM and ODR_OPEN_DATABASE_RESOURCE bug patterns, but is based on a different (and hopefully better) static analysis technique. We are interested is getting feedback about the usefulness of this bug pattern. For sending feedback, check:
In particular, the false-positive suppression heuristics for this bug pattern have not been extensively tuned, so reports about false positives are helpful to us.
See Weimer and Necula, Finding and Preventing Run-Time Error Handling Mistakes (PDF), for a description of the analysis technique.
The method creates an IO stream object, does not assign it to any
fields, pass it to other methods that might close it,
or return it, and does not appear to close
the stream on all paths out of the method. This may result in
a file descriptor leak. It is generally a good
idea to use a finally block to ensure that streams are
closed.
A value is checked here to see whether it is null, but this value cannot be null because it was previously dereferenced and if it were null a null pointer exception would have occurred at the earlier dereference. Essentially, this code and the previous dereference disagree as to whether this value is allowed to be null. Either the check is redundant or the previous dereference is erroneous.
This method contains a redundant check of a known non-null value against the constant null.
This method uses a try-catch block that catches Exception objects, but Exception is not thrown within the try block, and RuntimeException is not explicitly caught. It is a common bug pattern to say try { ... } catch (Exception e) { something } as a shorthand for catching a number of types of exception each of whose catch blocks is identical, but this construct also accidentally catches RuntimeException as well, masking potential bugs.
A better approach is to either explicitly catch the specific exceptions that are thrown, or to explicitly catch RuntimeException exception, rethrow it, and then catch all non-Runtime Exceptions, as shown below:
try {
...
} catch (RuntimeException e) {
throw e;
} catch (Exception e) {
... deal with all non-runtime exceptions ...
}
This method returns a value that is not checked. The return value should be checked
since it can indicate an unusual or unexpected function execution. For
example, the File.delete() method returns false
if the file could not be successfully deleted (rather than
throwing an Exception).
If you don't check the result, you won't notice if the method invocation
signals unexpected behavior by returning an atypical return value.
This code negates the return value of a compareTo or compare method. This is a questionable or bad programming practice, since if the return value is Integer.MIN_VALUE, negating the return value won't negate the sign of the result. You can achieve the same intended result by reversing the order of the operands rather than by negating the results.
This code calls a method and ignores the return value. However, our analysis shows that the method (including its implementations in subclasses if any) does not produce any effect other than return value. Thus, this call can be removed.
We are trying to reduce the false positives as much as possible, but in some cases this warning might be wrong. Common false-positive cases include:
- The method is designed to be overridden and produce a side effect in other projects which are out of the scope of the analysis.
- The method is called to trigger the class loading which may have a side effect.
- The method is called just to get some exception.
If you feel that our assumption is incorrect, you can use a @CheckReturnValue annotation to instruct SpotBugs that ignoring the return value of this method is acceptable.
The code contains a conditional test is performed twice, one right after the other
(e.g., x == 0 || x == 0). Perhaps the second occurrence is intended to be something else
(e.g., x == 0 || y == 0).
This method contains a double assignment of a local variable; e.g.
public void foo() {
int x,y;
x = x = 17;
}
Assigning the same value to a variable twice is useless, and may indicate a logic error or typo.
The method seems to be building a String using concatenation in a loop. In each iteration, the String is converted to a StringBuffer/StringBuilder, appended to, and converted back to a String. This can lead to a cost quadratic in the number of iterations, as the growing string is recopied in each iteration.
Better performance can be obtained by using a StringBuffer (or StringBuilder in Java 5) explicitly.
For example:
// This is bad
String s = "";
for (int i = 0; i < field.length; ++i) {
s = s + field[i];
}
// This is better
StringBuffer buf = new StringBuffer();
for (int i = 0; i < field.length; ++i) {
buf.append(field[i]);
}
String s = buf.toString();
This method contains a switch statement where default case is missing. Usually you need to provide a default case.
Because the analysis only looks at the generated bytecode, this warning can be incorrect triggered if the default case is at the end of the switch statement and the switch statement doesn't contain break statements for other cases.
This method contains a switch statement where one case branch will fall through to the next case. Usually you need to end this case with a break or return.
This class is an inner class, but does not use its embedded reference to the object which created it. This reference makes the instances of the class larger, and may keep the reference to the creator object alive longer than necessary. If possible, the class should be made static.
This class (using singleton design pattern) directly or indirectly implements the Serializable interface, which allows the class to be serialized.
Deserialization makes multiple instantiation of a singleton class possible, and therefore should be avoided.
SEI CERT MSC07-J rule
This class is using singleton design pattern and has non-private constructor (please note that a default constructor might exist which is not private). Given that, it is possible to create a copy of the object, thus violating the singleton pattern.
The easier solution would be making the constructor private.
SEI CERT MSC07-J rule
This class contains an instance final field that is initialized to a compile-time static value. Consider making the field static.
This instance method writes to a static field. This is tricky to get correct if multiple instances are being manipulated, and generally bad practice.
This method calls Thread.sleep() with a lock held. This may result in very poor performance and scalability, or a deadlock, since other threads may be waiting to acquire the lock. It is a much better idea to call wait() on the lock, which releases the lock and allows other threads to run.
This class implements the Comparator interface. You
should consider whether or not it should also implement the Serializable
interface. If a comparator is used to construct an ordered collection
such as a TreeMap, then the TreeMap
will be serializable only if the comparator is also serializable.
As most comparators have little or no state, making them serializable
is generally easy and good defensive programming.
A non-serializable value is stored into a non-transient field of a serializable class.
This condition always produces the same result as the value of the involved variable that was narrowed before. Probably something else was meant or the condition can be removed.
Our analysis shows that this non-empty void method does not actually perform any useful work. Please check it: probably there's a mistake in its code or its body can be fully removed.
We are trying to reduce the false positives as much as possible, but in some cases this warning might be wrong. Common false-positive cases include:
Our analysis shows that this object is useless. It's created and modified, but its value never go outside of the method or produce any side-effect. Either there is a mistake and object was intended to be used or it can be removed.
This analysis rarely produces false-positives. Common false-positive cases include:
- This object used to implicitly throw some obscure exception.
- This object used as a stub to generalize the code.
- This object used to hold strong references to weak/soft-referenced objects.
This field is never read. The field is public or protected, so perhaps it is intended to be used with classes not seen as part of the analysis. If not, consider removing it from the class.
No writes were seen to this public/protected field. All reads of it will return the default value. Check for errors (should it have been initialized?), or remove it if it is useless.
This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup.