Skip to content

Commit

Permalink
chore: fix after upstream changes on state filtering (#605)
Browse files Browse the repository at this point in the history
  • Loading branch information
wolf4ood authored Feb 20, 2025
1 parent 699f87e commit c952c2b
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
package org.eclipse.edc.identityhub.defaults.store;

import org.eclipse.edc.identityhub.spi.credential.request.model.HolderCredentialRequest;
import org.eclipse.edc.identityhub.spi.credential.request.model.HolderRequestState;
import org.eclipse.edc.identityhub.spi.credential.request.store.HolderCredentialRequestStore;
import org.eclipse.edc.spi.query.CriterionOperatorRegistry;
import org.eclipse.edc.spi.query.QuerySpec;
Expand All @@ -30,7 +31,7 @@ public InMemoryHolderCredentialRequestStore(Clock clock, CriterionOperatorRegist
}

public InMemoryHolderCredentialRequestStore(String leaserId, Clock clock, CriterionOperatorRegistry criterionOperatorRegistry) {
super(HolderCredentialRequest.class, leaserId, clock, criterionOperatorRegistry);
super(HolderCredentialRequest.class, leaserId, clock, criterionOperatorRegistry, state -> HolderRequestState.valueOf(state).code());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
package org.eclipse.edc.issuerservice.defaults.store;

import org.eclipse.edc.issuerservice.spi.issuance.model.IssuanceProcess;
import org.eclipse.edc.issuerservice.spi.issuance.model.IssuanceProcessStates;
import org.eclipse.edc.issuerservice.spi.issuance.process.store.IssuanceProcessStore;
import org.eclipse.edc.spi.query.CriterionOperatorRegistry;
import org.eclipse.edc.spi.query.QuerySpec;
Expand All @@ -31,7 +32,7 @@ public InMemoryIssuanceProcessStore(Clock clock, CriterionOperatorRegistry crite
}

public InMemoryIssuanceProcessStore(String leaserId, Clock clock, CriterionOperatorRegistry criterionOperatorRegistry) {
super(IssuanceProcess.class, leaserId, clock, criterionOperatorRegistry);
super(IssuanceProcess.class, leaserId, clock, criterionOperatorRegistry, state -> IssuanceProcessStates.valueOf(state).code());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

package org.eclipse.edc.identityhub.store.sql.credentialrequest.schema.schema.postgres;

import org.eclipse.edc.identityhub.spi.credential.request.model.HolderRequestState;
import org.eclipse.edc.identityhub.store.sql.credentialrequest.schema.HolderCredentialRequestStoreStatements;
import org.eclipse.edc.sql.lease.StatefulEntityMapping;
import org.eclipse.edc.sql.translation.JsonFieldTranslator;
Expand All @@ -31,7 +32,7 @@ public class HolderCredentialRequestMapping extends StatefulEntityMapping {
public static final String FIELD_PENDING_ISSUANCE = "pending";

public HolderCredentialRequestMapping(HolderCredentialRequestStoreStatements statements) {
super(statements);
super(statements, state -> HolderRequestState.valueOf(state).code());
add(FIELD_PARTICIPANT_ID, statements.getParticipantIdColumn());
add(FIELD_ISSUER_DID, statements.getIssuerDidColumn());
add(FIELD_CREDENTIAL_TYPES, new JsonFieldTranslator(statements.getCredentialTypesColumn()));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

package org.eclipse.edc.issuerservice.store.sql.issuanceprocess.schema.postgres;

import org.eclipse.edc.issuerservice.spi.issuance.model.IssuanceProcessStates;
import org.eclipse.edc.issuerservice.store.sql.issuanceprocess.IssuanceProcessStoreStatements;
import org.eclipse.edc.sql.lease.StatefulEntityMapping;
import org.eclipse.edc.sql.translation.JsonArrayTranslator;
Expand All @@ -34,7 +35,7 @@ public class IssuanceProcessMapping extends StatefulEntityMapping {
private static final String FIELD_PENDING = "pending";

public IssuanceProcessMapping(IssuanceProcessStoreStatements statements) {
super(statements);
super(statements, state -> IssuanceProcessStates.valueOf(state).code());
add(FIELD_ID, statements.getIdColumn());
add(FIELD_PARTICIPANT_ID, statements.getParticipantIdColumn());
add(FIELD_ISSUER_CONTEXT_ID, statements.getIssuerContextIdColumn());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -404,6 +404,19 @@ void queryByState() {
assertThat(result).hasSize(1).usingRecursiveFieldByFieldElementComparator().containsExactly(request);
}

@Test
void queryByStateAsString() {
var request = createHolderRequest("testprocess1");
getStore().save(request);

var query = QuerySpec.Builder.newInstance()
.filter(List.of(new Criterion("state", "=", HolderRequestState.from(request.getState()).name())))
.build();

var result = getStore().query(query);
assertThat(result).hasSize(1).usingRecursiveFieldByFieldElementComparator().containsExactly(request);
}

@Test
void queryByIssuerDid() {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,19 @@ void queryByState() {
assertThat(result).hasSize(1).usingRecursiveFieldByFieldElementComparator().containsExactly(issuanceProcess);
}

@Test
void queryByStateAsString() {
var issuanceProcess = createIssuanceProcess("testprocess1");
getStore().save(issuanceProcess);

var query = QuerySpec.Builder.newInstance()
.filter(List.of(new Criterion("state", "=", IssuanceProcessStates.from(issuanceProcess.getState()).name())))
.build();

var result = getStore().query(query).toList();
assertThat(result).hasSize(1).usingRecursiveFieldByFieldElementComparator().containsExactly(issuanceProcess);
}

@Test
void queryByParticipantId() {

Expand Down

0 comments on commit c952c2b

Please sign in to comment.