add performance options to settings
This commit is contained in:
@@ -106,4 +106,19 @@ public class Settings {
|
|||||||
return Integer.valueOf(values.getProperty("ship.jumps","3"));
|
return Integer.valueOf(values.getProperty("ship.jumps","3"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setSegmentSize(int segmentSize){
|
||||||
|
values.setProperty("performance.segment", String.valueOf(segmentSize));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getSegmentSize(){
|
||||||
|
return Integer.valueOf(values.getProperty("performance.segment","0"));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPathsCount(int pathsCount){
|
||||||
|
values.setProperty("performance.limit", String.valueOf(pathsCount));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getPathsCount(){
|
||||||
|
return Integer.valueOf(values.getProperty("performance.limit","100"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,8 @@ package ru.trader;
|
|||||||
|
|
||||||
import org.xml.sax.SAXException;
|
import org.xml.sax.SAXException;
|
||||||
import ru.trader.core.Market;
|
import ru.trader.core.Market;
|
||||||
|
import ru.trader.core.MarketAnalyzer;
|
||||||
import ru.trader.core.SimpleMarket;
|
import ru.trader.core.SimpleMarket;
|
||||||
import ru.trader.emdn.EMDN;
|
|
||||||
import ru.trader.emdn.Station;
|
|
||||||
import ru.trader.model.ModelFabrica;
|
import ru.trader.model.ModelFabrica;
|
||||||
import ru.trader.store.Store;
|
import ru.trader.store.Store;
|
||||||
import ru.trader.store.XSSFImporter;
|
import ru.trader.store.XSSFImporter;
|
||||||
@@ -45,4 +44,11 @@ public class World {
|
|||||||
public static Market getMarket() {
|
public static Market getMarket() {
|
||||||
return world;
|
return world;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static MarketAnalyzer buildAnalyzer(Market market){
|
||||||
|
MarketAnalyzer analyzer = new MarketAnalyzer(market);
|
||||||
|
analyzer.setSegmentSize(Main.SETTINGS.getSegmentSize());
|
||||||
|
analyzer.setPathsCount(Main.SETTINGS.getPathsCount());
|
||||||
|
return analyzer;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,9 @@ import org.slf4j.LoggerFactory;
|
|||||||
import ru.trader.EMDNUpdater;
|
import ru.trader.EMDNUpdater;
|
||||||
import ru.trader.Main;
|
import ru.trader.Main;
|
||||||
import ru.trader.World;
|
import ru.trader.World;
|
||||||
|
import ru.trader.core.MarketAnalyzer;
|
||||||
import ru.trader.emdn.EMDN;
|
import ru.trader.emdn.EMDN;
|
||||||
|
import ru.trader.model.MarketModel;
|
||||||
import ru.trader.view.support.Localization;
|
import ru.trader.view.support.Localization;
|
||||||
import ru.trader.view.support.NumberField;
|
import ru.trader.view.support.NumberField;
|
||||||
|
|
||||||
@@ -30,6 +32,10 @@ public class SettingsController {
|
|||||||
private CheckBox emdnUpdateOnly;
|
private CheckBox emdnUpdateOnly;
|
||||||
@FXML
|
@FXML
|
||||||
private NumberField emdnUpdateTime;
|
private NumberField emdnUpdateTime;
|
||||||
|
@FXML
|
||||||
|
private NumberField segmentSize;
|
||||||
|
@FXML
|
||||||
|
private NumberField pathsCount;
|
||||||
|
|
||||||
private final Action actSave = new AbstractAction(Localization.getString("dialog.button.save")) {
|
private final Action actSave = new AbstractAction(Localization.getString("dialog.button.save")) {
|
||||||
{
|
{
|
||||||
@@ -54,6 +60,8 @@ public class SettingsController {
|
|||||||
emdnOn.setSelected(Main.SETTINGS.getEMDNActive());
|
emdnOn.setSelected(Main.SETTINGS.getEMDNActive());
|
||||||
emdnUpdateOnly.setSelected(Main.SETTINGS.getEMDNUpdateOnly());
|
emdnUpdateOnly.setSelected(Main.SETTINGS.getEMDNUpdateOnly());
|
||||||
emdnUpdateTime.setValue(Main.SETTINGS.getEMDNAutoUpdate());
|
emdnUpdateTime.setValue(Main.SETTINGS.getEMDNAutoUpdate());
|
||||||
|
segmentSize.setValue(Main.SETTINGS.getSegmentSize());
|
||||||
|
pathsCount.setValue(Main.SETTINGS.getPathsCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void save() {
|
private void save() {
|
||||||
@@ -65,6 +73,12 @@ public class SettingsController {
|
|||||||
EMDNUpdater.setUpdateOnly(emdnUpdateOnly.isSelected());
|
EMDNUpdater.setUpdateOnly(emdnUpdateOnly.isSelected());
|
||||||
Main.SETTINGS.setEMDNAutoUpdate(emdnUpdateTime.getValue().longValue());
|
Main.SETTINGS.setEMDNAutoUpdate(emdnUpdateTime.getValue().longValue());
|
||||||
EMDNUpdater.setInterval(emdnUpdateTime.getValue().longValue());
|
EMDNUpdater.setInterval(emdnUpdateTime.getValue().longValue());
|
||||||
|
MarketModel market = MainController.getMarket();
|
||||||
|
Main.SETTINGS.setSegmentSize(segmentSize.getValue().intValue());
|
||||||
|
market.setSegmetnSize(segmentSize.getValue().intValue());
|
||||||
|
Main.SETTINGS.setPathsCount(pathsCount.getValue().intValue());
|
||||||
|
market.setLimit(pathsCount.getValue().intValue());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Action showDialog(Parent parent, Parent content){
|
public Action showDialog(Parent parent, Parent content){
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import javafx.beans.property.SimpleListProperty;
|
|||||||
import javafx.collections.ObservableList;
|
import javafx.collections.ObservableList;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import ru.trader.World;
|
||||||
import ru.trader.core.*;
|
import ru.trader.core.*;
|
||||||
import ru.trader.graph.PathRoute;
|
import ru.trader.graph.PathRoute;
|
||||||
import ru.trader.model.support.BindingsHelper;
|
import ru.trader.model.support.BindingsHelper;
|
||||||
@@ -42,7 +43,7 @@ public class MarketModel {
|
|||||||
|
|
||||||
public MarketModel(Market market) {
|
public MarketModel(Market market) {
|
||||||
this.market = market;
|
this.market = market;
|
||||||
analyzer = new MarketAnalyzer(market);
|
analyzer = World.buildAnalyzer(market);
|
||||||
items = new SimpleListProperty<ItemDescModel>(BindingsHelper.observableList(market.getItems(), this::getItemDesc));
|
items = new SimpleListProperty<ItemDescModel>(BindingsHelper.observableList(market.getItems(), this::getItemDesc));
|
||||||
vendors = new SimpleListProperty<VendorModel>(BindingsHelper.observableList(market.get(), this::asModel));
|
vendors = new SimpleListProperty<VendorModel>(BindingsHelper.observableList(market.get(), this::asModel));
|
||||||
}
|
}
|
||||||
@@ -178,6 +179,14 @@ public class MarketModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void setLimit(int limit){
|
||||||
|
analyzer.setPathsCount(limit);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSegmetnSize(int segmetnSize){
|
||||||
|
analyzer.setSegmentSize(segmetnSize);
|
||||||
|
}
|
||||||
|
|
||||||
public void setCargo(int cargo){
|
public void setCargo(int cargo){
|
||||||
analyzer.setCargo(cargo);
|
analyzer.setCargo(cargo);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -102,3 +102,6 @@ settings.emdn.on=Active
|
|||||||
settings.emdn.sub=Server SUB:
|
settings.emdn.sub=Server SUB:
|
||||||
settings.emdn.updateOnly=Update price only:
|
settings.emdn.updateOnly=Update price only:
|
||||||
settings.emdn.auto=Auto update (sec.):
|
settings.emdn.auto=Auto update (sec.):
|
||||||
|
settings.performance=Performance
|
||||||
|
settings.performance.segmentSize=Segment size (0 - auto):
|
||||||
|
settings.performance.limit=Routes count:
|
||||||
|
|||||||
@@ -104,4 +104,7 @@ settings.emdn.on=\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C
|
|||||||
settings.emdn.sub=\u0421\u0435\u0440\u0432\u0435\u0440 SUB:
|
settings.emdn.sub=\u0421\u0435\u0440\u0432\u0435\u0440 SUB:
|
||||||
settings.emdn.updateOnly=\u0422\u043E\u043B\u044C\u043A\u043E \u043E\u0431\u043D\u043E\u0432\u043B\u044F\u0442\u044C \u0446\u0435\u043D\u044B:
|
settings.emdn.updateOnly=\u0422\u043E\u043B\u044C\u043A\u043E \u043E\u0431\u043D\u043E\u0432\u043B\u044F\u0442\u044C \u0446\u0435\u043D\u044B:
|
||||||
settings.emdn.auto=\u041E\u0431\u043D\u043E\u0432\u043B\u044F\u0442\u044C \u0430\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0447\u0435\u0440\u0435\u0437 (\u0441\u0435\u043A.):
|
settings.emdn.auto=\u041E\u0431\u043D\u043E\u0432\u043B\u044F\u0442\u044C \u0430\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0447\u0435\u0440\u0435\u0437 (\u0441\u0435\u043A.):
|
||||||
|
settings.performance=\u041F\u0440\u043E\u0438\u0437\u0432\u043E\u0434\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C
|
||||||
|
settings.performance.segmentSize=\u041C\u0430\u0440\u0448\u0440\u0443\u0442\u043E\u0432 \u0432 \u0441\u0435\u0433\u043C\u0435\u043D\u0442\u0435 (0 - \u0430\u0432\u0442\u043E):
|
||||||
|
settings.performance.limit=\u041A\u043E\u043B-\u0432\u043E \u043C\u0430\u0440\u0448\u0440\u0443\u0442\u043E\u0432 \u043D\u0430 \u0432\u044B\u0432\u043E\u0434:
|
||||||
|
|
||||||
|
|||||||
@@ -22,5 +22,11 @@
|
|||||||
<CheckBox fx:id="emdnUpdateOnly" GridPane.columnIndex="1" GridPane.rowIndex="3" />
|
<CheckBox fx:id="emdnUpdateOnly" GridPane.columnIndex="1" GridPane.rowIndex="3" />
|
||||||
<Label text="%settings.emdn.auto" GridPane.rowIndex="4" />
|
<Label text="%settings.emdn.auto" GridPane.rowIndex="4" />
|
||||||
<NumberField fx:id="emdnUpdateTime" maxWidth="100" GridPane.columnIndex="1" GridPane.rowIndex="4" />
|
<NumberField fx:id="emdnUpdateTime" maxWidth="100" GridPane.columnIndex="1" GridPane.rowIndex="4" />
|
||||||
|
<Label text="%settings.performance" styleClass="settings-group" GridPane.halignment="CENTER" GridPane.columnSpan="2" GridPane.rowIndex="5"/>
|
||||||
|
<Label text="%settings.performance.segmentSize" GridPane.rowIndex="6" />
|
||||||
|
<NumberField fx:id="segmentSize" maxWidth="100" GridPane.columnIndex="1" GridPane.rowIndex="6" />
|
||||||
|
<Label text="%settings.performance.limit" GridPane.rowIndex="7" />
|
||||||
|
<NumberField fx:id="pathsCount" maxWidth="100" GridPane.columnIndex="1" GridPane.rowIndex="7" />
|
||||||
|
|
||||||
</GridPane>
|
</GridPane>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user