Skip to content
This repository was archived by the owner on Feb 10, 2025. It is now read-only.

Commit 038fad0

Browse files
author
Barbara Palumbo
committed
support customer with authentication mode
1 parent 26135a6 commit 038fad0

File tree

6 files changed

+70
-4
lines changed

6 files changed

+70
-4
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package io.sphere.sdk.customers;
2+
3+
import com.fasterxml.jackson.annotation.JsonValue;
4+
import io.sphere.sdk.models.SphereEnumeration;
5+
6+
/**
7+
* AuthenticationMode.
8+
*
9+
* For the import and the export of values see also {@link SphereEnumeration}.
10+
*/
11+
public enum AuthenticationMode {
12+
PASSWORD("Password"),
13+
EXTERNAL_AUTH("ExternalAuth");
14+
15+
private final String jsonValue;
16+
17+
private AuthenticationMode(final String json) {
18+
this.jsonValue = json;
19+
}
20+
21+
@JsonValue
22+
public String jsonValue() {
23+
return this.jsonValue;
24+
}
25+
}

commercetools-models/src/main/java/io/sphere/sdk/customers/Customer.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,10 @@ default CustomerName getName() {
378378
@IgnoreInQueryModel
379379
LocalDate getDateOfBirth();
380380

381+
@Nullable
382+
@IgnoreInQueryModel
383+
AuthenticationMode getAuthenticationMode();
384+
381385
@Override
382386
default Reference<Customer> toReference() {
383387
return Reference.of(referenceTypeId(), getId(), this);

commercetools-models/src/main/java/io/sphere/sdk/customers/CustomerDraft.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.fasterxml.jackson.annotation.JsonProperty;
44
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
55
import io.sphere.sdk.annotations.FactoryMethod;
6+
import io.sphere.sdk.annotations.IgnoreInQueryModel;
67
import io.sphere.sdk.annotations.ResourceDraftValue;
78
import io.sphere.sdk.carts.Cart;
89
import io.sphere.sdk.customergroups.CustomerGroup;
@@ -114,4 +115,7 @@ default CustomerName getName() {
114115

115116
@Nullable
116117
List<ResourceIdentifier<Store>> getStores();
118+
119+
@Nullable
120+
AuthenticationMode getAuthenticationMode();
117121
}

commercetools-models/src/main/java/io/sphere/sdk/customers/CustomerDraftBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414

1515
public final class CustomerDraftBuilder extends CustomerDraftBuilderBase<CustomerDraftBuilder> {
1616

17-
CustomerDraftBuilder(@Nullable final List<Address> addresses, @Nullable final ResourceIdentifier<Cart> anonymousCart, @Nullable final String anonymousCartId, @Nullable final String anonymousId, @Nullable final List<Integer> billingAddresses, @Nullable final String companyName, @Nullable final CustomFieldsDraft custom, @Nullable final ResourceIdentifier<CustomerGroup> customerGroup, @Nullable final String customerNumber, @Nullable final LocalDate dateOfBirth, @Nullable final Integer defaultBillingAddress, @Nullable final Integer defaultShippingAddress, final String email, final Boolean emailVerified, @Nullable final String externalId, @Nullable final String firstName, @Nullable final String key, @Nullable final String lastName, @Nullable final Locale locale, @Nullable final String middleName, final String password, @Nullable final String salutation, @Nullable final List<Integer> shippingAddresses, final @Nullable List<ResourceIdentifier<Store>> stores, @Nullable final String title, @Nullable final String vatId) {
18-
super(addresses, anonymousCart, anonymousCartId, anonymousId, billingAddresses, companyName, custom, customerGroup, customerNumber, dateOfBirth, defaultBillingAddress, defaultShippingAddress, email, emailVerified, externalId, firstName, key, lastName, locale, middleName, password,salutation, shippingAddresses, stores, title, vatId);
17+
CustomerDraftBuilder(@Nullable final List<Address> addresses, @Nullable final ResourceIdentifier<Cart> anonymousCart, @Nullable final String anonymousCartId, @Nullable final String anonymousId, @Nullable final AuthenticationMode authenticationMode, @Nullable final List<Integer> billingAddresses, @Nullable final String companyName, @Nullable final CustomFieldsDraft custom, @Nullable final ResourceIdentifier<CustomerGroup> customerGroup, @Nullable final String customerNumber, @Nullable final LocalDate dateOfBirth, @Nullable final Integer defaultBillingAddress, @Nullable final Integer defaultShippingAddress, final String email, final Boolean emailVerified, @Nullable final String externalId, @Nullable final String firstName, @Nullable final String key, @Nullable final String lastName, @Nullable final Locale locale, @Nullable final String middleName, final String password, @Nullable final String salutation, @Nullable final List<Integer> shippingAddresses, final @Nullable List<ResourceIdentifier<Store>> stores, @Nullable final String title, @Nullable final String vatId) {
18+
super(addresses, anonymousCart, anonymousCartId, anonymousId, authenticationMode, billingAddresses, companyName, custom, customerGroup, customerNumber, dateOfBirth, defaultBillingAddress, defaultShippingAddress, email, emailVerified, externalId, firstName, key, lastName, locale, middleName, password,salutation, shippingAddresses, stores, title, vatId);
1919
}
2020

2121
public static CustomerDraftBuilder of(final CustomerName customerName, final String email, final String password) {

commercetools-models/src/main/java/io/sphere/sdk/customers/CustomerDraftDsl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818

1919
public final class CustomerDraftDsl extends CustomerDraftDslBase<CustomerDraftDsl> {
2020

21-
CustomerDraftDsl(@Nullable final List<Address> addresses, @Nullable final ResourceIdentifier<Cart> anonymousCart, @Nullable final String anonymousCartId, @Nullable final String anonymousId, @Nullable final List<Integer> billingAddresses, @Nullable final String companyName, @Nullable final CustomFieldsDraft custom, @Nullable final ResourceIdentifier<CustomerGroup> customerGroup, @Nullable final String customerNumber, @Nullable final LocalDate dateOfBirth, @Nullable final Integer defaultBillingAddress, @Nullable final Integer defaultShippingAddress, final String email, @JsonProperty("isEmailVerified") final Boolean emailVerified, @Nullable final String externalId, @Nullable final String firstName, @Nullable final String key, @Nullable final String lastName, @Nullable final Locale locale, @Nullable final String middleName, final String password, @Nullable final String salutation , @Nullable final List<Integer> shippingAddresses, @Nullable final List<ResourceIdentifier<Store>> stores, @Nullable final String title, @Nullable final String vatId) {
22-
super(addresses, anonymousCart, anonymousCartId, anonymousId, billingAddresses, companyName, custom, customerGroup, customerNumber, dateOfBirth, defaultBillingAddress, defaultShippingAddress, email, emailVerified, externalId, firstName, key, lastName, locale, middleName, password, salutation, shippingAddresses, stores, title, vatId);
21+
CustomerDraftDsl(@Nullable final List<Address> addresses, @Nullable final ResourceIdentifier<Cart> anonymousCart, @Nullable final String anonymousCartId, @Nullable final String anonymousId, @Nullable final AuthenticationMode authenticationMode, @Nullable final List<Integer> billingAddresses, @Nullable final String companyName, @Nullable final CustomFieldsDraft custom, @Nullable final ResourceIdentifier<CustomerGroup> customerGroup, @Nullable final String customerNumber, @Nullable final LocalDate dateOfBirth, @Nullable final Integer defaultBillingAddress, @Nullable final Integer defaultShippingAddress, final String email, @JsonProperty("isEmailVerified") final Boolean emailVerified, @Nullable final String externalId, @Nullable final String firstName, @Nullable final String key, @Nullable final String lastName, @Nullable final Locale locale, @Nullable final String middleName, final String password, @Nullable final String salutation , @Nullable final List<Integer> shippingAddresses, @Nullable final List<ResourceIdentifier<Store>> stores, @Nullable final String title, @Nullable final String vatId) {
22+
super(addresses, anonymousCart, anonymousCartId, anonymousId, authenticationMode, billingAddresses, companyName, custom, customerGroup, customerNumber, dateOfBirth, defaultBillingAddress, defaultShippingAddress, email, emailVerified, externalId, firstName, key, lastName, locale, middleName, password, salutation, shippingAddresses, stores, title, vatId);
2323

2424
if (!isValidAddressIndex(addresses, defaultBillingAddress) || !isValidAddressIndex(addresses, defaultShippingAddress)) {
2525
throw new IllegalArgumentException("The defaultBillingAddress and defaultShippingAddress cannot contain an index which is not in the address list");
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package io.sphere.sdk.customers.commands.updateactions;
2+
3+
import io.sphere.sdk.commands.UpdateActionImpl;
4+
import io.sphere.sdk.customers.AuthenticationMode;
5+
import io.sphere.sdk.customers.Customer;
6+
7+
import javax.annotation.Nullable;
8+
9+
/**
10+
* Sets authentication mode for the customer.
11+
*
12+
* {@doc.gen intro}
13+
*
14+
* {@include.example io.sphere.sdk.customers.commands.CustomerUpdateCommandIntegrationTest#setAuthenticationMode()}
15+
*/
16+
public final class SetAuthenticationMode extends UpdateActionImpl<Customer> {
17+
@Nullable
18+
private final AuthenticationMode authenticationMode;
19+
20+
private SetAuthenticationMode(@Nullable final AuthenticationMode authenticationMode) {
21+
super("setAuthenticationMode");
22+
this.authenticationMode = authenticationMode;
23+
}
24+
25+
public static SetAuthenticationMode of(@Nullable final AuthenticationMode authenticationMode) {
26+
return new SetAuthenticationMode(authenticationMode);
27+
}
28+
29+
@Nullable
30+
public AuthenticationMode getAuthenticationMode() {
31+
return authenticationMode;
32+
}
33+
}

0 commit comments

Comments
 (0)