Skip to content

Commit

Permalink
Merge pull request #123 from diadoc/get-document-workflows
Browse files Browse the repository at this point in the history
Get document workflows
  • Loading branch information
gangstatracer authored Apr 5, 2022
2 parents ed53f28 + f572ce2 commit 070a104
Show file tree
Hide file tree
Showing 34 changed files with 4,308 additions and 1 deletion.
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ third-party/
tools/
!tools/packages.config
tmp*/
build/

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
Expand Down Expand Up @@ -256,4 +257,7 @@ paket-files/

# JetBrains Rider
.idea/
*.sln.iml
*.sln.iml

# Visual Studio Code
.vscode/
1 change: 1 addition & 0 deletions build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ Param(
[ValidateSet("Debug", "Release", "RelWithDebInfo", "MinSizeRel")]
[string]$Configuration = "RelWithDebInfo",
[ValidateSet("",
"Visual Studio 17 2022",
"Visual Studio 14 2015",
"Visual Studio 14 2015 Win64",
"Visual Studio 14 2015 ARM",
Expand Down
10 changes: 10 additions & 0 deletions proto/Workflows/AmendmentRequestResponseBehavior.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package Diadoc.Api.Proto.Workflows.AmendmentRequestResponseBehavior;

enum AmendmentRequestResponseBehavior
{
Unknown = 0;
None = 1;
Receipt = 2;
OperatorConfirmation = 3;
OperatorConfirmationOrReceipt = 4;
}
36 changes: 36 additions & 0 deletions proto/Workflows/DocumentWorkflowSettings.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import "Workflows/ParticipantType.proto";
import "Workflows/ParticipantAction.proto";
import "Workflows/TitleReceiptBehavior.proto";
import "Workflows/OperatorConfirmationBehavior.proto";
import "Workflows/OperatorConfirmationReceiptBehavior.proto";
import "Workflows/ReceiptOperatorConfirmationReceiptBehavior.proto";
import "Workflows/AmendmentRequestResponseBehavior.proto";
import "Workflows/InvitationBehavior.proto";
import "Workflows/RoamingConfirmationBehavior.proto";

package Diadoc.Api.Proto.Workflows;

message DocumentWorkflowSettingsList {
repeated DocumentWorkflowSettings DocumentWorkflowSettings = 1;
}

message DocumentWorkflowSettings {
required int32 Id = 1;
repeated ParticipantSetting Participants = 2;
optional OperatorConfirmationReceiptBehavior.OperatorConfirmationReceiptBehavior OperatorConfirmationReceiptBehavior = 3 [default = Unknown];
optional ReceiptOperatorConfirmationReceiptBehavior.ReceiptOperatorConfirmationReceiptBehavior ReceiptOperatorConfirmationReceiptBehavior = 4 [default = Unknown];
optional OperatorConfirmationBehavior.OperatorConfirmationBehavior ReceiptOperatorConfirmationBehavior = 5 [default = Unknown];
optional AmendmentRequestResponseBehavior.AmendmentRequestResponseBehavior AmendmentRequestResponseBehavior = 6 [default = Unknown];
optional OperatorConfirmationBehavior.OperatorConfirmationBehavior AmendmentRequestOperatorConfirmationBehavior = 7 [default = Unknown];
optional RoamingConfirmationBehavior.RoamingConfirmationBehavior ReceiptRoamingConfirmationBehavior = 8 [default = Unknown];
optional RoamingConfirmationBehavior.RoamingConfirmationBehavior AmendmentRequestRoamingConfirmationBehavior = 9 [default = Unknown];
optional InvitationBehavior.InvitationBehavior InvitationBehavior = 10 [default = Unknown];
}

message ParticipantSetting {
optional ParticipantType.ParticipantType Participant = 1 [default = Unknown];
optional ParticipantAction.ParticipantAction ParticipantAction = 2 [default = Unknown];
optional TitleReceiptBehavior.TitleReceiptBehavior TitleReceiptBehavior = 3 [default = Unknown];
optional OperatorConfirmationBehavior.OperatorConfirmationBehavior OperatorConfirmationBehavior = 4 [default = Unknown];
optional RoamingConfirmationBehavior.RoamingConfirmationBehavior RoamingConfirmationBehavior = 5 [default = Unknown];
}
9 changes: 9 additions & 0 deletions proto/Workflows/InvitationBehavior.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package Diadoc.Api.Proto.Workflows.InvitationBehavior;

enum InvitationBehavior
{
Unknown = 0;
Never = 1;
DefineByUser = 2;
Always = 3;
}
9 changes: 9 additions & 0 deletions proto/Workflows/OperatorConfirmationBehavior.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package Diadoc.Api.Proto.Workflows.OperatorConfirmationBehavior;

enum OperatorConfirmationBehavior
{
Unknown = 0;
Never = 1;
Initiator = 2;
InitiatorCounterpart = 3;
}
8 changes: 8 additions & 0 deletions proto/Workflows/OperatorConfirmationReceiptBehavior.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package Diadoc.Api.Proto.Workflows.OperatorConfirmationReceiptBehavior;

enum OperatorConfirmationReceiptBehavior
{
Unknown = 0;
Never = 1;
Always = 2;
}
9 changes: 9 additions & 0 deletions proto/Workflows/ParticipantAction.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package Diadoc.Api.Proto.Workflows.ParticipantAction;

enum ParticipantAction
{
Unknown = 0;
Title = 1;
Signature = 2;
OptionalSignature = 3;
}
9 changes: 9 additions & 0 deletions proto/Workflows/ParticipantType.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package Diadoc.Api.Proto.Workflows.ParticipantType;

enum ParticipantType
{
Unknown = 0;
Sender = 1;
Proxy = 2;
Recipient = 3;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package Diadoc.Api.Proto.Workflows.ReceiptOperatorConfirmationReceiptBehavior;

enum ReceiptOperatorConfirmationReceiptBehavior
{
Unknown = 0;
Never = 1;
Always = 2;
}
8 changes: 8 additions & 0 deletions proto/Workflows/RoamingConfirmationBehavior.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package Diadoc.Api.Proto.Workflows.RoamingConfirmationBehavior;

enum RoamingConfirmationBehavior
{
Unknown = 0;
Never = 1;
Always = 2;
}
9 changes: 9 additions & 0 deletions proto/Workflows/TitleReceiptBehavior.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package Diadoc.Api.Proto.Workflows.TitleReceiptBehavior;

enum TitleReceiptBehavior
{
Unknown = 0;
Never = 1;
DefineByUser = 2;
Always = 3;
}
7 changes: 7 additions & 0 deletions src/DiadocApi.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1915,3 +1915,10 @@ void DiadocApi::RegisterConfirm(const Diadoc::Api::Proto::Registration::Registra
WppTraceDebugOut("RegisterConfirm...");
PerformHttpRequest(L"/RegisterConfirm", ToProtoBytes(request), POST);
}

Diadoc::Api::Proto::Workflows::DocumentWorkflowSettingsList DiadocApi::GetWorkflowsSettings(const std::wstring& boxId)
{
std::wstringstream buf;
buf << L"/GetWorkflowsSettings?boxId=" << StringHelper::CanonicalizeUrl(boxId);
return FromProtoBytes<Diadoc::Api::Proto::Workflows::DocumentWorkflowSettingsList>(PerformHttpRequest(buf.str(), GET));
}
3 changes: 3 additions & 0 deletions src/DiadocApi.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
#include "protos\CustomPrintFormDetection.pb.h"
#include "protos\Registration\RegistrationRequest.pb.h"
#include "protos\Certificates\CertificateList.pb.h"
#include "protos\Workflows\DocumentWorkflowSettings.pb.h"
#include "DocumentFilter.h"
#include "HttpSession.h"
#include "TaskResult.h"
Expand Down Expand Up @@ -345,6 +346,8 @@ class DiadocApi
Diadoc::Api::Proto::Registration::RegistrationResponse Register(const Diadoc::Api::Proto::Registration::RegistrationRequest& request);
void RegisterConfirm(const Diadoc::Api::Proto::Registration::RegistrationConfirmRequest& request);

Diadoc::Api::Proto::Workflows::DocumentWorkflowSettingsList GetWorkflowsSettings(const std::wstring& boxId);

protected:
DiadocApi::Bytes_t PerformHttpRequest(const std::wstring & queryString, const Bytes_t & requestBody, const std::wstring & method);
DiadocApi::Bytes_t PerformHttpRequest(const std::wstring & queryString, const Bytes_t & requestBody, const std::wstring & method, const std::wstring * contentType);
Expand Down
109 changes: 109 additions & 0 deletions src/protos/Workflows/AmendmentRequestResponseBehavior.pb.cc

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

95 changes: 95 additions & 0 deletions src/protos/Workflows/AmendmentRequestResponseBehavior.pb.h

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

Loading

0 comments on commit 070a104

Please sign in to comment.