Skip to content

Remove shared state (AddressingProperties) taking WinRmClient closer to thread safety#65

Merged
neykov merged 1 commit intomasterfrom
winrm-concurrency
Jul 26, 2017
Merged

Remove shared state (AddressingProperties) taking WinRmClient closer to thread safety#65
neykov merged 1 commit intomasterfrom
winrm-concurrency

Conversation

@neykov
Copy link
Contributor

@neykov neykov commented Jul 8, 2017

AddressingProperties was shared between all requests, making it impossible to use the same WinRmClient concurrently. It stores things like the current action name (which we had to update because it takes the first one otherwise), the message id. We needed that so we can force CXF into using the 2004 version of the addressing namespace. The changes here take a different approach (creating a policy and setting a special assertion on it), causing CXF to create the AddressingProperties object per request.

…to thread safety

AddressingProperties was shared between all requests, making it impossible to use the same WinRmClient concurrently. It stores things like the current action name (which we had to update because it takes the first one otherwise), the message id. We needed that so we can force CXF into using the 2004 version of the addressing namespace. The changes here take a different approach (creating a policy and setting a special assertion on it), causing CXF to create the AddressingProperties object per request.
@neykov
Copy link
Contributor Author

neykov commented Jul 26, 2017

That's been a long awaited cleanup. Tests are passing - any breakage will be quite obvious (the action not matching). Merging.

@neykov neykov merged commit facb66c into master Jul 26, 2017
@neykov neykov deleted the winrm-concurrency branch July 26, 2017 17:52
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.

1 participant