Skip to content

Commit

Permalink
Merge branch 'main' into feat/RA-51-Verify-Network-in-request
Browse files Browse the repository at this point in the history
  • Loading branch information
Kammerlo committed May 6, 2024
2 parents 2fe0a61 + 5b63359 commit 76248a1
Show file tree
Hide file tree
Showing 17 changed files with 240 additions and 111 deletions.
7 changes: 0 additions & 7 deletions api/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -116,13 +116,6 @@
<version>2.0.1</version>
</dependency>


<!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/logging-interceptor -->
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>logging-interceptor</artifactId>
<version>4.10.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,14 @@
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.Profile;
import org.springframework.core.Ordered;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.filter.ForwardedHeaderFilter;
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.info.Info;
Expand Down Expand Up @@ -51,4 +53,9 @@ public FilterRegistrationBean<ForwardedHeaderFilter> forwardedHeaderFilter() {
public JsonNullableModule jsonNullableModule() {
return new JsonNullableModule();
}

@Bean
public RestTemplate restTemplate(RestTemplateBuilder builder) {
return builder.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import jakarta.validation.constraints.NotNull;

import org.springframework.beans.factory.annotation.Autowired;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.lang3.mutable.MutableInt;
import org.jetbrains.annotations.NotNull;
import org.modelmapper.builder.ConfigurableConditionExpression;
import org.openapitools.client.model.Amount;
import org.openapitools.client.model.Currency;
Expand Down Expand Up @@ -48,7 +48,6 @@ protected OperationMetadata mapToOperationMetaData(boolean spent, List<Amt> amou
.stream()
.flatMap(List::stream)
.forEach(amount -> {
operationMetadata.setDepositAmount(getDepositAmount());
if (!amount.getAssetName().equals(Constants.LOVELACE)) {
TokenBundleItem tokenBundleItem = new TokenBundleItem();
tokenBundleItem.setPolicyId(amount.getPolicyId());
Expand All @@ -63,7 +62,8 @@ protected OperationMetadata mapToOperationMetaData(boolean spent, List<Amt> amou
operationMetadata.addTokenBundleItem(tokenBundleItem);
}
});
return operationMetadata;

return operationMetadata.getTokenBundle() == null ? null : operationMetadata;
}

@NotNull
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package org.cardanofoundation.rosetta.api.block.mapper;

import java.util.List;
import java.util.stream.Collectors;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotNull;

Expand All @@ -9,6 +10,7 @@
import org.apache.commons.lang3.mutable.MutableInt;
import org.modelmapper.ModelMapper;
import org.openapitools.client.model.Operation;
import org.openapitools.client.model.OperationIdentifier;
import org.openapitools.client.model.OperationStatus;
import org.openapitools.client.model.Transaction;

Expand Down Expand Up @@ -55,16 +57,30 @@ public Transaction toDto(BlockTx model) {
.setPostConverter(ctx -> {
MutableInt ix = new MutableInt(0);
@NotNull @Valid List<Operation> destOp = ctx.getDestination().getOperations();
destOp.addAll(inputToOperation.convert(model.getInputs(), status, ix));
List<Operation> inpOps = inputToOperation.convert(model.getInputs(), status, ix);
destOp.addAll(inpOps);
destOp.addAll(withdrawalToOperation.convert(model.getWithdrawals(), status, ix));
destOp.addAll(stakeToOperation.convert(model.getStakeRegistrations(), status, ix));
destOp.addAll(delegationToOperation.convert(model.getDelegations(), status, ix));
destOp.addAll(poolRegistrationToOperation.convert(model.getPoolRegistrations(), status, ix));
destOp.addAll(poolRetirementToOperation.convert(model.getPoolRetirements(), status, ix));
destOp.addAll(outputToOperation.convert(model.getOutputs(), status, ix));

List<Operation> outOps = outputToOperation.convert(model.getOutputs(), status, ix);
outOps.forEach(op -> op.setRelatedOperations(getOperationIndexes(inpOps)));

destOp.addAll(outOps);
return ctx.getDestination();
})
.map(model);

}


public static List<OperationIdentifier> getOperationIndexes(List<Operation> operations) {
return operations.stream()
.map(operation -> OperationIdentifier
.builder()
.index(operation.getOperationIdentifier().getIndex()).build())
.collect(Collectors.toList());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ public Operation toDto(Utxo model, OperationStatus status, int index) {
.addMappings(mp -> {
mp.map(f -> Constants.OUTPUT, Operation::setType);
mp.<CoinAction>map(f -> CoinAction.CREATED, (d, v) -> d.getCoinChange().setCoinAction(v));
mp.<Long>map(f -> model.getOutputIndex(), (d, v) -> d.getOperationIdentifier()
.setNetworkIndex(v));
mp.map(f-> mapToOperationMetaData(false, model.getAmounts()), Operation::setMetadata);
mapOthers(model, status, index, mp, false);
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import lombok.NoArgsConstructor;

@Data
@Builder //TODO saa: refactor tests and remove builder and *argConstructor annotations
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Delegation {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import lombok.NoArgsConstructor;

@Data
@Builder // TODO saa: remove this and refactor tests
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PoolRetirement {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import com.bloxbean.cardano.yaci.core.model.certs.CertificateType;

@Data
@Builder //TODO saa: remove this and refactor tests
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class StakeRegistration {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import jakarta.validation.constraints.NotNull;

import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;

import org.springframework.stereotype.Component;
import org.apache.commons.lang3.ObjectUtils;
import org.jetbrains.annotations.NotNull;
import org.modelmapper.ModelMapper;

import org.cardanofoundation.rosetta.api.account.model.domain.Utxo;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,21 @@
package org.cardanofoundation.rosetta.api.construction.service;


import org.openapitools.client.model.*;
import org.openapitools.client.model.ConstructionCombineRequest;
import org.openapitools.client.model.ConstructionCombineResponse;
import org.openapitools.client.model.ConstructionDeriveRequest;
import org.openapitools.client.model.ConstructionDeriveResponse;
import org.openapitools.client.model.ConstructionHashRequest;
import org.openapitools.client.model.ConstructionMetadataRequest;
import org.openapitools.client.model.ConstructionMetadataResponse;
import org.openapitools.client.model.ConstructionParseRequest;
import org.openapitools.client.model.ConstructionParseResponse;
import org.openapitools.client.model.ConstructionPayloadsRequest;
import org.openapitools.client.model.ConstructionPayloadsResponse;
import org.openapitools.client.model.ConstructionPreprocessRequest;
import org.openapitools.client.model.ConstructionPreprocessResponse;
import org.openapitools.client.model.ConstructionSubmitRequest;
import org.openapitools.client.model.TransactionIdentifierResponse;


public interface ConstructionApiService {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ public class ConstructionApiServiceImpl implements ConstructionApiService {

private final CardanoAddressService cardanoAddressService;
private final CardanoService cardanoService;
private final ProtocolParamService protocolParamService;
private final ProtocolParamService protocolParamService;
private final DataMapper dataMapper;

@Override
Expand Down

0 comments on commit 76248a1

Please sign in to comment.