All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sap.cloud.sdk.services.blockchain.multichain.model.MultichainPermissionResult Maven / Gradle / Ivy

/*
 * Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
 */

package com.sap.cloud.sdk.services.blockchain.multichain.model;

import java.util.List;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.annotations.Beta;

import lombok.Data;
import lombok.RequiredArgsConstructor;

/**
 * Information about permissions on service. For more details see https://www.multichain.com/developers/json-rpc-api/
 */
@Data
@RequiredArgsConstructor
@JsonIgnoreProperties( ignoreUnknown = true )
@Beta
public class MultichainPermissionResult
{
    @Nonnull
    private String address;
    @Nullable
    private Object forField;
    @Nonnull
    private MultichainPermission.MultichainPermissionType type;
    @Nonnull
    private Long startblock;
    @Nonnull
    private Long endblock;
    @Nullable
    private List admins;
    @Nullable
    private List pending;
    @Nullable
    private Boolean isp2shaddress;

    public MultichainPermissionResult(
        @JsonProperty( value = "address", required = true ) @Nonnull final String address,
        @JsonProperty( "for" ) @Nullable final Object forField,
        @JsonProperty(
            value = "type",
            required = true ) @Nonnull final MultichainPermission.MultichainPermissionType type,
        @JsonProperty( value = "startblock", required = true ) @Nonnull final Long startblock,
        @JsonProperty( value = "endblock", required = true ) @Nonnull final Long endblock,
        @JsonProperty( "admins" ) @Nullable final List admins,
        @JsonProperty( "pending" ) @Nullable final List pending,
        @JsonProperty( "isp2shaddress" ) @Nullable final Boolean isp2shaddress )
    {
        this.address = address;
        this.forField = forField;
        this.type = type;
        this.startblock = startblock;
        this.endblock = endblock;
        this.admins = admins;
        this.pending = pending;
        this.isp2shaddress = isp2shaddress;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy