Skip to content

Pcc3 api fixes#47

Open
jakob22r wants to merge 17 commits into
gla-rad:v2from
Team-AIVN:pcc3-api-fixes
Open

Pcc3 api fixes#47
jakob22r wants to merge 17 commits into
gla-rad:v2from
Team-AIVN:pcc3-api-fixes

Conversation

@jakob22r

Copy link
Copy Markdown

Implements changes of May 2026 in IEC 63173-2 PCC3.

jakob22r added 17 commits June 19, 2026 14:42
…own when the request type is a RetrieveResultObj
…se in which the information consumer is not allowed to pull on the given transactionId. It is a responsibility of the serviceRegistry to conduct such check.
… a bad request is reported to the client rather than internal server error
…vant when calling a secom controller incorrectly, we'd want to return 404 and not a 400 as was the case
@jakob22r

Copy link
Copy Markdown
Author

@l0rro @nvasta

@jakob22r

Copy link
Copy Markdown
Author

Merge conflicts locally by rebasing on v2 before PR

@nvasta

nvasta commented Jun 19, 2026

Copy link
Copy Markdown
Member

Thanks Jakob, I will have a look!

@nvasta nvasta left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can understand the changes but there are some points that need to be cleared out.

We also now have a third (unfortunately) core-springboot package with native Springboot support. That is for Springboot 4 and we should if possible also upgrade that one to match these changes,

The ServiceInstanceStatusEnum for example hasn't been included in there.

envelopeSignatureCertificate,
envelopeRootCertificateThumbprint,
envelopeSignatureTime
envelopeSignatureTime,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think the comma is required

}


try {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a specific use case we are trying to catch here?

I could agree with the try catch, but I think if included it should extend in the whole operation, i.e. it should include the validation checks also taking place in the envelope.


if (pathInfo != null) {
// Handle retrieveResult requests including /transactionId
if (pathInfo.equals(RETRIEVE_RESULT_INTERFACE_PATH)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't the retrieve results now a POST, why isn't it included in the switch statement?

Response.Status responseStatus;
ResponseObject responseObject = new ResponseObject();
jakarta.ws.rs.core.Response.Status responseStatus;
EncryptionKeyResponseObject encryptionKeyResponseObject = new EncryptionKeyResponseObject();

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we returning an EncryptionKeyResponseObject ? A specific ResponseObject has now been introduced to match the SECOM v2.0 OpenAPI.

if (ex instanceof SecomNotAuthorisedException) {
responseStatus = Response.Status.UNAUTHORIZED;
encryptionKeyResponseObject.setMessage("Not authorized to requested information");
return Response.status(responseStatus)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need for this, let's follow the same way all other interfaces are written and return one response in the end.

@@ -62,7 +62,6 @@ public Object[] getAttributeArray() {
envelopeSignatureCertificate,
envelopeRootCertificateThumbprint,
envelopeSignatureTime,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove the comma.

@@ -62,7 +62,6 @@ public Object[] getAttributeArray() {
envelopeSignatureCertificate,
envelopeRootCertificateThumbprint,
envelopeSignatureTime,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove the comma.

envelopeSignatureCertificate,
envelopeRootCertificateThumbprint,
envelopeSignatureTime
envelopeSignatureTime,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need for the comma

envelopeSignatureCertificate,
envelopeRootCertificateThumbprint,
envelopeSignatureTime
envelopeSignatureTime,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need for the comma

@Override
public Object[] getAttributeArray() {
return new Object[] {
return new Object[]{

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we removing the blank space?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants