• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

FIWARE / contract-management / #69

30 Oct 2025 07:38AM UTC coverage: 1.686% (+0.04%) from 1.651%
#69

Pull #12

wistefan
improve organization creation and cleanup
Pull Request #12: Support for central marketplace and policy creation

117 of 1238 new or added lines in 31 files covered. (9.45%)

5 existing lines in 2 files now uncovered.

587 of 34807 relevant lines covered (1.69%)

0.02 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/main/java/org/fiware/iam/til/TilProductOrderHandler.java
1
package org.fiware.iam.til;
2

3
import io.micronaut.context.annotation.Requires;
4
import io.micronaut.http.HttpResponse;
5
import io.micronaut.http.HttpResponseFactory;
6
import io.micronaut.http.HttpStatus;
7
import jakarta.inject.Singleton;
8
import lombok.RequiredArgsConstructor;
9
import lombok.extern.slf4j.Slf4j;
10
import org.fiware.iam.configuration.GeneralProperties;
11
import org.fiware.iam.handlers.ProductOrderHandler;
12
import org.fiware.iam.tmforum.CredentialsConfigResolver;
13
import org.fiware.iam.tmforum.OrganizationResolver;
14
import org.fiware.iam.tmforum.productorder.model.ProductOrderVO;
15
import reactor.core.publisher.Mono;
16

17
@Requires(condition = GeneralProperties.TilCondition.class)
18
@RequiredArgsConstructor
19
@Singleton
NEW
20
@Slf4j
×
21
public class TilProductOrderHandler implements ProductOrderHandler {
22

23
    private final OrganizationResolver organizationResolver;
24
    private final CredentialsConfigResolver credentialsConfigResolver;
25
    private final TrustedIssuersListAdapter trustedIssuersListAdapter;
26

27
    @Override
28
    public Mono<HttpResponse<?>> handleProductOrderComplete(String organizationId, ProductOrderVO productOrderVO) {
NEW
29
        return allowIssuer(organizationId, productOrderVO);
×
30
    }
31

32
    @Override
33
    public Mono<HttpResponse<?>> handleProductOrderStop(String organizationId, ProductOrderVO productOrderVO) {
NEW
34
        return Mono.zip(organizationResolver.getDID(organizationId), credentialsConfigResolver.getCredentialsConfig(productOrderVO))
×
NEW
35
                .flatMap(resultTuple -> trustedIssuersListAdapter.denyIssuer(resultTuple.getT1(), resultTuple.getT2()));
×
36
    }
37

38
    @Override
39
    public Mono<HttpResponse<?>> handleProductOrderNegotiation(String organizationId, ProductOrderVO productOrderVO) {
40
        // nothing to do
NEW
41
        return Mono.just(HttpResponse.noContent());
×
42
    }
43

44
    private Mono<HttpResponse<?>> allowIssuer(String organizationId, ProductOrderVO productOrderVO) {
NEW
45
        return Mono.zip(
×
NEW
46
                        organizationResolver.getDID(organizationId),
×
NEW
47
                        credentialsConfigResolver.getCredentialsConfig(productOrderVO))
×
NEW
48
                .flatMap(resultTuple -> trustedIssuersListAdapter.allowIssuer(resultTuple.getT1(), resultTuple.getT2()))
×
NEW
49
                .map(success -> {
×
NEW
50
                    if (success) {
×
NEW
51
                        return HttpResponseFactory.INSTANCE.status(HttpStatus.CREATED);
×
52
                    } else {
NEW
53
                        log.warn("Was not able to allow issuer {} for product order {}.", organizationId, productOrderVO);
×
NEW
54
                        return HttpResponseFactory.INSTANCE.status(HttpStatus.BAD_GATEWAY);
×
55
                    }
56
                });
57
    }
58
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc