<feed xmlns='http://www.w3.org/2005/Atom'>
<title>moa-zs/src/test/java, branch 2.0.0-RC1</title>
<subtitle>Middleware that allows a sender application to send delivery requests to delivery services</subtitle>
<id>https://git.egiz.gv.at/moa-zs/atom?h=2.0.0-RC1</id>
<link rel='self' href='https://git.egiz.gv.at/moa-zs/atom?h=2.0.0-RC1'/>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/'/>
<updated>2019-08-30T11:36:20+00:00</updated>
<entry>
<title>Fix Tnvz Typo</title>
<updated>2019-08-30T11:36:20+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-30T11:36:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=c048d2ee787197b963dc1e8fa9297cf1cd3a4307'/>
<id>urn:sha1:c048d2ee787197b963dc1e8fa9297cf1cd3a4307</id>
<content type='text'>
- sed 's/tvnz/tnvz/'
</content>
</entry>
<entry>
<title>Fixes and Refactoring</title>
<updated>2019-08-28T11:36:35+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-28T11:34:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=70e8a1b80fea9d61c46dbd55aa1b461a8bb3a0f7'/>
<id>urn:sha1:70e8a1b80fea9d61c46dbd55aa1b461a8bb3a0f7</id>
<content type='text'>
- JAXB Hack: Handle InterruptionException properly (as in [1], "Dont
  swallow Interrupts")
- Mzs2MsgConverter: Rename convert(Person) to
  convertReceiverPerson(Person) to emphasize that this method can only
  be used to convert Receiver Persons (Reminder: Receiver Persons are
  PhysicalPersons / CorporateBodies. SenderPersons can also be
  Authorities)
- Mzs2MsgConverter: Remove assertion because not needed anymore.
- Refactor: Move mzs:DeliveryRequest validation out ouf augmenter and
  into service.
- Refactor: Create a single entry point for validating a
  mzs:DeliveryRequest.
- Remove unused imports.
- Fix log messages.

[1] https://www.ibm.com/developerworks/java/library/j-jtp05236/index.html?ca=drs-#2.1
</content>
</entry>
<entry>
<title>Fix: Change Injection of signatureVerifier Bean into TestSuite</title>
<updated>2019-08-26T11:30:53+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-26T11:30:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=34adf17296b8f2252eb9b3274c62f40a9d18ae81'/>
<id>urn:sha1:34adf17296b8f2252eb9b3274c62f40a9d18ae81</id>
<content type='text'>
- Problem: @TestConfiguration did not override config/MoaSigConfig.
- Therefore test uses bean that is configured via application.yaml.
- Solution: Replace @TestConfiguration with bean that was created
  and configured directly in testcase.
</content>
</entry>
<entry>
<title>Remove SSL Depending Testcases from Integration Test Suite</title>
<updated>2019-08-23T12:57:28+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-21T13:17:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=af9478800e5e9884e690c5a48dce2b68d7d348a2'/>
<id>urn:sha1:af9478800e5e9884e690c5a48dce2b68d7d348a2</id>
<content type='text'>
- Reason: Now we can run integration tests without the need to set up
  SSL reverse proxy with client certificates.
</content>
</entry>
<entry>
<title>Replace Thread.sleep with Await</title>
<updated>2019-08-20T11:02:03+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-20T11:02:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=5d125d6167a57517296c8c8ea5bdd2366b9f9191'/>
<id>urn:sha1:5d125d6167a57517296c8c8ea5bdd2366b9f9191</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Custom Http Headers to HTTP Clients</title>
<updated>2019-08-20T09:13:28+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-20T09:13:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=2b8a7df25878f546ace25373f44baeb026cf6d2b'/>
<id>urn:sha1:2b8a7df25878f546ace25373f44baeb026cf6d2b</id>
<content type='text'>
- Change app2mzs schema: Add Custom Headers to ClientType Element.
- Set custom headers in ClientFactory.
- Parse custom headers from spring environment.
- Merge custom headers from two different profiles.
- Add example to application.yaml.
- Test conversion of custom headers from spring profile
- Test merging and overriding custom headers.
</content>
</entry>
<entry>
<title>Add Two "VerifySignature" Testcases</title>
<updated>2019-08-19T14:29:06+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-08-19T13:47:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=631af9a4ab6b75e11ab369c3a7d9ab22e60341e8'/>
<id>urn:sha1:631af9a4ab6b75e11ab369c3a7d9ab22e60341e8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Testcase For "Verify Signed Notification"</title>
<updated>2019-07-31T14:29:19+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-07-31T14:29:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=63baa41b1ea5ce6f2f9a1513522f7ad54ed0ceab'/>
<id>urn:sha1:63baa41b1ea5ce6f2f9a1513522f7ad54ed0ceab</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Test Flow of DeliveryRequest from "End-To-End" &amp; Fix Bugs</title>
<updated>2019-07-22T11:02:19+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-07-22T11:02:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=cb9a76eaafd37f921006822bcfe043655288bc63'/>
<id>urn:sha1:cb9a76eaafd37f921006822bcfe043655288bc63</id>
<content type='text'>
Schema Changes:
- Remove mzs:DeliveryRequest/TnvzMetaData because all metadata fields
  can be collected from DeliveryRequest and redundancy is not needed.

Fixes and Refactoring in preprocess:
- MzsDeliveryRequestValidator: Instead of returning false, throw an
  exception when a condition is not met, and explain which condition
  is not met / why it is not met in the exception's message.
- Integrate interface change in ConfigProfileGenerator and
  DeliveryRequestAugmenter.
- Rewrite and simplify DeliveryRequestAugmenter's augmentation.
- ConfigUtil Fixes: Ensure that we do not override the wrong
  parameters while merging. This error appeared in tnvz / msg client,
  connection / receive timeout, key / trust store, and lax hostname
  verification / trust all.

Fix Bugs in Interceptor / SoapUtils:
- Problem: DOM access and information extraction was implemented
  somewhat sloppy.
- SolutioN: Change DOM access interface to access DOM more
  efficiently. Add boundary checks and handle edge cases while
  extracting information from SOAP Messages.
- Test those changes properly.

Testing:
- Implement Delivery Request Flow in ITEndToEndTest.
- Start application on random port instead of fixed port when running
  integration tests.
- Add assertions to tests in ITMzsServiceTest suite.

Others Bug Fixes:
- ServicesConfig: Ensure that mzs service and msg service run on
  different endpoint addresses (/msg and /mzs).
- DeliveryRequestBackend: Throw exception when binary message is
  missing. Don't wrap the exception.
- SaveResponseToFileSink: Wrap Response in JAXB Element (otherwise,
  marshaller does not recognize it)
</content>
</entry>
<entry>
<title>Put MoaZSException on Diet &amp; Handle Edge Cases</title>
<updated>2019-07-17T11:27:40+00:00</updated>
<author>
<name>Christof Rabensteiner</name>
<email>christof.rabensteiner@iaik.tugraz.at</email>
</author>
<published>2019-07-17T11:17:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.egiz.gv.at/moa-zs/commit/?id=f2e1263702901581512131ea587fad7a2ba45baa'/>
<id>urn:sha1:f2e1263702901581512131ea587fad7a2ba45baa</id>
<content type='text'>
Reason: MoaZSException (and: its builder) were used to collect
intermediary results while stepping through the delivery request
backend. These results were needed to generate meaningful responses
towards the sender application in case of error. However, the builder
sprawled over too many interfaces (e.g. DeliveryRequestBackend and
TNVZHelper) and it became difficult to understand from where
intermediary results originated.

Solution: Put MoaZSException on diet:
- Remove all DeliveryAnswer fields from MoaZSException and refactor
  code base to ensure that the removed fields get sourced by other
  means.
- Remove Builder since amount of parameters is manageable.

Refactor DeliveryRequestBackend:
- Instead of passing down the builder and using MoaZSException as the
  only source for intermediary results, we collect available results
  at the outermost stack frame (DeliveryRequestBackend.accept) and
  only retrieve results via exception if those results appear
  somewhere down the stack frame (E.g. PredviceNoteSent). We collect
  available results with the "fallbackAnswerBuilder" and switch to the
  msg client response, once received.

Refactor MsgResponseBackend:
- Handle cases (response missing, binary response missing) properly.
- Integrate changes from MsgResponse.generateError()

Refactor TVNZHelper:
- Remove MoaZSExceptionBuilder from all interfaces.

Refactor MsgResponse.generateError:
- Change interface such that it's more intuitive.
- Implement NotificationResponse.generateError.
- Implement RequestStatusResponse.generateError.

Others:
- Replace all invocations against MoaZSException.Builder.
</content>
</entry>
</feed>
