From 282eec37e63eb0fca8615aaf5f911e1a054a5d9e Mon Sep 17 00:00:00 2001 From: rusefillc Date: Mon, 18 Apr 2022 00:22:36 -0400 Subject: [PATCH] refactoring --- .../src/main/java/com/rusefi/ConfigField.java | 5 +++++ .../src/main/java/com/rusefi/output/FieldsStrategy.java | 7 +++---- .../main/java/com/rusefi/output/JavaFieldsConsumer.java | 6 +++--- .../src/main/java/com/rusefi/output/TsOutput.java | 4 ++-- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigField.java b/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigField.java index 0c5ce357b4..5e0e63226f 100644 --- a/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigField.java +++ b/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigField.java @@ -2,6 +2,7 @@ package com.rusefi; import com.devexperts.logging.Logging; import com.rusefi.core.Pair; +import com.rusefi.output.ConfigStructure; import com.rusefi.output.JavaFieldsConsumer; import java.util.Arrays; @@ -95,6 +96,10 @@ public class ConfigField { return Integer.parseInt(s); } + public ConfigStructure getStructureType() { + return getState().structures.get(getType()); + } + public boolean isArray() { return arraySizeVariableName != null || arraySizes.length != 0; } diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/output/FieldsStrategy.java b/java_tools/configuration_definition/src/main/java/com/rusefi/output/FieldsStrategy.java index 01f16a916e..89d1ef7a12 100644 --- a/java_tools/configuration_definition/src/main/java/com/rusefi/output/FieldsStrategy.java +++ b/java_tools/configuration_definition/src/main/java/com/rusefi/output/FieldsStrategy.java @@ -3,18 +3,17 @@ package com.rusefi.output; import com.rusefi.ConfigField; import com.rusefi.ReaderState; -import java.io.IOException; import java.util.List; public abstract class FieldsStrategy { - public int run(ReaderState state, ConfigStructure structure, int sensorTsPosition) throws IOException { + public int run(ReaderState state, ConfigStructure structure, int sensorTsPosition) { if (state.stack.isEmpty()) { return writeFields(structure.tsFields, "", sensorTsPosition); } return sensorTsPosition; } - protected int writeFields(List tsFields, String prefix, int tsPosition) throws IOException { + protected int writeFields(List tsFields, String prefix, int tsPosition) { FieldIterator iterator = new FieldIterator(tsFields); for (int i = 0; i < tsFields.size(); i++) { iterator.start(i); @@ -25,6 +24,6 @@ public abstract class FieldsStrategy { return tsPosition; } - abstract int writeOneField(FieldIterator iterator, String prefix, int tsPosition) throws IOException; + abstract int writeOneField(FieldIterator iterator, String prefix, int tsPosition); } diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/output/JavaFieldsConsumer.java b/java_tools/configuration_definition/src/main/java/com/rusefi/output/JavaFieldsConsumer.java index 17e7bdae06..5de1a4f7ae 100644 --- a/java_tools/configuration_definition/src/main/java/com/rusefi/output/JavaFieldsConsumer.java +++ b/java_tools/configuration_definition/src/main/java/com/rusefi/output/JavaFieldsConsumer.java @@ -25,7 +25,7 @@ public abstract class JavaFieldsConsumer implements ConfigurationConsumer { return content.toString(); } - private void writeJavaFieldName(String nameWithPrefix, int tsPosition, double scale) throws IOException { + private void writeJavaFieldName(String nameWithPrefix, int tsPosition, double scale) { content.append("\tpublic static final Field "); allFields.append("\t" + nameWithPrefix.toUpperCase() + "," + EOL); content.append(nameWithPrefix.toUpperCase()); @@ -50,7 +50,7 @@ public abstract class JavaFieldsConsumer implements ConfigurationConsumer { public void handleEndStruct(ReaderState readerState, ConfigStructure structure) throws IOException { FieldsStrategy fieldsStrategy = new FieldsStrategy() { - protected int writeOneField(FieldIterator iterator, String prefix, int tsPosition) throws IOException { + protected int writeOneField(FieldIterator iterator, String prefix, int tsPosition) { ConfigField prev = iterator.getPrev(); ConfigField configField = iterator.cf; ConfigField next = iterator.next; @@ -62,7 +62,7 @@ public abstract class JavaFieldsConsumer implements ConfigurationConsumer { if (configField.getName().equals(prev.getName())) { return tsPosition; } - ConfigStructure cs = configField.getState().structures.get(configField.getType()); + ConfigStructure cs = configField.getStructureType(); if (cs != null) { String extraPrefix = cs.withPrefix ? configField.getName() + "_" : ""; return writeFields(cs.tsFields, prefix + extraPrefix, tsPosition); diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/output/TsOutput.java b/java_tools/configuration_definition/src/main/java/com/rusefi/output/TsOutput.java index 0bf7d04740..993af67dab 100644 --- a/java_tools/configuration_definition/src/main/java/com/rusefi/output/TsOutput.java +++ b/java_tools/configuration_definition/src/main/java/com/rusefi/output/TsOutput.java @@ -37,7 +37,7 @@ public class TsOutput { public int run(ReaderState state, ConfigStructure structure, int sensorTsPosition) throws IOException { FieldsStrategy strategy = new FieldsStrategy() { @Override - public int writeOneField(FieldIterator it, String prefix, int tsPosition) throws IOException { + public int writeOneField(FieldIterator it, String prefix, int tsPosition) { ConfigField configField = it.cf; ConfigField next = it.next; int bitIndex = it.bitState.get(); @@ -49,7 +49,7 @@ public class TsOutput { return tsPosition; } - ConfigStructure cs = configField.getState().structures.get(configField.getType()); + ConfigStructure cs = configField.getStructureType(); if (configField.getComment() != null && configField.getComment().trim().length() > 0 && cs == null) { settingContextHelp.append("\t" + nameWithPrefix + " = \"" + configField.getCommentContent() + "\"" + EOL); }