diff --git a/src/main/java/kieker/diagnosis/components/DurationTableCellFactory.java b/src/main/java/kieker/diagnosis/components/DurationTableCellFactory.java deleted file mode 100644 index 90eb07dbe9abc4a374f7f04ec19fd0ac19e49279..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/DurationTableCellFactory.java +++ /dev/null @@ -1,63 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import javafx.scene.control.TableCell; -import javafx.scene.control.TableColumn; -import javafx.scene.control.TableRow; -import javafx.util.Callback; -import kieker.diagnosis.domain.AbstractOperationCall; -import kieker.diagnosis.model.PropertiesModel; -import kieker.diagnosis.util.NameConverter; - -/** - * @author Nils Christian Ehmke - */ -public final class DurationTableCellFactory<S, T> implements Callback<TableColumn<S, T>, TableCell<S, T>> { - - @Override - public TableCell<S, T> call(final TableColumn<S, T> p) { - final TableCell<S, T> cell = new TableCell<S, T>() { - @SuppressWarnings("unchecked") - @Override - protected void updateItem(final Object item, final boolean empty) { - final TableRow<?> currentRow = this.getTableRow(); - if (currentRow != null) { - final Object rowItem = currentRow.getItem(); - - this.getStyleClass().remove("failed"); - if ((rowItem != null) && AbstractOperationCall.class.isAssignableFrom(rowItem.getClass())) { - if (((AbstractOperationCall<?>) rowItem).isFailed()) { - this.getStyleClass().add("failed"); - } - } - } - - super.updateItem((T) item, empty); - - if (item != null) { - this.setText(item.toString() + " " + NameConverter.toShortTimeUnit(PropertiesModel.getInstance().getTimeUnit())); - } else { - this.setText(""); - } - } - }; - - return cell; - - } -} diff --git a/src/main/java/kieker/diagnosis/components/DurationTreeCellFactory.java b/src/main/java/kieker/diagnosis/components/DurationTreeCellFactory.java deleted file mode 100644 index b64cf0e209d340d5addb4433ade1b98ee1ddce2f..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/DurationTreeCellFactory.java +++ /dev/null @@ -1,63 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import javafx.scene.control.TreeTableCell; -import javafx.scene.control.TreeTableColumn; -import javafx.scene.control.TreeTableRow; -import javafx.util.Callback; -import kieker.diagnosis.domain.AbstractOperationCall; -import kieker.diagnosis.model.PropertiesModel; -import kieker.diagnosis.util.NameConverter; - -/** - * @author Nils Christian Ehmke - */ -public final class DurationTreeCellFactory<S, T> implements Callback<TreeTableColumn<S, T>, TreeTableCell<S, T>> { - - @Override - public TreeTableCell<S, T> call(final TreeTableColumn<S, T> p) { - final TreeTableCell<S, T> cell = new TreeTableCell<S, T>() { - @SuppressWarnings("unchecked") - @Override - protected void updateItem(final Object item, final boolean empty) { - final TreeTableRow<?> currentRow = this.getTreeTableRow(); - if (currentRow != null) { - final Object rowItem = currentRow.getItem(); - - this.getStyleClass().remove("failed"); - if ((rowItem != null) && AbstractOperationCall.class.isAssignableFrom(rowItem.getClass())) { - if (((AbstractOperationCall<?>) rowItem).isFailed()) { - this.getStyleClass().add("failed"); - } - } - } - - super.updateItem((T) item, empty); - - if (item != null) { - this.setText(item.toString() + " " + NameConverter.toShortTimeUnit(PropertiesModel.getInstance().getTimeUnit())); - } else { - this.setText(""); - } - } - }; - - return cell; - - } -} diff --git a/src/main/java/kieker/diagnosis/components/FailedTreeCellFactory.java b/src/main/java/kieker/diagnosis/components/FailedTreeCellFactory.java deleted file mode 100644 index b9c9d7b25237cce5d1214d03d14779404e01e452..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/FailedTreeCellFactory.java +++ /dev/null @@ -1,68 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import javafx.scene.control.TreeTableCell; -import javafx.scene.control.TreeTableColumn; -import javafx.scene.control.TreeTableRow; -import javafx.util.Callback; -import kieker.diagnosis.domain.AbstractOperationCall; - -/** - * @author Nils Christian Ehmke - */ -public final class FailedTreeCellFactory<S, T> implements Callback<TreeTableColumn<S, T>, TreeTableCell<S, T>> { - - @Override - public TreeTableCell<S, T> call(final TreeTableColumn<S, T> p) { - return new FailedTreeCell(); - } - - private final class FailedTreeCell extends TreeTableCell<S, T> { - - @Override - protected void updateItem(final T item, final boolean empty) { - setFailedStyle(); - - super.updateItem(item, empty); - - if (empty || item == null) { - setText(null); - setGraphic(null); - } else { - setText(item.toString()); - } - } - - private void setFailedStyle() { - final TreeTableRow<?> currentRow = this.getTreeTableRow(); - - if (currentRow != null) { - final Object rowItem = currentRow.getItem(); - - super.getStyleClass().remove("failed"); - if (rowItem instanceof AbstractOperationCall) { - if (((AbstractOperationCall<?>) rowItem).isFailed()) { - super.getStyleClass().add("failed"); - } - } - } - } - - } - -} diff --git a/src/main/java/kieker/diagnosis/components/PercentTreeCellFactory.java b/src/main/java/kieker/diagnosis/components/PercentTreeCellFactory.java deleted file mode 100644 index 2aeab1ebe0ffcdb5cb7e3d8535ba6879a7b48074..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/PercentTreeCellFactory.java +++ /dev/null @@ -1,61 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import javafx.scene.control.TreeTableCell; -import javafx.scene.control.TreeTableColumn; -import javafx.scene.control.TreeTableRow; -import javafx.util.Callback; -import kieker.diagnosis.domain.AbstractOperationCall; - -/** - * @author Nils Christian Ehmke - */ -public final class PercentTreeCellFactory<S, T> implements Callback<TreeTableColumn<S, T>, TreeTableCell<S, T>> { - - @Override - public TreeTableCell<S, T> call(final TreeTableColumn<S, T> p) { - final TreeTableCell<S, T> cell = new TreeTableCell<S, T>() { - @SuppressWarnings("unchecked") - @Override - protected void updateItem(final Object item, final boolean empty) { - final TreeTableRow<?> currentRow = this.getTreeTableRow(); - if (currentRow != null) { - final Object rowItem = currentRow.getItem(); - - this.getStyleClass().remove("failed"); - if ((rowItem != null) && AbstractOperationCall.class.isAssignableFrom(rowItem.getClass())) { - if (((AbstractOperationCall<?>) rowItem).isFailed()) { - this.getStyleClass().add("failed"); - } - } - } - - super.updateItem((T) item, empty); - - if (item != null) { - this.setText(item.toString() + " %"); - } else { - this.setText(""); - } - } - }; - - return cell; - - } -} diff --git a/src/main/java/kieker/diagnosis/components/ThresholdStringConverter.java b/src/main/java/kieker/diagnosis/components/ThresholdStringConverter.java deleted file mode 100644 index 84b71a7070b03a7e34606a1cca215faa82359459..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/ThresholdStringConverter.java +++ /dev/null @@ -1,55 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import java.util.Locale; -import java.util.ResourceBundle; - -import javafx.util.StringConverter; -import kieker.diagnosis.model.PropertiesModel.Threshold; -import kieker.diagnosis.util.Mapper; - -public class ThresholdStringConverter extends StringConverter<Threshold> { - - private static Mapper<Threshold, String> thresholdMapper; - - static { - final String bundleBaseName = "locale.kieker.diagnosis.components.components"; - final ResourceBundle resourceBundle = ResourceBundle.getBundle(bundleBaseName, Locale.getDefault()); - final String threshold = resourceBundle.getString("threshold"); - - ThresholdStringConverter.thresholdMapper = new Mapper<>(); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_0_5).to(threshold + " < 0.5 %"); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_1).to(threshold + " < 1 %"); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_10).to(threshold + " < 10 %"); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_20).to(threshold + " < 20 %"); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_30).to(threshold + " < 30 %"); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_40).to(threshold + " < 40 %"); - ThresholdStringConverter.thresholdMapper.map(Threshold.THRESHOLD_50).to(threshold + " < 50 %"); - } - - @Override - public Threshold fromString(final String string) { - return ThresholdStringConverter.thresholdMapper.invertedResolve(string); - } - - @Override - public String toString(final Threshold object) { - return ThresholdStringConverter.thresholdMapper.resolve(object); - } - -} diff --git a/src/main/java/kieker/diagnosis/components/TimestampStringConverter.java b/src/main/java/kieker/diagnosis/components/TimestampStringConverter.java deleted file mode 100644 index fda214d93700c048af5ed45972e248f1651dc6ad..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/TimestampStringConverter.java +++ /dev/null @@ -1,46 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import javafx.util.StringConverter; -import kieker.diagnosis.model.PropertiesModel.TimestampTypes; -import kieker.diagnosis.util.Mapper; - -public class TimestampStringConverter extends StringConverter<TimestampTypes> { - - private static Mapper<TimestampTypes, String> mapper; - - static { - TimestampStringConverter.mapper = new Mapper<>(); - TimestampStringConverter.mapper.map(TimestampTypes.TIMESTAMP).to("1418993603113900610"); - TimestampStringConverter.mapper.map(TimestampTypes.DATE).to("19.12.14"); - TimestampStringConverter.mapper.map(TimestampTypes.SHORT_TIME).to("13:53"); - TimestampStringConverter.mapper.map(TimestampTypes.LONG_TIME).to("13:53:23"); - TimestampStringConverter.mapper.map(TimestampTypes.DATE_AND_TIME).to("19.12.2014 13:53:23"); - } - - @Override - public TimestampTypes fromString(final String string) { - return TimestampStringConverter.mapper.invertedResolve(string); - } - - @Override - public String toString(final TimestampTypes object) { - return TimestampStringConverter.mapper.resolve(object); - } - -} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/components/TimestampTableCellFactory.java b/src/main/java/kieker/diagnosis/components/TimestampTableCellFactory.java deleted file mode 100644 index aee5ea8f8938722f8e000f6f92da91b0994a104c..0000000000000000000000000000000000000000 --- a/src/main/java/kieker/diagnosis/components/TimestampTableCellFactory.java +++ /dev/null @@ -1,66 +0,0 @@ -/*************************************************************************** - * Copyright 2015 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.diagnosis.components; - -import javafx.scene.control.TableCell; -import javafx.scene.control.TableColumn; -import javafx.scene.control.TableRow; -import javafx.util.Callback; -import kieker.diagnosis.domain.AbstractOperationCall; -import kieker.diagnosis.model.DataModel; -import kieker.diagnosis.util.NameConverter; - -public class TimestampTableCellFactory<S, T> implements Callback<TableColumn<S, T>, TableCell<S, T>> { - - @Override - public TableCell<S, T> call(final TableColumn<S, T> p) { - return new FailedTableCell(); - } - - private final class FailedTableCell extends TableCell<S, T> { - - @Override - protected void updateItem(final T item, final boolean empty) { - setFailedStyle(); - - super.updateItem(item, empty); - - if (empty || item == null) { - setText(null); - setGraphic(null); - } else { - setText(NameConverter.toTimestampString((Long) item, DataModel.getInstance().getTimeUnit())); - } - } - - private void setFailedStyle() { - final TableRow<?> currentRow = super.getTableRow(); - - if (currentRow != null) { - final Object rowItem = currentRow.getItem(); - - super.getStyleClass().remove("failed"); - if (rowItem instanceof AbstractOperationCall) { - if (((AbstractOperationCall<?>) rowItem).isFailed()) { - super.getStyleClass().add("failed"); - } - } - } - } - - } -} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/components/converter/AbstractStringConverter.java b/src/main/java/kieker/diagnosis/components/converter/AbstractStringConverter.java new file mode 100644 index 0000000000000000000000000000000000000000..1069e8b913be8e417b4342f1a0f43651875174f8 --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/converter/AbstractStringConverter.java @@ -0,0 +1,51 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.converter; + +import java.util.Locale; +import java.util.ResourceBundle; + +import javafx.util.StringConverter; +import kieker.diagnosis.util.Mapper; + +/** + * @author Nils Christian Ehmke + */ +public abstract class AbstractStringConverter<T> extends StringConverter<T> { + + private final Mapper<T, String> mapper = new Mapper<>(); + + public AbstractStringConverter() { + final String bundleBaseName = "locale.kieker.diagnosis.components.components"; + final ResourceBundle resourceBundle = ResourceBundle.getBundle(bundleBaseName, Locale.getDefault()); + + this.fillMapper(mapper, resourceBundle); + } + + protected abstract void fillMapper(final Mapper<T, String> mapper, final ResourceBundle resourceBundle); + + @Override + public T fromString(final String string) { + return this.mapper.invertedResolve(string); + } + + @Override + public String toString(final T object) { + return this.mapper.resolve(object); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/ComponentNamesStringConverter.java b/src/main/java/kieker/diagnosis/components/converter/ComponentNamesStringConverter.java similarity index 54% rename from src/main/java/kieker/diagnosis/components/ComponentNamesStringConverter.java rename to src/main/java/kieker/diagnosis/components/converter/ComponentNamesStringConverter.java index 36c61287051bf7648398ae1ec91361a146c230c6..6fd4d0792c1ea5f309cfc4b2834ea4de439f6f94 100644 --- a/src/main/java/kieker/diagnosis/components/ComponentNamesStringConverter.java +++ b/src/main/java/kieker/diagnosis/components/converter/ComponentNamesStringConverter.java @@ -14,33 +14,22 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.converter; + +import java.util.ResourceBundle; -import javafx.util.StringConverter; import kieker.diagnosis.model.PropertiesModel.ComponentNames; import kieker.diagnosis.util.Mapper; /** * @author Nils Christian Ehmke */ -public class ComponentNamesStringConverter extends StringConverter<ComponentNames> { - - private static Mapper<ComponentNames, String> componentMapper; - - static { - ComponentNamesStringConverter.componentMapper = new Mapper<>(); - ComponentNamesStringConverter.componentMapper.map(ComponentNames.SHORT).to("Catalog"); - ComponentNamesStringConverter.componentMapper.map(ComponentNames.LONG).to("kieker.examples.bookstore.Catalog"); - } - +public class ComponentNamesStringConverter extends AbstractStringConverter<ComponentNames> { + @Override - public ComponentNames fromString(final String string) { - return ComponentNamesStringConverter.componentMapper.invertedResolve(string); + protected void fillMapper(final Mapper<ComponentNames, String> mapper, final ResourceBundle resourceBundle) { + mapper.map(ComponentNames.SHORT).to("Catalog"); + mapper.map(ComponentNames.LONG).to("kieker.examples.bookstore.Catalog"); } - - @Override - public String toString(final ComponentNames object) { - return ComponentNamesStringConverter.componentMapper.resolve(object); - } - + } diff --git a/src/main/java/kieker/diagnosis/components/OperationNamesStringConverter.java b/src/main/java/kieker/diagnosis/components/converter/OperationNamesStringConverter.java similarity index 53% rename from src/main/java/kieker/diagnosis/components/OperationNamesStringConverter.java rename to src/main/java/kieker/diagnosis/components/converter/OperationNamesStringConverter.java index 9c7b3dde6d1c1b22dd5fcd4630cbc990a0a8be04..9aec4387be68a8697fcfdec51f776f620c34db97 100644 --- a/src/main/java/kieker/diagnosis/components/OperationNamesStringConverter.java +++ b/src/main/java/kieker/diagnosis/components/converter/OperationNamesStringConverter.java @@ -14,33 +14,22 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.converter; + +import java.util.ResourceBundle; -import javafx.util.StringConverter; import kieker.diagnosis.model.PropertiesModel.OperationNames; import kieker.diagnosis.util.Mapper; /** * @author Nils Christian Ehmke */ -public class OperationNamesStringConverter extends StringConverter<OperationNames> { - - private static Mapper<OperationNames, String> operationMapper; - - static { - OperationNamesStringConverter.operationMapper = new Mapper<>(); - OperationNamesStringConverter.operationMapper.map(OperationNames.SHORT).to("getBook(...)"); - OperationNamesStringConverter.operationMapper.map(OperationNames.LONG).to("public void kieker.examples.bookstore.Catalog.getBook(boolean)"); - } - - @Override - public OperationNames fromString(final String string) { - return OperationNamesStringConverter.operationMapper.invertedResolve(string); - } +public class OperationNamesStringConverter extends AbstractStringConverter<OperationNames> { @Override - public String toString(final OperationNames object) { - return OperationNamesStringConverter.operationMapper.resolve(object); + protected void fillMapper(final Mapper<OperationNames, String> mapper, final ResourceBundle resourceBundle) { + mapper.map(OperationNames.SHORT).to("getBook(...)"); + mapper.map(OperationNames.LONG).to("public void kieker.examples.bookstore.Catalog.getBook(boolean)"); } } diff --git a/src/main/java/kieker/diagnosis/components/converter/ThresholdStringConverter.java b/src/main/java/kieker/diagnosis/components/converter/ThresholdStringConverter.java new file mode 100644 index 0000000000000000000000000000000000000000..5c2c116007f17d7234643e1fca2e95a57866b78b --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/converter/ThresholdStringConverter.java @@ -0,0 +1,39 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.converter; + +import java.util.ResourceBundle; + +import kieker.diagnosis.model.PropertiesModel.Threshold; +import kieker.diagnosis.util.Mapper; + +public class ThresholdStringConverter extends AbstractStringConverter<Threshold> { + + @Override + protected void fillMapper(Mapper<Threshold, String> mapper, final ResourceBundle resourceBundle) { + final String threshold = resourceBundle.getString("threshold"); + + mapper.map(Threshold.THRESHOLD_0_5).to(threshold + " < 0.5 %"); + mapper.map(Threshold.THRESHOLD_1).to(threshold + " < 1 %"); + mapper.map(Threshold.THRESHOLD_10).to(threshold + " < 10 %"); + mapper.map(Threshold.THRESHOLD_20).to(threshold + " < 20 %"); + mapper.map(Threshold.THRESHOLD_30).to(threshold + " < 30 %"); + mapper.map(Threshold.THRESHOLD_40).to(threshold + " < 40 %"); + mapper.map(Threshold.THRESHOLD_50).to(threshold + " < 50 %"); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/TimeUnitStringConverter.java b/src/main/java/kieker/diagnosis/components/converter/TimeUnitStringConverter.java similarity index 52% rename from src/main/java/kieker/diagnosis/components/TimeUnitStringConverter.java rename to src/main/java/kieker/diagnosis/components/converter/TimeUnitStringConverter.java index 1e0e5f3bb9eeacae54cecb54ea90e0e1d2b6748b..acd41cfd57c72d0af52973fd1151bb309a2d8066 100644 --- a/src/main/java/kieker/diagnosis/components/TimeUnitStringConverter.java +++ b/src/main/java/kieker/diagnosis/components/converter/TimeUnitStringConverter.java @@ -14,26 +14,20 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.converter; -import java.util.Locale; import java.util.ResourceBundle; import java.util.concurrent.TimeUnit; -import javafx.util.StringConverter; import kieker.diagnosis.util.Mapper; /** * @author Nils Christian Ehmke */ -public class TimeUnitStringConverter extends StringConverter<TimeUnit> { - - private static Mapper<TimeUnit, String> timeUnitMapper; - - static { - final String bundleBaseName = "locale.kieker.diagnosis.components.components"; - final ResourceBundle resourceBundle = ResourceBundle.getBundle(bundleBaseName, Locale.getDefault()); +public class TimeUnitStringConverter extends AbstractStringConverter<TimeUnit> { + @Override + protected void fillMapper(Mapper<TimeUnit, String> mapper, final ResourceBundle resourceBundle) { final String nanoseconds = resourceBundle.getString("nanoseconds"); final String microseconds = resourceBundle.getString("microseconds"); final String milliseconds = resourceBundle.getString("milliseconds"); @@ -41,23 +35,12 @@ public class TimeUnitStringConverter extends StringConverter<TimeUnit> { final String minutes = resourceBundle.getString("minutes"); final String hours = resourceBundle.getString("hours"); - TimeUnitStringConverter.timeUnitMapper = new Mapper<>(); - TimeUnitStringConverter.timeUnitMapper.map(TimeUnit.NANOSECONDS).to(nanoseconds); - TimeUnitStringConverter.timeUnitMapper.map(TimeUnit.MICROSECONDS).to(microseconds); - TimeUnitStringConverter.timeUnitMapper.map(TimeUnit.MILLISECONDS).to(milliseconds); - TimeUnitStringConverter.timeUnitMapper.map(TimeUnit.SECONDS).to(seconds); - TimeUnitStringConverter.timeUnitMapper.map(TimeUnit.MINUTES).to(minutes); - TimeUnitStringConverter.timeUnitMapper.map(TimeUnit.HOURS).to(hours); - } - - @Override - public TimeUnit fromString(final String string) { - return TimeUnitStringConverter.timeUnitMapper.invertedResolve(string); - } - - @Override - public String toString(final TimeUnit object) { - return TimeUnitStringConverter.timeUnitMapper.resolve(object); + mapper.map(TimeUnit.NANOSECONDS).to(nanoseconds); + mapper.map(TimeUnit.MICROSECONDS).to(microseconds); + mapper.map(TimeUnit.MILLISECONDS).to(milliseconds); + mapper.map(TimeUnit.SECONDS).to(seconds); + mapper.map(TimeUnit.MINUTES).to(minutes); + mapper.map(TimeUnit.HOURS).to(hours); } -} +} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/components/converter/TimestampTypesStringConverter.java b/src/main/java/kieker/diagnosis/components/converter/TimestampTypesStringConverter.java new file mode 100644 index 0000000000000000000000000000000000000000..ad8581770cc41306bcd98ee9dce07c02316ca6ad --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/converter/TimestampTypesStringConverter.java @@ -0,0 +1,35 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.converter; + +import java.util.ResourceBundle; + +import kieker.diagnosis.model.PropertiesModel.TimestampTypes; +import kieker.diagnosis.util.Mapper; + +public class TimestampTypesStringConverter extends AbstractStringConverter<TimestampTypes> { + + @Override + protected void fillMapper(Mapper<TimestampTypes, String> mapper, final ResourceBundle resourceBundle) { + mapper.map(TimestampTypes.TIMESTAMP).to("1418993603113900610"); + mapper.map(TimestampTypes.DATE).to("19.12.14"); + mapper.map(TimestampTypes.SHORT_TIME).to("13:53"); + mapper.map(TimestampTypes.LONG_TIME).to("13:53:23"); + mapper.map(TimestampTypes.DATE_AND_TIME).to("19.12.2014 13:53:23"); + } + +} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/components/FailedTableCellFactory.java b/src/main/java/kieker/diagnosis/components/table/AbstractTableCellFactory.java similarity index 88% rename from src/main/java/kieker/diagnosis/components/FailedTableCellFactory.java rename to src/main/java/kieker/diagnosis/components/table/AbstractTableCellFactory.java index 557e2e0e556683438150bc0bf37243cb974b79cc..bf54049f14bb84711245b324d4ffddb69d71ad13 100644 --- a/src/main/java/kieker/diagnosis/components/FailedTableCellFactory.java +++ b/src/main/java/kieker/diagnosis/components/table/AbstractTableCellFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.table; import javafx.scene.control.TableCell; import javafx.scene.control.TableColumn; @@ -22,29 +22,28 @@ import javafx.scene.control.TableRow; import javafx.util.Callback; import kieker.diagnosis.domain.AbstractOperationCall; -/** - * @author Nils Christian Ehmke - */ -public final class FailedTableCellFactory<S, T> implements Callback<TableColumn<S, T>, TableCell<S, T>> { +public abstract class AbstractTableCellFactory<S, T> implements Callback<TableColumn<S, T>, TableCell<S, T>> { @Override public TableCell<S, T> call(final TableColumn<S, T> p) { return new FailedTableCell(); } + + protected abstract String getItemLabel(T item); private final class FailedTableCell extends TableCell<S, T> { @Override protected void updateItem(final T item, final boolean empty) { setFailedStyle(); - + super.updateItem(item, empty); if (empty || item == null) { setText(null); setGraphic(null); } else { - setText(item.toString()); + setText(getItemLabel(item)); } } @@ -64,4 +63,4 @@ public final class FailedTableCellFactory<S, T> implements Callback<TableColumn< } } -} +} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/components/ComponentCellValueFactory.java b/src/main/java/kieker/diagnosis/components/table/ComponentCellValueFactory.java similarity index 98% rename from src/main/java/kieker/diagnosis/components/ComponentCellValueFactory.java rename to src/main/java/kieker/diagnosis/components/table/ComponentCellValueFactory.java index 7c5c65e387b99f6aca789511807b2cf4d9e541b1..ede562d19d7a1278f6ef3bee8e88fe6d17e7c64c 100644 --- a/src/main/java/kieker/diagnosis/components/ComponentCellValueFactory.java +++ b/src/main/java/kieker/diagnosis/components/table/ComponentCellValueFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.table; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; diff --git a/src/main/java/kieker/diagnosis/components/DurationCellValueFactory.java b/src/main/java/kieker/diagnosis/components/table/DurationCellValueFactory.java similarity index 98% rename from src/main/java/kieker/diagnosis/components/DurationCellValueFactory.java rename to src/main/java/kieker/diagnosis/components/table/DurationCellValueFactory.java index 5a6dfb7d8d3dd92b22f8b9e08ab3ed2bd294dae3..afccf51f44fd8b9d1a0de6e0a95cc95edecbfd0a 100644 --- a/src/main/java/kieker/diagnosis/components/DurationCellValueFactory.java +++ b/src/main/java/kieker/diagnosis/components/table/DurationCellValueFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.table; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; diff --git a/src/main/java/kieker/diagnosis/components/table/DurationTableCellFactory.java b/src/main/java/kieker/diagnosis/components/table/DurationTableCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..4394bda94ef6f37c02745f04dbc440fcf8131a48 --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/table/DurationTableCellFactory.java @@ -0,0 +1,32 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.table; + +import kieker.diagnosis.model.PropertiesModel; +import kieker.diagnosis.util.NameConverter; + +/** + * @author Nils Christian Ehmke + */ +public final class DurationTableCellFactory<S, T> extends AbstractTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return (item.toString() + " " + NameConverter.toShortTimeUnit(PropertiesModel.getInstance().getTimeUnit())); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/table/FailedTableCellFactory.java b/src/main/java/kieker/diagnosis/components/table/FailedTableCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..64091c1b570e5e509788ee2d4722e5b1d268baa8 --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/table/FailedTableCellFactory.java @@ -0,0 +1,29 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.table; + +/** + * @author Nils Christian Ehmke + */ +public final class FailedTableCellFactory<S, T> extends AbstractTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return item.toString(); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/OperationCellValueFactory.java b/src/main/java/kieker/diagnosis/components/table/OperationCellValueFactory.java similarity index 95% rename from src/main/java/kieker/diagnosis/components/OperationCellValueFactory.java rename to src/main/java/kieker/diagnosis/components/table/OperationCellValueFactory.java index 01ae5bc66830a67af6612fdd55a76d247ac786da..16465c9fc0b6831d21b0614a1507274476bbbe38 100644 --- a/src/main/java/kieker/diagnosis/components/OperationCellValueFactory.java +++ b/src/main/java/kieker/diagnosis/components/table/OperationCellValueFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.table; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -28,6 +28,7 @@ import javafx.beans.property.ReadOnlyObjectWrapper; import javafx.beans.value.ObservableValue; import javafx.scene.control.TableColumn.CellDataFeatures; import javafx.util.Callback; +import kieker.diagnosis.components.treetable.DurationTreeCellValueFactory; import kieker.diagnosis.model.PropertiesModel; import kieker.diagnosis.model.PropertiesModel.OperationNames; import kieker.diagnosis.util.NameConverter; diff --git a/src/main/java/kieker/diagnosis/components/table/TimestampTableCellFactory.java b/src/main/java/kieker/diagnosis/components/table/TimestampTableCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..3ab7682ab62a4455be3d66171bc5764f7b9e1dfb --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/table/TimestampTableCellFactory.java @@ -0,0 +1,29 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.table; + +import kieker.diagnosis.model.DataModel; +import kieker.diagnosis.util.NameConverter; + +public class TimestampTableCellFactory<S, T> extends AbstractTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return (NameConverter.toTimestampString((Long) item, DataModel.getInstance().getTimeUnit())); + } + +} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/components/AbstractLazyOperationCallTreeItem.java b/src/main/java/kieker/diagnosis/components/treetable/AbstractLazyOperationCallTreeItem.java similarity index 97% rename from src/main/java/kieker/diagnosis/components/AbstractLazyOperationCallTreeItem.java rename to src/main/java/kieker/diagnosis/components/treetable/AbstractLazyOperationCallTreeItem.java index e4ca9d7307e4e202cd8178ae3b046df3b8448e84..9d644eab9013ea8cda9f5e0400fa3fe609e76807 100644 --- a/src/main/java/kieker/diagnosis/components/AbstractLazyOperationCallTreeItem.java +++ b/src/main/java/kieker/diagnosis/components/treetable/AbstractLazyOperationCallTreeItem.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import javafx.collections.ObservableList; import javafx.scene.control.TreeItem; diff --git a/src/main/java/kieker/diagnosis/components/TimestampTreeTableCellFactory.java b/src/main/java/kieker/diagnosis/components/treetable/AbstractTreeTableCellFactory.java similarity index 84% rename from src/main/java/kieker/diagnosis/components/TimestampTreeTableCellFactory.java rename to src/main/java/kieker/diagnosis/components/treetable/AbstractTreeTableCellFactory.java index 81138111d1306fefa60ca81c8bb36ecf91138dbe..a87fc62fb2e8f93a02459686b080913738935fe1 100644 --- a/src/main/java/kieker/diagnosis/components/TimestampTreeTableCellFactory.java +++ b/src/main/java/kieker/diagnosis/components/treetable/AbstractTreeTableCellFactory.java @@ -14,22 +14,22 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import javafx.scene.control.TreeTableCell; import javafx.scene.control.TreeTableColumn; import javafx.scene.control.TreeTableRow; import javafx.util.Callback; import kieker.diagnosis.domain.AbstractOperationCall; -import kieker.diagnosis.model.DataModel; -import kieker.diagnosis.util.NameConverter; -public class TimestampTreeTableCellFactory<S, T> implements Callback<TreeTableColumn<S, T>, TreeTableCell<S, T>> { +public abstract class AbstractTreeTableCellFactory<S, T> implements Callback<TreeTableColumn<S, T>, TreeTableCell<S, T>> { @Override public TreeTableCell<S, T> call(final TreeTableColumn<S, T> p) { return new FailedTableCell(); } + + protected abstract String getItemLabel(T item); private final class FailedTableCell extends TreeTableCell<S, T> { @@ -43,7 +43,7 @@ public class TimestampTreeTableCellFactory<S, T> implements Callback<TreeTableCo setText(null); setGraphic(null); } else { - setText(NameConverter.toTimestampString((Long) item, DataModel.getInstance().getTimeUnit())); + setText(getItemLabel(item)); } } diff --git a/src/main/java/kieker/diagnosis/components/ComponentTreeCellValueFactory.java b/src/main/java/kieker/diagnosis/components/treetable/ComponentTreeCellValueFactory.java similarity index 98% rename from src/main/java/kieker/diagnosis/components/ComponentTreeCellValueFactory.java rename to src/main/java/kieker/diagnosis/components/treetable/ComponentTreeCellValueFactory.java index 07a32fd3b74342777d655deaca490249080ff460..edf52fa5afb25a10b52950023feb66507de94daf 100644 --- a/src/main/java/kieker/diagnosis/components/ComponentTreeCellValueFactory.java +++ b/src/main/java/kieker/diagnosis/components/treetable/ComponentTreeCellValueFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; diff --git a/src/main/java/kieker/diagnosis/components/treetable/DurationTreeCellFactory.java b/src/main/java/kieker/diagnosis/components/treetable/DurationTreeCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..0e3b414f5973b4092701dabe4cb1f5689ffa8890 --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/treetable/DurationTreeCellFactory.java @@ -0,0 +1,32 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.treetable; + +import kieker.diagnosis.model.PropertiesModel; +import kieker.diagnosis.util.NameConverter; + +/** + * @author Nils Christian Ehmke + */ +public final class DurationTreeCellFactory<S, T> extends AbstractTreeTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return (item.toString() + " " + NameConverter.toShortTimeUnit(PropertiesModel.getInstance().getTimeUnit())); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/DurationTreeCellValueFactory.java b/src/main/java/kieker/diagnosis/components/treetable/DurationTreeCellValueFactory.java similarity index 98% rename from src/main/java/kieker/diagnosis/components/DurationTreeCellValueFactory.java rename to src/main/java/kieker/diagnosis/components/treetable/DurationTreeCellValueFactory.java index 9d63d1ef52b1e10fa31bc1c8060b80618084232d..e2ac10c84a56e7c469fe3cc15876de40399ca042 100644 --- a/src/main/java/kieker/diagnosis/components/DurationTreeCellValueFactory.java +++ b/src/main/java/kieker/diagnosis/components/treetable/DurationTreeCellValueFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; diff --git a/src/main/java/kieker/diagnosis/components/treetable/FailedTreeCellFactory.java b/src/main/java/kieker/diagnosis/components/treetable/FailedTreeCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..ba6af095dbcb98afff9196e949cb3d81f985c587 --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/treetable/FailedTreeCellFactory.java @@ -0,0 +1,29 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.treetable; + +/** + * @author Nils Christian Ehmke + */ +public final class FailedTreeCellFactory<S, T> extends AbstractTreeTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return item.toString(); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/LazyAggregatedOperationCallTreeItem.java b/src/main/java/kieker/diagnosis/components/treetable/LazyAggregatedOperationCallTreeItem.java similarity index 96% rename from src/main/java/kieker/diagnosis/components/LazyAggregatedOperationCallTreeItem.java rename to src/main/java/kieker/diagnosis/components/treetable/LazyAggregatedOperationCallTreeItem.java index 8d32b656d148e7ed3a93063760ab2d5e0d3fa284..65a9156cda59c20c5e28a96690be053412d782f8 100644 --- a/src/main/java/kieker/diagnosis/components/LazyAggregatedOperationCallTreeItem.java +++ b/src/main/java/kieker/diagnosis/components/treetable/LazyAggregatedOperationCallTreeItem.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/kieker/diagnosis/components/LazyOperationCallTreeItem.java b/src/main/java/kieker/diagnosis/components/treetable/LazyOperationCallTreeItem.java similarity index 98% rename from src/main/java/kieker/diagnosis/components/LazyOperationCallTreeItem.java rename to src/main/java/kieker/diagnosis/components/treetable/LazyOperationCallTreeItem.java index 72f1b6f4bb71bd32aa47f212f7aca455831aeafd..8cb994d81989eeff86a48264a55854176244919d 100644 --- a/src/main/java/kieker/diagnosis/components/LazyOperationCallTreeItem.java +++ b/src/main/java/kieker/diagnosis/components/treetable/LazyOperationCallTreeItem.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import java.util.ArrayList; import java.util.Comparator; diff --git a/src/main/java/kieker/diagnosis/components/OperationTreeCellValueFactory.java b/src/main/java/kieker/diagnosis/components/treetable/OperationTreeCellValueFactory.java similarity index 98% rename from src/main/java/kieker/diagnosis/components/OperationTreeCellValueFactory.java rename to src/main/java/kieker/diagnosis/components/treetable/OperationTreeCellValueFactory.java index 53a043f1384c3c16a2b738c68b73707f5340c8ef..ff734098a69fd806e3ff9e4e5585b3bba4d49b1a 100644 --- a/src/main/java/kieker/diagnosis/components/OperationTreeCellValueFactory.java +++ b/src/main/java/kieker/diagnosis/components/treetable/OperationTreeCellValueFactory.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.diagnosis.components; +package kieker.diagnosis.components.treetable; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; diff --git a/src/main/java/kieker/diagnosis/components/treetable/PercentTreeCellFactory.java b/src/main/java/kieker/diagnosis/components/treetable/PercentTreeCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..847e04c42d935e3c8d89b0cdc72a48f615ddebb6 --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/treetable/PercentTreeCellFactory.java @@ -0,0 +1,29 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.treetable; + +/** + * @author Nils Christian Ehmke + */ +public final class PercentTreeCellFactory<S, T> extends AbstractTreeTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return (item.toString() + " %"); + } + +} diff --git a/src/main/java/kieker/diagnosis/components/treetable/TimestampTreeTableCellFactory.java b/src/main/java/kieker/diagnosis/components/treetable/TimestampTreeTableCellFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..e2a310d5d2bda605ff1171101df042560024623d --- /dev/null +++ b/src/main/java/kieker/diagnosis/components/treetable/TimestampTreeTableCellFactory.java @@ -0,0 +1,29 @@ +/*************************************************************************** + * Copyright 2015 Kieker Project (http://kieker-monitoring.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + ***************************************************************************/ + +package kieker.diagnosis.components.treetable; + +import kieker.diagnosis.model.DataModel; +import kieker.diagnosis.util.NameConverter; + +public final class TimestampTreeTableCellFactory<S, T> extends AbstractTreeTableCellFactory<S, T> { + + @Override + protected String getItemLabel(T item) { + return NameConverter.toTimestampString((Long) item, DataModel.getInstance().getTimeUnit()); + } + +} \ No newline at end of file diff --git a/src/main/java/kieker/diagnosis/controller/aggregatedtraces/AggregatedTracesViewController.java b/src/main/java/kieker/diagnosis/controller/aggregatedtraces/AggregatedTracesViewController.java index a7a98766edde86e2fc4843a1bdf00d71a20a9212..3d446d8182163a3b3b2df350031bab763af34171 100644 --- a/src/main/java/kieker/diagnosis/controller/aggregatedtraces/AggregatedTracesViewController.java +++ b/src/main/java/kieker/diagnosis/controller/aggregatedtraces/AggregatedTracesViewController.java @@ -31,7 +31,7 @@ import javafx.scene.control.TextField; import javafx.scene.control.TreeItem; import javafx.scene.control.TreeTableView; import javafx.scene.input.MouseEvent; -import kieker.diagnosis.components.LazyAggregatedOperationCallTreeItem; +import kieker.diagnosis.components.treetable.LazyAggregatedOperationCallTreeItem; import kieker.diagnosis.controller.AbstractController; import kieker.diagnosis.domain.AggregatedOperationCall; import kieker.diagnosis.domain.AggregatedTrace; diff --git a/src/main/java/kieker/diagnosis/controller/traces/TracesViewController.java b/src/main/java/kieker/diagnosis/controller/traces/TracesViewController.java index f9b390de8c77f29a910874f3ef58d3926c7b0720..506845ec7d3a7e72e9525c57ec4ff31aca117870 100644 --- a/src/main/java/kieker/diagnosis/controller/traces/TracesViewController.java +++ b/src/main/java/kieker/diagnosis/controller/traces/TracesViewController.java @@ -33,7 +33,7 @@ import javafx.scene.control.TreeItem; import javafx.scene.control.TreeTableView; import javafx.scene.input.MouseEvent; import jfxtras.scene.control.CalendarTimeTextField; -import kieker.diagnosis.components.LazyOperationCallTreeItem; +import kieker.diagnosis.components.treetable.LazyOperationCallTreeItem; import kieker.diagnosis.controller.AbstractController; import kieker.diagnosis.domain.OperationCall; import kieker.diagnosis.domain.Trace; diff --git a/src/main/resources/views/kieker/diagnosis/view/aggregatedcalls/AggregatedCallsView.fxml b/src/main/resources/views/kieker/diagnosis/view/aggregatedcalls/AggregatedCallsView.fxml index 36cb598d54d1882850d370d8f25f0a0217765b15..e10da09c584f23680625b3c220fb8a34a13602ab 100644 --- a/src/main/resources/views/kieker/diagnosis/view/aggregatedcalls/AggregatedCallsView.fxml +++ b/src/main/resources/views/kieker/diagnosis/view/aggregatedcalls/AggregatedCallsView.fxml @@ -1,6 +1,7 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.control.cell.*?> +<?import kieker.diagnosis.components.table.*?> <GridPane xmlns:fx="http://javafx.com/fxml" AnchorPane.bottomAnchor="0.0" AnchorPane.topAnchor="0.0" @@ -43,7 +44,7 @@ <columns> <TableColumn text="%AggregatedCallsView.tblclmnExecutionContainer.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> <PropertyValueFactory property="container" /> @@ -52,25 +53,25 @@ <TableColumn text="%AggregatedCallsView.tblclmnComponent.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.ComponentCellValueFactory property="component" /> + <ComponentCellValueFactory property="component" /> </cellValueFactory> </TableColumn> <TableColumn text="%AggregatedCallsView.tblclmnOperation.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.OperationCellValueFactory property="operation" /> + <OperationCellValueFactory property="operation" /> </cellValueFactory> </TableColumn> <TableColumn text="%AggregatedCallsView.tblclmnNumberOfCalls.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> <PropertyValueFactory property="calls" /> @@ -79,50 +80,50 @@ <TableColumn text="%AggregatedCallsView.tblclmnMinimalDuration.text"> <cellFactory> - <kieker.diagnosis.components.DurationTableCellFactory /> + <DurationTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationCellValueFactory + <DurationCellValueFactory property="minDuration" /> </cellValueFactory> </TableColumn> <TableColumn text="%AggregatedCallsView.tblclmnMeanDuration.text"> <cellFactory> - <kieker.diagnosis.components.DurationTableCellFactory /> + <DurationTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationCellValueFactory + <DurationCellValueFactory property="meanDuration" /> </cellValueFactory> </TableColumn> <TableColumn text="%AggregatedCallsView.tblclmnMedianDuration.text"> <cellFactory> - <kieker.diagnosis.components.DurationTableCellFactory /> + <DurationTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationCellValueFactory + <DurationCellValueFactory property="medianDuration" /> </cellValueFactory> </TableColumn> <TableColumn text="%AggregatedCallsView.tblclmnMaximalDuration.text"> <cellFactory> - <kieker.diagnosis.components.DurationTableCellFactory /> + <DurationTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationCellValueFactory + <DurationCellValueFactory property="maxDuration" /> </cellValueFactory> </TableColumn> <TableColumn text="%AggregatedCallsView.tblclmnTotalDuration.text"> <cellFactory> - <kieker.diagnosis.components.DurationTableCellFactory /> + <DurationTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationCellValueFactory + <DurationCellValueFactory property="totalDuration" /> </cellValueFactory> </TableColumn> diff --git a/src/main/resources/views/kieker/diagnosis/view/aggregatedtraces/AggregatedTracesView.fxml b/src/main/resources/views/kieker/diagnosis/view/aggregatedtraces/AggregatedTracesView.fxml index 4d75fee24caee0b20f66f675bd590491b4a9b7a7..b518c4c78cdc9fd76615107faaf9b6eabd8b6ba9 100644 --- a/src/main/resources/views/kieker/diagnosis/view/aggregatedtraces/AggregatedTracesView.fxml +++ b/src/main/resources/views/kieker/diagnosis/view/aggregatedtraces/AggregatedTracesView.fxml @@ -1,6 +1,7 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.control.cell.*?> +<?import kieker.diagnosis.components.treetable.*?> <GridPane fx:id="view" xmlns:fx="http://javafx.com/fxml" AnchorPane.bottomAnchor="0.0" AnchorPane.topAnchor="0.0" @@ -44,7 +45,7 @@ <columns> <TreeTableColumn text="%AggregatedTracesView.trclmnExecutionContainer.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory/> + <FailedTreeCellFactory/> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory property="container" /> @@ -53,25 +54,25 @@ <TreeTableColumn text="%AggregatedTracesView.trclmnComponent.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.ComponentTreeCellValueFactory property="component" /> + <ComponentTreeCellValueFactory property="component" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%AggregatedTracesView.trclmnOperation.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.OperationTreeCellValueFactory property="operation" /> + <OperationTreeCellValueFactory property="operation" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%AggregatedTracesView.trclmnCalls.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory property="calls" /> @@ -80,7 +81,7 @@ <TreeTableColumn text="%AggregatedTracesView.trclmnTraceDepth.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory property="stackDepth" /> @@ -89,7 +90,7 @@ <TreeTableColumn text="%AggregatedTracesView.trclmnTraceSize.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory property="stackSize" /> @@ -98,50 +99,50 @@ <TreeTableColumn text="%AggregatedTracesView.trclmnMinimalDuration.text" > <cellFactory> - <kieker.diagnosis.components.DurationTreeCellFactory /> + <DurationTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationTreeCellValueFactory + <DurationTreeCellValueFactory property="minDuration" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%AggregatedTracesView.trclmnAverageDuration.text" > <cellFactory> - <kieker.diagnosis.components.DurationTreeCellFactory /> + <DurationTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationTreeCellValueFactory + <DurationTreeCellValueFactory property="meanDuration" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%AggregatedTracesView.trclmnMeanDuration.text" > <cellFactory> - <kieker.diagnosis.components.DurationTreeCellFactory /> + <DurationTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationTreeCellValueFactory + <DurationTreeCellValueFactory property="medianDuration" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%AggregatedTracesView.trclmnMaximalDuration.text" > <cellFactory> - <kieker.diagnosis.components.DurationTreeCellFactory /> + <DurationTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationTreeCellValueFactory + <DurationTreeCellValueFactory property="maxDuration" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%AggregatedTracesView.trclmnTotalDuration.text" > <cellFactory> - <kieker.diagnosis.components.DurationTreeCellFactory /> + <DurationTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationTreeCellValueFactory + <DurationTreeCellValueFactory property="totalDuration" /> </cellValueFactory> </TreeTableColumn> diff --git a/src/main/resources/views/kieker/diagnosis/view/calls/CallsView.fxml b/src/main/resources/views/kieker/diagnosis/view/calls/CallsView.fxml index a98c1c6142f5e149a51f2a878f57bfbb47b4c368..b38e787f23021b1d3589cdae1bb30781a85528e7 100644 --- a/src/main/resources/views/kieker/diagnosis/view/calls/CallsView.fxml +++ b/src/main/resources/views/kieker/diagnosis/view/calls/CallsView.fxml @@ -3,6 +3,7 @@ <?import javafx.scene.control.cell.*?> <?import javafx.scene.layout.VBox?> <?import jfxtras.scene.control.*?> +<?import kieker.diagnosis.components.table.*?> <GridPane xmlns:fx="http://javafx.com/fxml" AnchorPane.bottomAnchor="0.0" AnchorPane.topAnchor="0.0" @@ -52,7 +53,7 @@ <columns> <TableColumn text="%CallsView.tblclmnExecutionContainer.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> <PropertyValueFactory property="container" /> @@ -61,34 +62,34 @@ <TableColumn text="%CallsView.tblclmnComponent.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.ComponentCellValueFactory property="component" /> + <ComponentCellValueFactory property="component" /> </cellValueFactory> </TableColumn> <TableColumn text="%CallsView.tblclmnOperation.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.OperationCellValueFactory property="operation" /> + <OperationCellValueFactory property="operation" /> </cellValueFactory> </TableColumn> <TableColumn text="%CallsView.tblclmnDuration.text"> <cellFactory> - <kieker.diagnosis.components.DurationTableCellFactory /> + <DurationTableCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationCellValueFactory property="duration" /> + <DurationCellValueFactory property="duration" /> </cellValueFactory> </TableColumn> <TableColumn text="%CallsView.tblclmnTraceID.text"> <cellFactory> - <kieker.diagnosis.components.FailedTableCellFactory /> + <FailedTableCellFactory /> </cellFactory> <cellValueFactory> <PropertyValueFactory property="traceID" /> @@ -97,7 +98,7 @@ <TableColumn text="%CallsView.tblclmnTimestamp.text"> <cellFactory> - <kieker.diagnosis.components.TimestampTableCellFactory /> + <TimestampTableCellFactory /> </cellFactory> <cellValueFactory> <PropertyValueFactory property="timestamp" /> diff --git a/src/main/resources/views/kieker/diagnosis/view/settings/SettingsDialogView.fxml b/src/main/resources/views/kieker/diagnosis/view/settings/SettingsDialogView.fxml index 63df492c3cd3a04b49e45be6d2f26b3e8bea36b8..b7a1baf66369d303e375df0a492dfd52b4d741da 100644 --- a/src/main/resources/views/kieker/diagnosis/view/settings/SettingsDialogView.fxml +++ b/src/main/resources/views/kieker/diagnosis/view/settings/SettingsDialogView.fxml @@ -2,6 +2,7 @@ <?import javafx.scene.layout.*?> <?import javafx.scene.control.cell.*?> <?import javafx.scene.control.CheckBox?> +<?import kieker.diagnosis.components.converter.*?> <VBox xmlns:fx="http://javafx.com/fxml" fx:id="view" AnchorPane.bottomAnchor="0.0" AnchorPane.topAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0"> @@ -14,27 +15,27 @@ <Label text="%SettingsDialog.lblTimeUnit.text" GridPane.columnIndex="1" GridPane.rowIndex="1" /> <ComboBox fx:id="timeunits" GridPane.columnIndex="2" GridPane.rowIndex="1" GridPane.fillWidth="true" GridPane.hgrow="ALWAYS" maxWidth="Infinity"> - <converter><kieker.diagnosis.components.TimeUnitStringConverter/></converter> + <converter><TimeUnitStringConverter/></converter> </ComboBox> <Label text="%SettingsDialog.lblOperationNames.text" GridPane.columnIndex="1" GridPane.rowIndex="2" /> <ComboBox fx:id="operationNames" GridPane.columnIndex="2" GridPane.rowIndex="2" GridPane.fillWidth="true" GridPane.hgrow="ALWAYS" maxWidth="Infinity" > - <converter><kieker.diagnosis.components.OperationNamesStringConverter/></converter> + <converter><OperationNamesStringConverter/></converter> </ComboBox> <Label text="%SettingsDialog.lblComponentNames.text" GridPane.columnIndex="1" GridPane.rowIndex="3" /> <ComboBox fx:id="componentNames" GridPane.columnIndex="2" GridPane.rowIndex="3" GridPane.fillWidth="true" GridPane.hgrow="ALWAYS" maxWidth="Infinity"> - <converter><kieker.diagnosis.components.ComponentNamesStringConverter/></converter> + <converter><ComponentNamesStringConverter/></converter> </ComboBox> <Label text="%timestamps" GridPane.columnIndex="1" GridPane.rowIndex="4" /> <ComboBox fx:id="timestamps" GridPane.columnIndex="2" GridPane.rowIndex="4" GridPane.fillWidth="true" GridPane.hgrow="ALWAYS" maxWidth="Infinity"> - <converter><kieker.diagnosis.components.TimestampStringConverter/></converter> + <converter><TimestampTypesStringConverter/></converter> </ComboBox> <CheckBox text="%aggregateMethodCalls" fx:id="aggregateMethodCalls" GridPane.columnIndex="1" GridPane.rowIndex="5" GridPane.fillWidth="true" GridPane.hgrow="ALWAYS" maxWidth="Infinity"/> <ComboBox fx:id="thresholds" GridPane.columnIndex="2" GridPane.rowIndex="5" GridPane.fillWidth="true" GridPane.hgrow="ALWAYS" maxWidth="Infinity"> - <converter><kieker.diagnosis.components.ThresholdStringConverter/></converter> + <converter><ThresholdStringConverter/></converter> </ComboBox> </GridPane> diff --git a/src/main/resources/views/kieker/diagnosis/view/traces/TracesView.fxml b/src/main/resources/views/kieker/diagnosis/view/traces/TracesView.fxml index 181861a3dbefdefecf2b45009777d9d51ef5fde1..070720c1af5d845544fea121b2d48bf2e5318dc5 100644 --- a/src/main/resources/views/kieker/diagnosis/view/traces/TracesView.fxml +++ b/src/main/resources/views/kieker/diagnosis/view/traces/TracesView.fxml @@ -2,6 +2,7 @@ <?import javafx.scene.layout.*?> <?import javafx.scene.control.cell.*?> <?import jfxtras.scene.control.*?> +<?import kieker.diagnosis.components.treetable.*?> <GridPane fx:id="view" xmlns:fx="http://javafx.com/fxml" AnchorPane.bottomAnchor="0.0" AnchorPane.topAnchor="0.0" @@ -52,7 +53,7 @@ <columns> <TreeTableColumn text="%TracesView.trclmnExecutionContainer.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory @@ -62,25 +63,25 @@ <TreeTableColumn text="%TracesView.trclmnComponent.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.ComponentTreeCellValueFactory property="component" /> + <ComponentTreeCellValueFactory property="component" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%TracesView.trclmnOperation.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.OperationTreeCellValueFactory property="operation" /> + <OperationTreeCellValueFactory property="operation" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%TracesView.trclmnTraceDepth.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory @@ -90,7 +91,7 @@ <TreeTableColumn text="%TracesView.trclmnTraceSize.text"> <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory @@ -100,17 +101,17 @@ <TreeTableColumn text="%TracesView.trclmnDuration.text" > <cellFactory> - <kieker.diagnosis.components.DurationTreeCellFactory /> + <DurationTreeCellFactory /> </cellFactory> <cellValueFactory> - <kieker.diagnosis.components.DurationTreeCellValueFactory + <DurationTreeCellValueFactory property="duration" /> </cellValueFactory> </TreeTableColumn> <TreeTableColumn text="%TracesView.trclmnPercent.text" > <cellFactory> - <kieker.diagnosis.components.PercentTreeCellFactory /> + <PercentTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory @@ -120,7 +121,7 @@ <TreeTableColumn text="%TracesView.trclmnTraceId.text" > <cellFactory> - <kieker.diagnosis.components.FailedTreeCellFactory /> + <FailedTreeCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory @@ -130,7 +131,7 @@ <TreeTableColumn text="%TracesView.trclmnTimestamp.text" > <cellFactory> - <kieker.diagnosis.components.TimestampTreeTableCellFactory /> + <TimestampTreeTableCellFactory /> </cellFactory> <cellValueFactory> <TreeItemPropertyValueFactory