Skip to content

Commit

Permalink
Move GCPreferences to view.model
Browse files Browse the repository at this point in the history
  • Loading branch information
chewiebug committed Jul 9, 2014
1 parent 15ea595 commit 5391c3b
Show file tree
Hide file tree
Showing 21 changed files with 228 additions and 45 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
/.settings
/target
/dependometer
/src/nbproject
/src/build/
/src/dist/
Expand Down
1 change: 1 addition & 0 deletions dependometer/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/result
176 changes: 176 additions & 0 deletions dependometer/dependometer-gcviewer.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE project SYSTEM "Configuration.dtd">

<!--
name
the project name appears in the reports
numberOfCyclesFeedbackOnConsole (default = "1")
Every time the configured number of cycles is reached you get an extra warning in your shell
numberOfCycleAnalysisProgressFeedbackOnConsole (default = "1")
Every time the remaining number of nodes was accordingly reduced you get an extra info in your shell
checkLayerDependencies (default = "true")
checkSubsystemDependencies (default = "true")
"true" all dependencies are checked against the allowed dependencies (depends-upon node)
"false" no dependency check
checkPackageDependencies (default = "true")
"true" all package dependencies are checked against the allowed dependencies (only packages are checked that have a package description)
"false" no dependency check
cumulateLayerDependencies (default = "true")
cumulateSubsystemDependencies (default = "true")
cumulatePackageDependencies (default = "true")
cumulateCompilationUnitDependencies (default = "true")
cumulateTypeDependencies (default = "true")
"true" cumulate dependencies
"false" no cumulation
maxLayerCycles (default = "0")
maxSubsystemCycles (default = "0")
maxPackageCycles (default = "0")
maxCompilationUnitCycles (default = "0")
maxTypeCycles (default = "0")
Configure the cycle analysis behavior to avoid an endlessly running process. As an alternativ you can start the
dependometer with the command 'java -jar dependomter.jar -file <your configuration>' and terminate the analyis when
ever you want with 'ctrl-c' in the shell. This is possible past the point where in the shell the message 'Terminate
running analysis with 'ctrl-c'!' appears. Past this point you have also a valid html output. Only the cycle analyis
output gets updated. With a corresponding refresh in your browser you can see the updated information.
"-2" no analysis
"-1" cycle existence check
"0" like "-1" plus detailed cycle participation (which elements participate in cycles?) and levelization
">0" like 0" but with the provided upper limit for detected cycles (stops if 'n' cycles are reached)
-->
<project
name = "GCViewer"
numberOfCyclesFeedbackOnConsole = "1"
numberOfCycleAnalysisProgressFeedbackOnConsole = "1"
checkLayerDependencies = "true"
checkSubsystemDependencies = "true"
checkPackageDependencies = "false"
cumulateLayerDependencies = "false"
cumulateSubsystemDependencies = "false"
cumulatePackageDependencies = "true"
cumulateCompilationUnitDependencies = "true"
cumulateTypeDependencies = "true"
maxLayerCycles = "5"
maxSubsystemCycles = "5"
maxPackageCycles = "5"
maxCompilationUnitCycles = "5"
maxTypeCycles = "0"
>
<!-- DIRECTORIES -->
<input dir="../target/classes"/>
<input dir="../src/main/java"/>

<!-- INPUT PACKAGE FILTER -->
<include-package name="com.tagtraum.perf.*"/>

<!-- OUTPUT LISTENER -->
<listener class="com.valtech.source.dependometer.ui.console.output.HtmlWriter" args="./result/dependometer"/>

<!-- ASSERTIONS -->
<assertion pattern="assert"/>

<!-- SKIP -->
<skip prefix="java\..*"/>
<skip prefix="javax\..*"/>
<skip prefix="org\..*"/>

<!-- REFACTORINGS -->
<!-- Move compilation unit(s) to another package (Simulation) - n compilationUnits may be specified using the regular expressions from the JDK 1.4 -->
<!--
<refactor compilationUnit="com.tagtraum.perf.gcviewer.view.model.GCPreferences.java" toPackage="com.tagtraum.perf.gcviewer"/>
-->

<!-- THRESHOLDS -->
<lower-threshold name="Project.NumberOfProjectInternalLayers" value="1"/> <!-- Need at least one defined layer -->
<lower-threshold name="Project.NumberOfDefinedLayerDependencies" value="1"/>
<lower-threshold name="Project.NumberOfProjectInternalSubsystems" value="1"/>
<lower-threshold name="Project.NumberOfDefinedSubsystemDependencies" value="1"/>
<lower-threshold name="Project.PercentageOfPackagesWithRcNotLessThanOne" value="70"/>
<!-- 70 percent of the packages may have an relational cohesion not less than 1.0 -->
<lower-threshold name="Project.AverageNumberOfAssertionsPerProjectInternalClass" value="1"/>
<!-- Checks the average existance of assertion statements per project internal class -->
<upper-threshold name="Project.ACD" value="20"/>
<!-- Checks the Average component dependency -->
<upper-threshold name="Project.LayerCyclesExist" value="0"/>
<upper-threshold name="Project.SubsystemCyclesExist" value="0"/>
<upper-threshold name="Project.PackageCyclesExist" value="0"/>
<!-- Checks if cycles are present -->
<upper-threshold name="Project.CompilationUnitCyclesExist" value="0"/>
<!-- Checks if cycles are present -->
<upper-threshold name="Project.TypeCyclesExist" value="0"/>
<!-- Checks if cycles are present -->
<upper-threshold name="Project.MaxDepthOfInheritance" value="6"/>
<!-- Checks the depth of inheritance excluding java.lang.Object -->

<layer name="user-interface-layer">
<description>Contains all user interface related classes</description>
<subsystem name="commandline-ui">
<description>Contains the command line ui</description>
<include-package name="com.tagtraum.perf.gcviewer"/>
<depends-upon name="user-interface-layer::controller"/>
<depends-upon name="user-interface-layer::exporter-interface"/>
<depends-upon name="user-interface-layer::exporter-implementation"/>
<depends-upon name="parser-layer::model"/>
<depends-upon name="parser-layer::parser"/>
</subsystem>
<subsystem name="controller">
<description>Contains all controller classes of the project</description>
<include-package name="com.tagtraum.perf.gcviewer.ctrl"/>
<include-package name="com.tagtraum.perf.gcviewer.ctrl.action"/>
<depends-upon name="user-interface-layer::gui"/>
<depends-upon name="user-interface-layer::exporter-interface"/>
<depends-upon name="user-interface-layer::exporter-implementation"/>
<depends-upon name="parser-layer::model"/>
<depends-upon name="parser-layer::parser"/>
<depends-upon name="utilities-layer::helper-classes"/>
</subsystem>
<subsystem name="gui">
<description>Provides the console based user interface</description>
<include-package name="com.tagtraum.perf.gcviewer.view"/>
<include-package name="com.tagtraum.perf.gcviewer.view.model"/>
<include-package name="com.tagtraum.perf.gcviewer.view.renderer"/>
<include-package name="com.tagtraum.perf.gcviewer.view.util"/>
<depends-upon name="utilities-layer::helper-classes"/>
<depends-upon name="parser-layer::model"/>
</subsystem>
<subsystem name="exporter-interface">
<description>contains all export format super classes</description>
<include-package name="com.tagtraum.perf.gcviewer.exp"/>
<depends-upon name="parser-layer::model"/>
</subsystem>
<subsystem name="exporter-implementation">
<description>contains all export format implementations</description>
<include-package name="com.tagtraum.perf.gcviewer.exp.impl"/>
<depends-upon name="user-interface-layer::exporter-interface"/>
<depends-upon name="parser-layer::model"/>
<depends-upon name="utilities-layer::helper-classes"/>
</subsystem>
<depends-upon name="parser-layer"/>
<depends-upon name="utilities-layer"/>
</layer>
<layer name="parser-layer">
<description>Contains the parser implementation</description>
<subsystem name="parser">
<description>Provides the console based user interface</description>
<include-package name="com.tagtraum.perf.gcviewer.imp"/>
<!-- Fully qualified name necessary -->
<depends-upon name="parser-layer::model"/>
<depends-upon name="utilities-layer::helper-classes"/>
</subsystem>
<subsystem name="model">
<description>contains the datamodel</description>
<include-package name="com.tagtraum.perf.gcviewer.model"/>
<depends-upon name="utilities-layer::helper-classes"/>
</subsystem>
<depends-upon name="utilities-layer"/>
</layer>
<layer name="utilities-layer">
<description>Contains all utility classes</description>
<subsystem name="helper-classes">
<description>Provides the console based user interface</description>
<!-- Packages implementing the subsystem - regular expressions JDK 1.4 -->
<include-package name="com.tagtraum.perf.gcviewer.util"/>
<include-package name="com.tagtraum.perf.gcviewer.math"/>
<include-package name="com.tagtraum.perf.gcviewer.log"/>
</subsystem>
</layer>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@

import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.util.logging.Logger;

import javax.swing.SwingWorker;

import com.tagtraum.perf.gcviewer.log.TextAreaLogHandler;
import com.tagtraum.perf.gcviewer.view.ChartPanelView;
import com.tagtraum.perf.gcviewer.view.GCDocument;
import com.tagtraum.perf.gcviewer.view.GCModelLoaderView;
Expand Down Expand Up @@ -38,11 +40,22 @@ public void propertyChange(PropertyChangeEvent evt) {
if ("state".equals(evt.getPropertyName()) && SwingWorker.StateValue.DONE == evt.getNewValue()) {
// for every model that has finished loading, the document must be laid out again
gcDocument.relayout();

((GCModelLoader)evt.getSource()).removePropertyChangeListener(this);

GCModelLoader modelLoader = (GCModelLoader) evt.getSource();
modelLoader.removePropertyChangeListener(this);
removeTextAreaLogHandler(modelLoader);
}

}

private void removeTextAreaLogHandler(GCModelLoader modelLoader) {
Logger logger = modelLoader.getGcResource().getLogger();
for (int i = logger.getHandlers().length - 1; i >= 0; --i) {
if (logger.getHandlers()[i] instanceof TextAreaLogHandler) {
logger.removeHandler(logger.getHandlers()[i]);
}
}
}

public void reloadModel(GCModelLoader loader) {
loader.addPropertyChangeListener(this);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

import com.tagtraum.perf.gcviewer.util.LocalisationHelper;
import com.tagtraum.perf.gcviewer.view.AboutDialog;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
*
Expand All @@ -26,7 +26,7 @@ public About(final Frame parent) {
putValue(SHORT_DESCRIPTION, LocalisationHelper.getString("main_frame_menuitem_hint_about"));
putValue(MNEMONIC_KEY, new Integer(LocalisationHelper.getString("main_frame_menuitem_mnemonic_about").charAt(0)));
putValue(ACTION_COMMAND_KEY, "about");
putValue(SMALL_ICON, ImageLoader.loadImageIcon("about.png"));
putValue(SMALL_ICON, ImageHelper.loadImageIcon("about.png"));
}

public void actionPerformed(final ActionEvent e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

import com.tagtraum.perf.gcviewer.util.LocalisationHelper;
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
*
Expand All @@ -27,7 +27,7 @@ public Exit(final GCViewerGui gcViewer) {
putValue(MNEMONIC_KEY, new Integer(LocalisationHelper.getString("main_frame_menuitem_mnemonic_exit").charAt(0)));
putValue(ACTION_COMMAND_KEY, "exit");
putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke('X', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
putValue(SMALL_ICON, ImageLoader.loadImageIcon("exit.png"));
putValue(SMALL_ICON, ImageHelper.loadImageIcon("exit.png"));
}

public void actionPerformed(final ActionEvent e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import com.tagtraum.perf.gcviewer.view.ChartPanelView;
import com.tagtraum.perf.gcviewer.view.GCDocument;
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
* @author <a href="mailto:[email protected]">Hendrik Schreiber</a>
Expand All @@ -36,7 +36,7 @@ public Export(final GCViewerGui gcViewer) {
putValue(SHORT_DESCRIPTION, LocalisationHelper.getString("main_frame_menuitem_hint_export"));
putValue(ACTION_COMMAND_KEY, "export");
putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke('E', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() ));
putValue(SMALL_ICON, ImageLoader.loadImageIcon("save.png"));
putValue(SMALL_ICON, ImageHelper.loadImageIcon("save.png"));
setEnabled(false);

saveDialog = new JFileChooser();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import com.tagtraum.perf.gcviewer.util.LocalisationHelper;
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.OpenFileView;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
* @author <a href="mailto:[email protected]">Hendrik Schreiber</a>
Expand All @@ -34,7 +34,7 @@ public OpenFile(GCViewerController controller, final GCViewerGui gcViewer) {
putValue(MNEMONIC_KEY, new Integer(LocalisationHelper.getString("main_frame_menuitem_mnemonic_open_file").charAt(0)));
putValue(ACTION_COMMAND_KEY, "open");
putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke('O', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() ));
putValue(SMALL_ICON, ImageLoader.loadImageIcon("open.png"));
putValue(SMALL_ICON, ImageHelper.loadImageIcon("open.png"));

openFileView = new OpenFileView();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.OpenUrlView;
import com.tagtraum.perf.gcviewer.view.model.RecentURLsModel;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
* @author <a href="mailto:[email protected]">Hendrik Schreiber</a>
Expand All @@ -33,7 +33,7 @@ public OpenURL(GCViewerController controller, final GCViewerGui gcViewer) {
putValue(MNEMONIC_KEY, new Integer(LocalisationHelper.getString("main_frame_menuitem_mnemonic_open_url").charAt(0)));
putValue(ACTION_COMMAND_KEY, "open_url");
putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke('U', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() ));
putValue(SMALL_ICON, ImageLoader.loadImageIcon("open_url.png"));
putValue(SMALL_ICON, ImageHelper.loadImageIcon("open_url.png"));
}

public void setRecentURLsModel(final RecentURLsModel recentURLsModel) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
import com.tagtraum.perf.gcviewer.ctrl.GCViewerController;
import com.tagtraum.perf.gcviewer.util.LocalisationHelper;
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
*
Expand All @@ -31,7 +31,7 @@ public Refresh(GCViewerController controller, GCViewerGui gcViewer) {
putValue(MNEMONIC_KEY, new Integer(LocalisationHelper.getString("main_frame_menuitem_mnemonic_refresh").charAt(0)));
putValue(ACTION_COMMAND_KEY, "refresh");
putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke('R', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() ));
putValue(SMALL_ICON, ImageLoader.loadImageIcon("refresh.png"));
putValue(SMALL_ICON, ImageHelper.loadImageIcon("refresh.png"));

setEnabled(false);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import com.tagtraum.perf.gcviewer.util.LocalisationHelper;
import com.tagtraum.perf.gcviewer.view.GCDocument;
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;

/**
* (De)activate automatic reloading of all {@link GCResource} within one {@link GCDocument}.
Expand All @@ -30,8 +30,8 @@
public class Watch extends AbstractAction {
private Logger logger = Logger.getLogger(Watch.class.getCanonicalName());

private static final ImageIcon WATCH_ICON = ImageLoader.loadImageIcon("watch.png");
private static final ImageIcon CLOCK_ICON = ImageLoader.loadImageIcon("clock.png");
private static final ImageIcon WATCH_ICON = ImageHelper.loadImageIcon("watch.png");
private static final ImageIcon CLOCK_ICON = ImageHelper.loadImageIcon("clock.png");

private GCViewerController controller;
private GCViewerGui gcViewer;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

import com.tagtraum.perf.gcviewer.util.BuildInfoReader;
import com.tagtraum.perf.gcviewer.util.LocalisationHelper;
import com.tagtraum.perf.gcviewer.view.util.ImageLoader;
import com.tagtraum.perf.gcviewer.view.util.ImageHelper;
import com.tagtraum.perf.gcviewer.view.util.UrlDisplayHelper;

/**
Expand Down Expand Up @@ -62,7 +62,7 @@ public class AboutDialog extends ScreenCenteredDialog implements ActionListener
public AboutDialog(Frame f) {
super(f, LocalisationHelper.getString("about_dialog_title"));
Panel logoPanel = new Panel();
ImageIcon logoIcon = ImageLoader.loadImageIcon(LocalisationHelper.getString("about_dialog_image"));
ImageIcon logoIcon = ImageHelper.loadImageIcon(LocalisationHelper.getString("about_dialog_image"));
JLabel la_icon = new JLabel(logoIcon);
la_icon.setBorder(new SoftBevelBorder(SoftBevelBorder.LOWERED));
logoPanel.add(la_icon);
Expand Down
Loading

0 comments on commit 5391c3b

Please sign in to comment.