Skip to content

Commit

Permalink
Fix deserialization of NegotiationId & TransferId (#44)
Browse files Browse the repository at this point in the history
  • Loading branch information
florianrusch-zf authored May 4, 2022
1 parent 1b0462f commit 5a65522
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 8 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2020 - 2022 Microsoft Corporation
* Copyright (c) 2022 Microsoft Corporation and others
*
* This program and the accompanying materials are made available under the
* terms of the Apache License, Version 2.0 which is available at
Expand All @@ -9,24 +9,51 @@
*
* Contributors:
* Microsoft Corporation - initial API and implementation
* ZF Friedrichshafen AG - Refactored
*
*/

package org.eclipse.dataspaceconnector.apiwrapper.connector.sdk.model;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder;
import org.eclipse.dataspaceconnector.spi.types.domain.contract.negotiation.ContractNegotiation;

/**
* Wrapper for a {@link ContractNegotiation#getId()}. Used to format a simple string as JSON.
*/
@JsonDeserialize(builder = NegotiationId.Builder.class)
public class NegotiationId {
private final String id;
private String id;

public NegotiationId(String id) {
this.id = id;
private NegotiationId() {
}

public String getId() {
return id;
}

@JsonPOJOBuilder(withPrefix = "")
public static final class Builder {
private final NegotiationId dto;

private Builder() {
dto = new NegotiationId();
}

@JsonCreator
public static NegotiationId.Builder newInstance() {
return new NegotiationId.Builder();
}

public NegotiationId.Builder id(String id) {
dto.id = id;
return this;
}

public NegotiationId build() {
return dto;
}
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2020 - 2022 Microsoft Corporation
* Copyright (c) 2022 Microsoft Corporation and others
*
* This program and the accompanying materials are made available under the
* terms of the Apache License, Version 2.0 which is available at
Expand All @@ -9,24 +9,51 @@
*
* Contributors:
* Microsoft Corporation - initial API and implementation
* ZF Friedrichshafen AG - Refactored
*
*/

package org.eclipse.dataspaceconnector.apiwrapper.connector.sdk.model;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder;
import org.eclipse.dataspaceconnector.spi.types.domain.transfer.TransferProcess;

/**
* Wrapper for a {@link TransferProcess#getId()}. Used to format a simple string as JSON.
*/
@JsonDeserialize(builder = TransferId.Builder.class)
public class TransferId {
private final String id;
private String id;

public TransferId(String id) {
this.id = id;
private TransferId() {
}

public String getId() {
return id;
}

@JsonPOJOBuilder(withPrefix = "")
public static final class Builder {
private final TransferId dto;

private Builder() {
dto = new TransferId();
}

@JsonCreator
public static TransferId.Builder newInstance() {
return new TransferId.Builder();
}

public TransferId.Builder id(String id) {
dto.id = id;
return this;
}

public TransferId build() {
return dto;
}
}
}

0 comments on commit 5a65522

Please sign in to comment.