parent
c6cac8c320
commit
fe0c0faf3e
|
@ -0,0 +1,22 @@
|
||||||
|
package com.dispose.common;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The interface Base enum.
|
||||||
|
*
|
||||||
|
* @author <huangxin@cmhi.chinamoblie.com>
|
||||||
|
*/
|
||||||
|
public interface BaseEnum {
|
||||||
|
/**
|
||||||
|
* Gets value.
|
||||||
|
*
|
||||||
|
* @return the value
|
||||||
|
*/
|
||||||
|
Integer getValue();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets description.
|
||||||
|
*
|
||||||
|
* @return the description
|
||||||
|
*/
|
||||||
|
String getDescription();
|
||||||
|
}
|
|
@ -0,0 +1,125 @@
|
||||||
|
package com.dispose.common;
|
||||||
|
|
||||||
|
import org.apache.ibatis.type.BaseTypeHandler;
|
||||||
|
import org.apache.ibatis.type.JdbcType;
|
||||||
|
|
||||||
|
import java.sql.CallableStatement;
|
||||||
|
import java.sql.PreparedStatement;
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.sql.SQLException;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The type Common enum handler.
|
||||||
|
*
|
||||||
|
* @param <E> the type parameter
|
||||||
|
* @author <huangxin@cmhi.chinamoblie.com>
|
||||||
|
*/
|
||||||
|
public final class CommonEnumHandler<E extends BaseEnum> extends BaseTypeHandler<E> {
|
||||||
|
/**
|
||||||
|
* The Enum type.
|
||||||
|
*/
|
||||||
|
private final Class<E> enumType;
|
||||||
|
/**
|
||||||
|
* The Enums.
|
||||||
|
*/
|
||||||
|
private List<E> enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Instantiates a new Common enum handler.
|
||||||
|
*
|
||||||
|
* @param type the type
|
||||||
|
*/
|
||||||
|
public CommonEnumHandler(Class<E> type) {
|
||||||
|
if (type == null) {
|
||||||
|
throw new IllegalArgumentException("Type argument cannot be null");
|
||||||
|
}
|
||||||
|
|
||||||
|
this.enumType = type;
|
||||||
|
this.enums = Arrays.asList(type.getEnumConstants());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets non null parameter.
|
||||||
|
*
|
||||||
|
* @param preparedStatement the prepared statement
|
||||||
|
* @param i the
|
||||||
|
* @param e the e
|
||||||
|
* @param jdbcType the jdbc type
|
||||||
|
* @throws SQLException the sql exception
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void setNonNullParameter(PreparedStatement preparedStatement, int i, E e, JdbcType jdbcType) throws SQLException {
|
||||||
|
preparedStatement.setInt(i, e.getValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets nullable result.
|
||||||
|
*
|
||||||
|
* @param resultSet the result set
|
||||||
|
* @param s the s
|
||||||
|
* @return the nullable result
|
||||||
|
* @throws SQLException the sql exception
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public E getNullableResult(ResultSet resultSet, String s) throws SQLException {
|
||||||
|
if (resultSet.getObject(s) == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
int val = resultSet.getInt(s);
|
||||||
|
return locateEnumStatus(val);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets nullable result.
|
||||||
|
*
|
||||||
|
* @param resultSet the result set
|
||||||
|
* @param index the index
|
||||||
|
* @return the nullable result
|
||||||
|
* @throws SQLException the sql exception
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public E getNullableResult(ResultSet resultSet, int index) throws SQLException {
|
||||||
|
if (resultSet.getObject(index) == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
int val = resultSet.getInt(index);
|
||||||
|
return locateEnumStatus(val);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets nullable result.
|
||||||
|
*
|
||||||
|
* @param callableStatement the callable statement
|
||||||
|
* @param index the index
|
||||||
|
* @return the nullable result
|
||||||
|
* @throws SQLException the sql exception
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public E getNullableResult(CallableStatement callableStatement, int index) throws SQLException {
|
||||||
|
if (callableStatement.getObject(index) == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
int val = callableStatement.getInt(index);
|
||||||
|
return locateEnumStatus(val);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Locate enum status e.
|
||||||
|
*
|
||||||
|
* @param index the index
|
||||||
|
* @return the e
|
||||||
|
*/
|
||||||
|
private E locateEnumStatus(int index) {
|
||||||
|
for (E e : enums) {
|
||||||
|
if (e.getValue() == index) {
|
||||||
|
return e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
throw new IllegalArgumentException(enumType.getName() + " unknown enumerated type index:" + index);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,11 +1,12 @@
|
||||||
package com.dispose.common;
|
package com.dispose.common;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The enum Dispose object type.
|
* The enum Dispose object type.
|
||||||
*
|
*
|
||||||
* @author <huangxin@cmhi.chinamoblie.com>
|
* @author <huangxin@cmhi.chinamoblie.com>
|
||||||
*/
|
*/
|
||||||
public enum DisposeObjectType {
|
public enum DisposeObjectType implements BaseEnum {
|
||||||
/**
|
/**
|
||||||
* The Ip.
|
* The Ip.
|
||||||
*/
|
*/
|
||||||
|
@ -23,11 +24,11 @@ public enum DisposeObjectType {
|
||||||
/**
|
/**
|
||||||
* The Code.
|
* The Code.
|
||||||
*/
|
*/
|
||||||
private final int code;
|
private Integer value;
|
||||||
/**
|
/**
|
||||||
* The Readme.
|
* The Readme.
|
||||||
*/
|
*/
|
||||||
private final String readme;
|
private String description;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Instantiates a new Dispose object type.
|
* Instantiates a new Dispose object type.
|
||||||
|
@ -36,8 +37,8 @@ public enum DisposeObjectType {
|
||||||
* @param readme the readme
|
* @param readme the readme
|
||||||
*/
|
*/
|
||||||
DisposeObjectType(int code, String readme) {
|
DisposeObjectType(int code, String readme) {
|
||||||
this.code = code;
|
this.value = code;
|
||||||
this.readme = readme;
|
this.description = readme;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -45,8 +46,9 @@ public enum DisposeObjectType {
|
||||||
*
|
*
|
||||||
* @return the code
|
* @return the code
|
||||||
*/
|
*/
|
||||||
public int getCode() {
|
@Override
|
||||||
return this.code;
|
public Integer getValue() {
|
||||||
|
return this.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -54,7 +56,8 @@ public enum DisposeObjectType {
|
||||||
*
|
*
|
||||||
* @return the readme
|
* @return the readme
|
||||||
*/
|
*/
|
||||||
public String getReadme() {
|
@Override
|
||||||
return this.readme;
|
public String getDescription() {
|
||||||
|
return this.description;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.dispose.pojo.entity;
|
package com.dispose.pojo.entity;
|
||||||
|
|
||||||
|
import com.dispose.common.DisposeObjectType;
|
||||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
|
@ -55,7 +56,7 @@ public class DisposeCapacity {
|
||||||
/**
|
/**
|
||||||
* The Object type.
|
* The Object type.
|
||||||
*/
|
*/
|
||||||
private Integer objectType;
|
private DisposeObjectType objectType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Ip type.
|
* The Ip type.
|
||||||
|
|
|
@ -59,7 +59,7 @@ public class DisposeCapacityMapperTest {
|
||||||
.deviceId(1L)
|
.deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.CLEANUP.getCode())
|
.capacityType(DisposeCapacityType.CLEANUP.getCode())
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
.objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
.protectIp("")
|
||||||
.build());
|
.build());
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ public class DisposeCapacityMapperTest {
|
||||||
.deviceId(1L)
|
.deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.BLOCKING.getCode())
|
.capacityType(DisposeCapacityType.BLOCKING.getCode())
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
.objectType(DisposeObjectType.URL)
|
||||||
.protectIp("")
|
.protectIp("")
|
||||||
.build());
|
.build());
|
||||||
|
|
||||||
|
@ -80,105 +80,105 @@ public class DisposeCapacityMapperTest {
|
||||||
log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
// /**
|
||||||
* A 2 del dispose capacity.
|
// * A 2 del dispose capacity.
|
||||||
*
|
// *
|
||||||
* @throws JsonProcessingException the json processing exception
|
// * @throws JsonProcessingException the json processing exception
|
||||||
*/
|
// */
|
||||||
@Test
|
// @Test
|
||||||
public void a2_delDisposeCapacity() throws JsonProcessingException {
|
// public void a2_delDisposeCapacity() throws JsonProcessingException {
|
||||||
List<DisposeCapacity> newCapList = new ArrayList<>();
|
// List<DisposeCapacity> newCapList = new ArrayList<>();
|
||||||
|
//
|
||||||
newCapList.add(DisposeCapacity.builder()
|
// newCapList.add(DisposeCapacity.builder()
|
||||||
.deviceId(1L)
|
// .deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
// .ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.CLEANUP.getCode())
|
// .capacityType(DisposeCapacityType.CLEANUP)
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
// .objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
// .protectIp("")
|
||||||
.build());
|
// .build());
|
||||||
|
//
|
||||||
newCapList.add(DisposeCapacity.builder()
|
// newCapList.add(DisposeCapacity.builder()
|
||||||
.deviceId(1L)
|
// .deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
// .ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.BLOCKING.getCode())
|
// .capacityType(DisposeCapacityType.BLOCKING)
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
// .objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
// .protectIp("")
|
||||||
.build());
|
// .build());
|
||||||
|
//
|
||||||
int items = disposeCapacityMapper.addNewDisposeCapacity(newCapList);
|
// int items = disposeCapacityMapper.addNewDisposeCapacity(newCapList);
|
||||||
|
//
|
||||||
Assert.assertEquals(items, newCapList.size());
|
// Assert.assertEquals(items, newCapList.size());
|
||||||
|
//
|
||||||
List<DisposeCapacity> capList = disposeCapacityMapper.selectAll();
|
// List<DisposeCapacity> capList = disposeCapacityMapper.selectAll();
|
||||||
|
//
|
||||||
log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
// log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
||||||
|
//
|
||||||
items = disposeCapacityMapper.delDisposeCapacity(capList.get(0).getDeviceId(),
|
// items = disposeCapacityMapper.delDisposeCapacity(capList.get(0).getDeviceId(),
|
||||||
capList.get(0).getCapacityType());
|
// capList.get(0).getCapacityType().getCode());
|
||||||
|
//
|
||||||
Assert.assertEquals(items, 1);
|
// Assert.assertEquals(items, 1);
|
||||||
|
//
|
||||||
capList = disposeCapacityMapper.selectAll();
|
// capList = disposeCapacityMapper.selectAll();
|
||||||
|
//
|
||||||
Assert.assertEquals(capList.size(), 1);
|
// Assert.assertEquals(capList.size(), 1);
|
||||||
|
//
|
||||||
log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
// log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Test
|
// @Test
|
||||||
public void a3_delDeviceDisposeCapacity() {
|
// public void a3_delDeviceDisposeCapacity() {
|
||||||
List<DisposeCapacity> newCapList = new ArrayList<>();
|
// List<DisposeCapacity> newCapList = new ArrayList<>();
|
||||||
|
//
|
||||||
newCapList.add(DisposeCapacity.builder()
|
// newCapList.add(DisposeCapacity.builder()
|
||||||
.deviceId(1L)
|
// .deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
// .ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.CLEANUP.getCode())
|
// .capacityType(DisposeCapacityType.CLEANUP)
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
// .objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
// .protectIp("")
|
||||||
.build());
|
// .build());
|
||||||
|
//
|
||||||
newCapList.add(DisposeCapacity.builder()
|
// newCapList.add(DisposeCapacity.builder()
|
||||||
.deviceId(1L)
|
// .deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
// .ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.BLOCKING.getCode())
|
// .capacityType(DisposeCapacityType.BLOCKING)
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
// .objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
// .protectIp("")
|
||||||
.build());
|
// .build());
|
||||||
|
//
|
||||||
Assert.assertEquals(disposeCapacityMapper.addNewDisposeCapacity(newCapList), newCapList.size());
|
// Assert.assertEquals(disposeCapacityMapper.addNewDisposeCapacity(newCapList), newCapList.size());
|
||||||
|
//
|
||||||
Assert.assertEquals(disposeCapacityMapper.delDeviceDisposeCapacity(newCapList.get(0).getDeviceId()),
|
// Assert.assertEquals(disposeCapacityMapper.delDeviceDisposeCapacity(newCapList.get(0).getDeviceId()),
|
||||||
newCapList.size());
|
// newCapList.size());
|
||||||
|
//
|
||||||
Assert.assertEquals(0, disposeCapacityMapper.selectAll().size());
|
// Assert.assertEquals(0, disposeCapacityMapper.selectAll().size());
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Test
|
// @Test
|
||||||
public void b1_getDeviceDisposeCapacity() throws JsonProcessingException {
|
// public void b1_getDeviceDisposeCapacity() throws JsonProcessingException {
|
||||||
List<DisposeCapacity> newCapList = new ArrayList<>();
|
// List<DisposeCapacity> newCapList = new ArrayList<>();
|
||||||
|
//
|
||||||
newCapList.add(DisposeCapacity.builder()
|
// newCapList.add(DisposeCapacity.builder()
|
||||||
.deviceId(1L)
|
// .deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
// .ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.CLEANUP.getCode())
|
// .capacityType(DisposeCapacityType.CLEANUP)
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
// .objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
// .protectIp("")
|
||||||
.build());
|
// .build());
|
||||||
|
//
|
||||||
newCapList.add(DisposeCapacity.builder()
|
// newCapList.add(DisposeCapacity.builder()
|
||||||
.deviceId(1L)
|
// .deviceId(1L)
|
||||||
.ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
// .ipType(IpAddrType.IPV4.getCode() | IpAddrType.IPV6.getCode())
|
||||||
.capacityType(DisposeCapacityType.BLOCKING.getCode())
|
// .capacityType(DisposeCapacityType.BLOCKING)
|
||||||
.objectType(DisposeObjectType.IP.getCode())
|
// .objectType(DisposeObjectType.IP)
|
||||||
.protectIp("")
|
// .protectIp("")
|
||||||
.build());
|
// .build());
|
||||||
|
//
|
||||||
Assert.assertEquals(disposeCapacityMapper.addNewDisposeCapacity(newCapList), newCapList.size());
|
// Assert.assertEquals(disposeCapacityMapper.addNewDisposeCapacity(newCapList), newCapList.size());
|
||||||
|
//
|
||||||
List<DisposeCapacity> capList = disposeCapacityMapper.getDeviceDisposeCapacity(newCapList.get(0).getDeviceId());
|
// List<DisposeCapacity> capList = disposeCapacityMapper.getDeviceDisposeCapacity(newCapList.get(0).getDeviceId());
|
||||||
|
//
|
||||||
Assert.assertEquals(capList.size(), newCapList.size());
|
// Assert.assertEquals(capList.size(), newCapList.size());
|
||||||
|
//
|
||||||
log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
// log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(capList));
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue