Исправил утилитарный класс

This commit is contained in:
Struchkov Mark 2022-07-21 00:43:58 +03:00
parent 3c7222df2a
commit c52ec11a4b
11 changed files with 122 additions and 92 deletions

View File

@ -6,7 +6,7 @@
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti-bom</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
<packaging>pom</packaging>
<name>Haiti BOM</name>
@ -30,7 +30,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<haiti.ver>1.0.2</haiti.ver>
<haiti.ver>1.0.3</haiti.ver>
<haiti.exception.ver>${haiti.ver}</haiti.exception.ver>
<haiti.context.ver>${haiti.ver}</haiti.context.ver>

View File

@ -6,7 +6,7 @@
<parent>
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
</parent>
<artifactId>haiti-context</artifactId>

View File

@ -6,7 +6,7 @@
<parent>
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
</parent>
<artifactId>haiti-core</artifactId>

View File

@ -4,7 +4,6 @@ import dev.struchkov.haiti.context.domain.BasicEntity;
import dev.struchkov.haiti.context.page.Pagination;
import dev.struchkov.haiti.context.page.Sheet;
import dev.struchkov.haiti.context.repository.SimpleManagerRepository;
import dev.struchkov.haiti.utils.Inspector;
import java.util.Collection;
import java.util.HashMap;
@ -13,6 +12,7 @@ import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
import static dev.struchkov.haiti.utils.Inspector.isNotNull;
import static dev.struchkov.haiti.utils.Strings.ERR_OPERATION_NOT_SUPPORTED;
public class SimpleManagerRepositoryMap<T extends BasicEntity<Long>> implements SimpleManagerRepository<T, Long> {
@ -22,7 +22,7 @@ public class SimpleManagerRepositoryMap<T extends BasicEntity<Long>> implements
@Override
public T save(T accessTarget) {
Inspector.isNotNull(accessTarget);
isNotNull(accessTarget);
accessTarget.setId(key);
map.put(key, accessTarget);
key++;
@ -31,25 +31,25 @@ public class SimpleManagerRepositoryMap<T extends BasicEntity<Long>> implements
@Override
public Optional<T> findById(Long id) {
Inspector.isNotNull(id);
isNotNull(id);
return Optional.ofNullable(map.get(id));
}
@Override
public boolean existsById(Long id) {
Inspector.isNotNull(id);
isNotNull(id);
return map.containsKey(id);
}
@Override
public void deleteById(Long id) {
Inspector.isNotNull(id);
isNotNull(id);
map.remove(id);
}
@Override
public List<T> saveAll(Collection<T> accessTargets) {
Inspector.isNotNull(accessTargets);
isNotNull(accessTargets);
return accessTargets.stream()
.map(this::save)
.collect(Collectors.toList());
@ -57,13 +57,13 @@ public class SimpleManagerRepositoryMap<T extends BasicEntity<Long>> implements
@Override
public void deleteAllById(Collection<Long> accessTargets) {
Inspector.isNotNull(accessTargets);
isNotNull(accessTargets);
accessTargets.forEach(map::remove);
}
@Override
public List<T> findAllById(Collection<Long> ids) {
Inspector.isNotNull(ids);
isNotNull(ids);
return ids.stream()
.map(map::get)
.collect(Collectors.toList());

View File

@ -2,7 +2,6 @@ package dev.struchkov.haiti.core.service;
import dev.struchkov.haiti.context.domain.BasicEntity;
import dev.struchkov.haiti.context.domain.ExistsContainer;
import dev.struchkov.haiti.context.exception.NotFoundException;
import dev.struchkov.haiti.context.page.Pagination;
import dev.struchkov.haiti.context.page.Sheet;
import dev.struchkov.haiti.context.repository.SimpleManagerRepository;

View File

@ -6,7 +6,7 @@
<parent>
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
</parent>
<artifactId>haiti-exception</artifactId>

View File

@ -6,7 +6,7 @@
<parent>
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
</parent>
<artifactId>haiti-filter</artifactId>

View File

@ -6,7 +6,7 @@
<parent>
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
</parent>
<name>Haiti Utils</name>

View File

@ -0,0 +1,88 @@
package dev.struchkov.haiti.utils;
import java.util.Collection;
import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
public final class Checker {
private Checker() {
utilityClass();
}
public static boolean checkNull(Object o) {
return o == null;
}
public static boolean checkNotNull(Object o) {
return o != null;
}
/**
* Проверка коллекции на пустоту.
*
* @return false - если коллекция null или пустая, true в противном случае.
*/
public static boolean checkNotEmpty(Collection<?> collection) {
return collection != null && !collection.isEmpty();
}
/**
* Проверка массива на пустоту
*
* @return false - если массив null или пустой, true в противном случае.
*/
public static boolean checkNotEmpty(Object... args) {
if (args == null) {
return false;
} else {
return args.length > 0;
}
}
/**
* Проверка коллекции на пустоту.
*
* @return true - если коллекция null или пустая, false в противном случае
*/
public static boolean checkEmpty(Collection<?> collection) {
return collection == null || collection.isEmpty();
}
/**
* Проверка массива на пустоту.
*
* @return true - если массив null или пустой, false в противном случае
*/
public static boolean checkEmpty(Object... args) {
return args == null || args.length == 0;
}
public static boolean checkLong(String s) {
try {
Long.parseLong(s);
return true;
} catch (NumberFormatException e) {
return false;
}
}
public static boolean checkDouble(String s) {
try {
Double.parseDouble(s);
return true;
} catch (NumberFormatException e) {
return false;
}
}
public static boolean checkInteger(String s) {
try {
Integer.parseInt(s);
return true;
} catch (NumberFormatException e) {
return false;
}
}
}

View File

@ -3,6 +3,10 @@ package dev.struchkov.haiti.utils;
import java.util.Collection;
import java.util.function.Supplier;
import static dev.struchkov.haiti.utils.Checker.checkEmpty;
import static dev.struchkov.haiti.utils.Checker.checkNotEmpty;
import static dev.struchkov.haiti.utils.Checker.checkNotNull;
import static dev.struchkov.haiti.utils.Checker.checkNull;
import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
/**
@ -19,44 +23,24 @@ public final class Inspector {
/**
* Проверка на null значение с возвращением исключения, если объект не null.
*
* @param object Проверяемый объект
* @param exception Возвращаемое исключение
* @param o Проверяемый объект
* @param e Возвращаемое исключение
* @throws RuntimeException
*/
public static void isNull(Object object, Supplier<? extends RuntimeException> exception) {
if (object != null) throw exception.get();
public static void isNull(Object o, Supplier<? extends RuntimeException> e) {
if (checkNotNull(o)) throw e.get();
}
/**
* Проверяет множество объектов на null. Если хотябы один объект null, то будет выброшено исключение
*
* @param exception исключение, которое необходимо выбросить
* @param e исключение, которое необходимо выбросить
* @param objects проверяемое множество объектов
* @throws RuntimeException
*/
public static void isAnyNotNull(Supplier<? extends RuntimeException> exception, Object... objects) {
for (Object object : objects)
if (object == null) throw exception.get();
}
/**
* Проверка на null значение с возвращением исключения, если объект null.
*
* @param object Проверяемый объект
* @param exception Возвращаемое исключение
*/
public static void isNotNull(Object object, Supplier<? extends RuntimeException> exception) {
if (object == null) throw exception.get();
}
/**
* Проверка на null значение с возвращением исключения, если объект null.
*
* @param object Проверяемый объект
* @throws NullPointerException
*/
public static void isNotNull(Object object) {
if (object == null) throw new NullPointerException("Object cannot be null");
public static void isAnyNotNull(Supplier<? extends RuntimeException> e, Object... objects) {
for (Object o : objects)
if (checkNull(o)) throw e.get();
}
/**
@ -67,7 +51,7 @@ public final class Inspector {
*/
public static void isNotNull(Object... objects) {
for (Object o : objects)
if (o == null) throw new NullPointerException("Object cannot be null");
if (checkNull(o)) throw new NullPointerException("Object cannot be null");
}
/**
@ -90,46 +74,6 @@ public final class Inspector {
if (flag) throw exception.get();
}
/**
* Проверка коллекции на пустоту.
*
* @return false - если коллекция null или пустая, true в противном случае.
*/
public static boolean isNotEmpty(Collection<?> collection) {
return collection != null && !collection.isEmpty();
}
/**
* Проверка массива на пустоту
*
* @return false - если массив null или пустой, true в противном случае.
*/
public static boolean isNotEmpty(Object... args) {
if (args == null) {
return false;
} else {
return args.length > 0;
}
}
/**
* Проверка коллекции на пустоту.
*
* @return true - если коллекция null или пустая, false в противном случае
*/
public static boolean isEmpty(Collection<?> collection) {
return collection == null || collection.isEmpty();
}
/**
* Проверка массива на пустоту.
*
* @return true - если массив null или пустой, false в противном случае
*/
public static boolean isEmpty(Object... args) {
return args == null || args.length == 0;
}
/**
* Проверка коллекции на пустоту. Если коллекция пустая или null, то будет выбрашено исключение.
*
@ -137,7 +81,7 @@ public final class Inspector {
* @throws RuntimeException
*/
public static void isNotEmpty(Collection<?> collection, Supplier<? extends RuntimeException> exception) {
if (isEmpty(collection)) {
if (checkEmpty(collection)) {
throw exception.get();
}
}
@ -149,7 +93,7 @@ public final class Inspector {
* @throws RuntimeException
*/
public static void isNotEmpty(Supplier<? extends RuntimeException> exception, Object... args) {
if (isEmpty(args)) {
if (checkEmpty(args)) {
throw exception.get();
}
}
@ -161,7 +105,7 @@ public final class Inspector {
* @throws RuntimeException
*/
public static void isEmpty(Collection<?> collection, Supplier<? extends RuntimeException> exception) {
if (isNotEmpty(collection)) throw exception.get();
if (checkNotEmpty(collection)) throw exception.get();
}
/**
@ -171,14 +115,13 @@ public final class Inspector {
* @throws RuntimeException
*/
public static void isEmpty(Supplier<? extends RuntimeException> exception, Object... args) {
if (isNotEmpty(args)) throw exception.get();
if (checkNotEmpty(args)) throw exception.get();
}
/**
* Утилитарный класс.
*/
public static final class Utils {
private Utils() {
utilityClass();
}

View File

@ -6,7 +6,7 @@
<groupId>dev.struchkov.haiti</groupId>
<artifactId>haiti</artifactId>
<version>1.0.2</version>
<version>1.0.3</version>
<packaging>pom</packaging>
<name>Haiti Framework</name>
@ -39,7 +39,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<haiti.ver>1.0.2</haiti.ver>
<haiti.ver>1.0.3</haiti.ver>
<haiti.bom.ver>${haiti.ver}</haiti.bom.ver>
<haiti.exception.ver>${haiti.ver}</haiti.exception.ver>