Skip to content

Commit

Permalink
feat(plc4go): update string encoding in accordance to plc4j
Browse files Browse the repository at this point in the history
  • Loading branch information
sruehl committed Aug 30, 2024
1 parent d3eff01 commit 898c687
Show file tree
Hide file tree
Showing 151 changed files with 572 additions and 436 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,10 @@
import org.apache.commons.lang3.math.NumberUtils;
import org.apache.commons.text.CaseUtils;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.definitions.DefaultArgument;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.references.*;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.references.DefaultBooleanTypeReference;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.references.DefaultByteOrderTypeReference;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.references.DefaultFloatTypeReference;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.references.DefaultIntegerTypeReference;
import org.apache.plc4x.plugins.codegenerator.language.mspec.model.terms.DefaultStringLiteral;
import org.apache.plc4x.plugins.codegenerator.protocol.freemarker.BaseFreemarkerLanguageTemplateHelper;
import org.apache.plc4x.plugins.codegenerator.protocol.freemarker.FreemarkerException;
Expand Down Expand Up @@ -379,7 +382,7 @@ public String getReadBufferReadMethodCall(String logicalName, SimpleTypeReferenc
.orElseThrow(() -> new FreemarkerException("Encoding must be a quoted string value")).getValue();
}
String length = Integer.toString(simpleTypeReference.getSizeInBits());
return "readBuffer.ReadString(\"" + logicalName + "\", uint32(" + length + "), \"" + encoding + "\")";
return "readBuffer.ReadString(\"" + logicalName + "\", uint32(" + length + "), utils.WithEncoding(\"" + encoding + "\"))";
}
case VSTRING: {
String encoding = "UTF-8";
Expand All @@ -397,7 +400,7 @@ public String getReadBufferReadMethodCall(String logicalName, SimpleTypeReferenc
} else {
lengthExpression = "uint32(" + lengthExpression + ")";
}
return "readBuffer.ReadString(\"" + logicalName + "\", " + lengthExpression + ", \"" + encoding + "\")";
return "readBuffer.ReadString(\"" + logicalName + "\", " + lengthExpression + ", utils.WithEncoding(\"" + encoding + "\"))";
}
case TIME:
case DATE:
Expand Down Expand Up @@ -493,8 +496,7 @@ public String getWriteBufferWriteMethodCall(String logicalName, SimpleTypeRefere
.orElseThrow(() -> new FreemarkerException("Encoding must be a quoted string value")).getValue();
}
String length = Integer.toString(simpleTypeReference.getSizeInBits());
return "writeBuffer.WriteString(\"" + logicalName + "\", uint32(" + length + "), \"" +
encoding + "\", " + fieldName + writerArgsString + ")";
return "writeBuffer.WriteString(\"" + logicalName + "\", uint32(" + length + "), " + fieldName + writerArgsString + ", utils.WithEncoding(\"" + encoding + ")\"))";
}
case VSTRING: {
VstringTypeReference vstringTypeReference = (VstringTypeReference) simpleTypeReference;
Expand All @@ -513,8 +515,7 @@ public String getWriteBufferWriteMethodCall(String logicalName, SimpleTypeRefere
lengthExpression = "uint32(" + lengthExpression + ")";
}
String length = Integer.toString(simpleTypeReference.getSizeInBits());
return "writeBuffer.WriteString(\"" + logicalName + "\", " + lengthExpression + ", \"" +
encoding + "\", " + fieldName + writerArgsString + ")";
return "writeBuffer.WriteString(\"" + logicalName + "\", " + lengthExpression + ", " + fieldName + writerArgsString + ", utils.WithEncoding(\"" + encoding + ")\"))";
}
case DATE:
case TIME:
Expand Down
10 changes: 5 additions & 5 deletions plc4go/internal/ads/model/AdsSubscriptionHandle_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions plc4go/internal/ads/model/Tag.go
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ func (m DirectPlcTag) SerializeWithWriteBuffer(ctx context.Context, writeBuffer
if err := writeBuffer.WriteUint32("indexOffset", 32, m.IndexOffset); err != nil {
return err
}
if err := writeBuffer.WriteString("adsDatatypeName", uint32(len([]rune(m.ValueType.String()))*8), "UTF-8", m.ValueType.String()); err != nil {
if err := writeBuffer.WriteString("adsDatatypeName", uint32(len([]rune(m.ValueType.String()))*8), m.ValueType.String()); err != nil {
return err
}
if (m.ValueType == apiValues.STRING || m.ValueType == apiValues.WSTRING) && (m.StringLength != NONE) {
Expand Down Expand Up @@ -218,7 +218,7 @@ func (m SymbolicPlcTag) SerializeWithWriteBuffer(writeBuffer utils.WriteBuffer)
return err
}

if err := writeBuffer.WriteString("symbolicAddress", uint32(len([]rune(m.SymbolicAddress))*8), "UTF-8", m.SymbolicAddress); err != nil {
if err := writeBuffer.WriteString("symbolicAddress", uint32(len([]rune(m.SymbolicAddress))*8), m.SymbolicAddress); err != nil {
return err
}
if len(m.ArrayInfo) > 0 {
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 8 additions & 8 deletions plc4go/internal/bacnetip/DeviceInfo_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 8 additions & 8 deletions plc4go/internal/bacnetip/IOCB_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions plc4go/internal/bacnetip/IOController_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions plc4go/internal/bacnetip/IOQController_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/internal/bacnetip/IOQueue_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/internal/bacnetip/SieveQueue_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions plc4go/internal/bacnetip/Subscriber_plc4xgen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions plc4go/internal/bacnetip/Tag.go
Original file line number Diff line number Diff line change
Expand Up @@ -140,15 +140,15 @@ func (m plcTag) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.
return err
}

if err := writeBuffer.WriteString("objectId", uint32(len([]rune(m.ObjectId.String()))*8), "UTF-8", m.ObjectId.String()); err != nil {
if err := writeBuffer.WriteString("objectId", uint32(len([]rune(m.ObjectId.String()))*8), m.ObjectId.String()); err != nil {
return err
}

if err := writeBuffer.PushContext("properties"); err != nil {
return err
}
for _, p := range m.Properties {
if err := writeBuffer.WriteString("property", uint32(len([]rune(p.String()))*8), "UTF-8", p.String()); err != nil {
if err := writeBuffer.WriteString("property", uint32(len([]rune(p.String()))*8), p.String()); err != nil {
return err
}
}
Expand Down
Loading

0 comments on commit 898c687

Please sign in to comment.