508 : sonar qube critical issue fixes (#852)
* 508 : sonar qube critical issue fixes * 508 : Sunar Qube Fixes Define a constant instead of duplicating this literal "user_accounts" 4 times. Define a constant instead of duplicating this literal "userID" 5 times Define a constant instead of duplicating this literal "additionalInfo" 4 times. Define a constant instead of duplicating this literal "userName" 4 times. * 508 : Sunar Qube Fixes Define a constant instead of duplicating this literal "user_accounts" 4 times. * 508 : Sonar Qube Fixes Define a constant instead of duplicating this literal "eEvans" 4 times Define a constant instead of duplicating this literal "jBloch" 6 times Define a constant instead of duplicating this literal "mFowler" 3 times * 508 : Sonar Qube FIxes Define a constant instead of duplicating this literal "username" 3 times. * 508: sonar qube issue fixes Define a constant instead of duplicating this literal "customerDao.getAllCustomers(): " 4 times. * 508 : sonar qube issue fixes Define a constant instead of duplicating this literal "App.main(), student : " 4 times. * 508 : sonar Qube issue fixes Define a constant instead of duplicating this literal "{} hits {}. {} is damaged!" 3 times. Define a constant instead of duplicating this literal "{} hits {}." 4 times. * 508 : Define a constant instead of duplicating this literal "{} hits {}." 4 times. * 508 : checkstyle fixes * 508: checkstyle fixes * 508: checkstyle fixes * 508: checkstyle fixes * 508: checkstyle fixes * 508: checkstyle fixes * 508: cqrs checkstyle fixes
This commit is contained in:
committed by
Ilkka Seppälä
parent
17bfc91f45
commit
c6ecf58687
@ -22,18 +22,16 @@
|
||||
*/
|
||||
package com.iluwatar.abstractdocument;
|
||||
|
||||
import com.iluwatar.abstractdocument.domain.Car;
|
||||
import com.iluwatar.abstractdocument.domain.HasModel;
|
||||
import com.iluwatar.abstractdocument.domain.HasParts;
|
||||
import com.iluwatar.abstractdocument.domain.HasPrice;
|
||||
import com.iluwatar.abstractdocument.domain.HasType;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.iluwatar.abstractdocument.domain.Car;
|
||||
import com.iluwatar.abstractdocument.domain.enums.Property;
|
||||
|
||||
/**
|
||||
* The Abstract Document pattern enables handling additional, non-static
|
||||
* properties. This pattern uses concept of traits to enable type safety and
|
||||
@ -55,20 +53,20 @@ public class App {
|
||||
LOGGER.info("Constructing parts and car");
|
||||
|
||||
Map<String, Object> carProperties = new HashMap<>();
|
||||
carProperties.put(HasModel.PROPERTY, "300SL");
|
||||
carProperties.put(HasPrice.PROPERTY, 10000L);
|
||||
carProperties.put(Property.MODEL.toString(), "300SL");
|
||||
carProperties.put(Property.PRICE.toString(), 10000L);
|
||||
|
||||
Map<String, Object> wheelProperties = new HashMap<>();
|
||||
wheelProperties.put(HasType.PROPERTY, "wheel");
|
||||
wheelProperties.put(HasModel.PROPERTY, "15C");
|
||||
wheelProperties.put(HasPrice.PROPERTY, 100L);
|
||||
wheelProperties.put(Property.TYPE.toString(), "wheel");
|
||||
wheelProperties.put(Property.MODEL.toString(), "15C");
|
||||
wheelProperties.put(Property.PRICE.toString(), 100L);
|
||||
|
||||
Map<String, Object> doorProperties = new HashMap<>();
|
||||
doorProperties.put(HasType.PROPERTY, "door");
|
||||
doorProperties.put(HasModel.PROPERTY, "Lambo");
|
||||
doorProperties.put(HasPrice.PROPERTY, 300L);
|
||||
doorProperties.put(Property.TYPE.toString(), "door");
|
||||
doorProperties.put(Property.MODEL.toString(), "Lambo");
|
||||
doorProperties.put(Property.PRICE.toString(), 300L);
|
||||
|
||||
carProperties.put(HasParts.PROPERTY, Arrays.asList(wheelProperties, doorProperties));
|
||||
carProperties.put(Property.PARTS.toString(), Arrays.asList(wheelProperties, doorProperties));
|
||||
|
||||
Car car = new Car(carProperties);
|
||||
|
||||
|
@ -25,16 +25,15 @@ package com.iluwatar.abstractdocument.domain;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.iluwatar.abstractdocument.Document;
|
||||
import com.iluwatar.abstractdocument.domain.enums.Property;
|
||||
|
||||
/**
|
||||
* HasModel trait for static access to 'model' property
|
||||
*/
|
||||
public interface HasModel extends Document {
|
||||
|
||||
String PROPERTY = "model";
|
||||
|
||||
default Optional<String> getModel() {
|
||||
return Optional.ofNullable((String) get(PROPERTY));
|
||||
return Optional.ofNullable((String) get(Property.MODEL.toString()));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -25,16 +25,16 @@ package com.iluwatar.abstractdocument.domain;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import com.iluwatar.abstractdocument.Document;
|
||||
import com.iluwatar.abstractdocument.domain.enums.Property;
|
||||
|
||||
/**
|
||||
* HasParts trait for static access to 'parts' property
|
||||
*/
|
||||
public interface HasParts extends Document {
|
||||
|
||||
String PROPERTY = "parts";
|
||||
|
||||
default Stream<Part> getParts() {
|
||||
return children(PROPERTY, Part::new);
|
||||
return children(Property.PARTS.toString(), Part::new);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -25,16 +25,16 @@ package com.iluwatar.abstractdocument.domain;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.iluwatar.abstractdocument.Document;
|
||||
import com.iluwatar.abstractdocument.domain.enums.Property;
|
||||
|
||||
/**
|
||||
* HasPrice trait for static access to 'price' property
|
||||
*/
|
||||
public interface HasPrice extends Document {
|
||||
|
||||
String PROPERTY = "price";
|
||||
|
||||
default Optional<Number> getPrice() {
|
||||
return Optional.ofNullable((Number) get(PROPERTY));
|
||||
return Optional.ofNullable((Number) get(Property.PRICE.toString()));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -22,19 +22,19 @@
|
||||
*/
|
||||
package com.iluwatar.abstractdocument.domain;
|
||||
|
||||
import com.iluwatar.abstractdocument.Document;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import com.iluwatar.abstractdocument.Document;
|
||||
import com.iluwatar.abstractdocument.domain.enums.Property;
|
||||
|
||||
/**
|
||||
* HasType trait for static access to 'type' property
|
||||
*/
|
||||
public interface HasType extends Document {
|
||||
|
||||
String PROPERTY = "type";
|
||||
|
||||
default Optional<String> getType() {
|
||||
return Optional.ofNullable((String) get(PROPERTY));
|
||||
return Optional.ofNullable((String) get(Property.TYPE.toString()));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,11 @@
|
||||
package com.iluwatar.abstractdocument.domain.enums;
|
||||
|
||||
/**
|
||||
*
|
||||
* Enum To Describe Property type
|
||||
*
|
||||
*/
|
||||
public enum Property {
|
||||
|
||||
PARTS, TYPE, PRICE, MODEL
|
||||
}
|
@ -22,19 +22,17 @@
|
||||
*/
|
||||
package com.iluwatar.abstractdocument;
|
||||
|
||||
import com.iluwatar.abstractdocument.domain.Car;
|
||||
import com.iluwatar.abstractdocument.domain.HasModel;
|
||||
import com.iluwatar.abstractdocument.domain.HasParts;
|
||||
import com.iluwatar.abstractdocument.domain.HasPrice;
|
||||
import com.iluwatar.abstractdocument.domain.HasType;
|
||||
import com.iluwatar.abstractdocument.domain.Part;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import com.iluwatar.abstractdocument.domain.Car;
|
||||
import com.iluwatar.abstractdocument.domain.Part;
|
||||
import com.iluwatar.abstractdocument.domain.enums.Property;
|
||||
|
||||
/**
|
||||
* Test for Part and Car
|
||||
@ -51,9 +49,9 @@ public class DomainTest {
|
||||
@Test
|
||||
public void shouldConstructPart() {
|
||||
Map<String, Object> partProperties = new HashMap<>();
|
||||
partProperties.put(HasType.PROPERTY, TEST_PART_TYPE);
|
||||
partProperties.put(HasModel.PROPERTY, TEST_PART_MODEL);
|
||||
partProperties.put(HasPrice.PROPERTY, TEST_PART_PRICE);
|
||||
partProperties.put(Property.TYPE.toString(), TEST_PART_TYPE);
|
||||
partProperties.put(Property.MODEL.toString(), TEST_PART_MODEL);
|
||||
partProperties.put(Property.PRICE.toString(), TEST_PART_PRICE);
|
||||
Part part = new Part(partProperties);
|
||||
|
||||
assertEquals(TEST_PART_TYPE, part.getType().get());
|
||||
@ -64,9 +62,9 @@ public class DomainTest {
|
||||
@Test
|
||||
public void shouldConstructCar() {
|
||||
Map<String, Object> carProperties = new HashMap<>();
|
||||
carProperties.put(HasModel.PROPERTY, TEST_CAR_MODEL);
|
||||
carProperties.put(HasPrice.PROPERTY, TEST_CAR_PRICE);
|
||||
carProperties.put(HasParts.PROPERTY, Arrays.asList(new HashMap<>(), new HashMap<>()));
|
||||
carProperties.put(Property.MODEL.toString(), TEST_CAR_MODEL);
|
||||
carProperties.put(Property.PRICE.toString(), TEST_CAR_PRICE);
|
||||
carProperties.put(Property.PARTS.toString(), Arrays.asList(new HashMap<>(), new HashMap<>()));
|
||||
Car car = new Car(carProperties);
|
||||
|
||||
assertEquals(TEST_CAR_MODEL, car.getModel().get());
|
||||
|
Reference in New Issue
Block a user