ing
This commit is contained in:
parent
c3ca0ea93b
commit
07e9f73e48
13
.editorconfig
Normal file
13
.editorconfig
Normal file
|
@ -0,0 +1,13 @@
|
|||
# Editor configuration, see http://editorconfig.org
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.md]
|
||||
max_line_length = off
|
||||
trim_trailing_whitespace = false
|
3
.vscode/settings.json
vendored
3
.vscode/settings.json
vendored
|
@ -1,3 +1,6 @@
|
|||
{
|
||||
"editor.tabSize": 2,
|
||||
"editor.insertSpaces": true,
|
||||
|
||||
"java.configuration.updateBuildConfiguration": "automatic"
|
||||
}
|
|
@ -5,17 +5,17 @@ import com.loafle.overflow.central.proxy.ServiceProxy;
|
|||
import java.io.IOException;
|
||||
|
||||
public class Central {
|
||||
public static void main(String[] args) throws IOException, InterruptedException {
|
||||
if(args.length <= 0) {
|
||||
System.out.println("Port args");
|
||||
System.out.println("first parameter is Port Number");
|
||||
return;
|
||||
}
|
||||
|
||||
int port = Integer.valueOf(args[0]);
|
||||
|
||||
final ServiceProxy server = new ServiceProxy();
|
||||
server.start(port);
|
||||
server.blockUntilShutdown();
|
||||
public static void main(String[] args) throws IOException, InterruptedException {
|
||||
if (args.length <= 0) {
|
||||
System.out.println("Port args");
|
||||
System.out.println("first parameter is Port Number");
|
||||
return;
|
||||
}
|
||||
|
||||
int port = Integer.valueOf(args[0]);
|
||||
|
||||
final ServiceProxy server = new ServiceProxy();
|
||||
server.start(port);
|
||||
server.blockUntilShutdown();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,19 +3,19 @@ package com.loafle.overflow.central.commons.service;
|
|||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
|
||||
public interface MessagePublisher {
|
||||
void publishToDomainMembers(final Long domainID, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
void publishToDomainMembers(final Long domainID, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
|
||||
void publishToDomainMembersByProbeKey(final String probeKey, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
void publishToDomainMembersByProbeKey(final String probeKey, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
|
||||
void publishToMember(final String memberID, final String method, final Object... params) throws OverflowException;
|
||||
void publishToMember(final String memberID, final String method, final Object... params) throws OverflowException;
|
||||
|
||||
void publishToMemberSession(final String memberSessionID, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
void publishToMemberSession(final String memberSessionID, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
|
||||
void publishToNoAuthProbe(final String tempProbeKey, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
void publishToNoAuthProbe(final String tempProbeKey, final String method, final Object... params)
|
||||
throws OverflowException;
|
||||
|
||||
void publishToProbe(final String probeKey, final String method, final Object... params) throws OverflowException;
|
||||
void publishToProbe(final String probeKey, final String method, final Object... params) throws OverflowException;
|
||||
}
|
||||
|
|
|
@ -29,106 +29,106 @@ import java.util.Map;
|
|||
@Service("EmailSender")
|
||||
public class EmailSender {
|
||||
|
||||
@Autowired
|
||||
private JavaMailSender mailSender;
|
||||
@Autowired
|
||||
private JavaMailSender mailSender;
|
||||
|
||||
@Autowired
|
||||
private VelocityEngine velocityEngine;
|
||||
@Autowired
|
||||
private VelocityEngine velocityEngine;
|
||||
|
||||
private String key = "loafle@RandomKey";
|
||||
private String initVector = "loafleInitVector";
|
||||
private String key = "loafle@RandomKey";
|
||||
private String initVector = "loafleInitVector";
|
||||
|
||||
public void sendSimpleEmail(final Mail mail) throws MailException {
|
||||
public void sendSimpleEmail(final Mail mail) throws MailException {
|
||||
|
||||
MimeMessagePreparator preparator = mimeMessage -> {
|
||||
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8");
|
||||
helper.setTo(mail.getMailTo());
|
||||
helper.setFrom("geek@loafle.com");
|
||||
helper.setSubject(mail.getMailSubject());
|
||||
helper.setText(getContentFromTemplate(mail.getModel(), mail), true);
|
||||
helper.addInline("company-logo", new ClassPathResource("/vmtemplates/overFlow_logo.png"));
|
||||
};
|
||||
MimeMessagePreparator preparator = mimeMessage -> {
|
||||
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8");
|
||||
helper.setTo(mail.getMailTo());
|
||||
helper.setFrom("geek@loafle.com");
|
||||
helper.setSubject(mail.getMailSubject());
|
||||
helper.setText(getContentFromTemplate(mail.getModel(), mail), true);
|
||||
helper.addInline("company-logo", new ClassPathResource("/vmtemplates/overFlow_logo.png"));
|
||||
};
|
||||
|
||||
this.mailSender.send(preparator);
|
||||
this.mailSender.send(preparator);
|
||||
}
|
||||
|
||||
public void sendMailWithAttachment(Mail mail) throws MessagingException {
|
||||
MimeMessage message = mailSender.createMimeMessage();
|
||||
// pass 'true' to the constructor to create a multipart message
|
||||
MimeMessageHelper helper = new MimeMessageHelper(message, true);
|
||||
|
||||
helper.setTo(mail.getMailTo());
|
||||
helper.setSubject(mail.getMailSubject());
|
||||
helper.setText(mail.getMailContent());
|
||||
helper.setFrom("geek@loafle.com");
|
||||
// FileSystemResource file = new FileSystemResource(new
|
||||
// File(mail.getAttachments()));
|
||||
// helper.addAttachment("Invoice", file);
|
||||
|
||||
mailSender.send(message);
|
||||
}
|
||||
|
||||
public String encrypt(String value) {
|
||||
try {
|
||||
IvParameterSpec iv = new IvParameterSpec(initVector.getBytes("UTF-8"));
|
||||
|
||||
SecretKeySpec skeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "AES");
|
||||
|
||||
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
|
||||
cipher.init(Cipher.ENCRYPT_MODE, skeySpec, iv);
|
||||
|
||||
byte[] encrypted = cipher.doFinal(value.getBytes());
|
||||
System.out.println("encrypted string: " + Base64.encodeBase64String(encrypted));
|
||||
|
||||
return Base64.encodeBase64String(encrypted);
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
public void sendMailWithAttachment(Mail mail) throws MessagingException {
|
||||
MimeMessage message = mailSender.createMimeMessage();
|
||||
// pass 'true' to the constructor to create a multipart message
|
||||
MimeMessageHelper helper = new MimeMessageHelper(message, true);
|
||||
return null;
|
||||
}
|
||||
|
||||
helper.setTo(mail.getMailTo());
|
||||
helper.setSubject(mail.getMailSubject());
|
||||
helper.setText(mail.getMailContent());
|
||||
helper.setFrom("geek@loafle.com");
|
||||
// FileSystemResource file = new FileSystemResource(new
|
||||
// File(mail.getAttachments()));
|
||||
// helper.addAttachment("Invoice", file);
|
||||
public String decrypt(String encrypted) {
|
||||
try {
|
||||
IvParameterSpec iv = new IvParameterSpec(initVector.getBytes("UTF-8"));
|
||||
SecretKeySpec skeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "AES");
|
||||
|
||||
mailSender.send(message);
|
||||
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
|
||||
cipher.init(Cipher.DECRYPT_MODE, skeySpec, iv);
|
||||
|
||||
byte[] original = cipher.doFinal(Base64.decodeBase64(encrypted));
|
||||
|
||||
return new String(original);
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
public String encrypt(String value) {
|
||||
try {
|
||||
IvParameterSpec iv = new IvParameterSpec(initVector.getBytes("UTF-8"));
|
||||
return null;
|
||||
}
|
||||
|
||||
SecretKeySpec skeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "AES");
|
||||
private String getContentFromTemplate(Map<String, Object> model, Mail mail) {
|
||||
StringWriter writer = new StringWriter();
|
||||
VelocityContext context = new VelocityContext();
|
||||
|
||||
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
|
||||
cipher.init(Cipher.ENCRYPT_MODE, skeySpec, iv);
|
||||
Template template = this.velocityEngine.getTemplate(mail.getTemplateLoacation(), "UTF-8");
|
||||
|
||||
byte[] encrypted = cipher.doFinal(value.getBytes());
|
||||
System.out.println("encrypted string: " + Base64.encodeBase64String(encrypted));
|
||||
model.forEach((key, value) -> {
|
||||
context.put(key, value);
|
||||
});
|
||||
|
||||
return Base64.encodeBase64String(encrypted);
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
template.merge(context, writer);
|
||||
|
||||
return null;
|
||||
}
|
||||
// try {
|
||||
|
||||
public String decrypt(String encrypted) {
|
||||
try {
|
||||
IvParameterSpec iv = new IvParameterSpec(initVector.getBytes("UTF-8"));
|
||||
SecretKeySpec skeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "AES");
|
||||
|
||||
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
|
||||
cipher.init(Cipher.DECRYPT_MODE, skeySpec, iv);
|
||||
|
||||
byte[] original = cipher.doFinal(Base64.decodeBase64(encrypted));
|
||||
|
||||
return new String(original);
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private String getContentFromTemplate(Map<String, Object> model, Mail mail) {
|
||||
StringWriter writer = new StringWriter();
|
||||
VelocityContext context = new VelocityContext();
|
||||
|
||||
Template template = this.velocityEngine.getTemplate(mail.getTemplateLoacation(), "UTF-8");
|
||||
|
||||
model.forEach((key, value) -> {
|
||||
context.put(key, value);
|
||||
});
|
||||
|
||||
template.merge(context, writer);
|
||||
|
||||
// try {
|
||||
|
||||
// template.merge(this.velocityEngine, content);
|
||||
// // content.append(VelocityEngineUtils.mergeTemplateIntoString
|
||||
// // (velocityEngine,
|
||||
// // mail.getTemplateLoacation(), "UTF-8", model));
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
return writer.toString();
|
||||
}
|
||||
// template.merge(this.velocityEngine, content);
|
||||
// // content.append(VelocityEngineUtils.mergeTemplateIntoString
|
||||
// // (velocityEngine,
|
||||
// // mail.getTemplateLoacation(), "UTF-8", model));
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
return writer.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -8,18 +8,18 @@ import com.fasterxml.uuid.impl.TimeBasedGenerator;
|
|||
* Created by geek on 18. 3. 27.
|
||||
*/
|
||||
public class GenerateKey {
|
||||
private static TimeBasedGenerator generator = Generators.timeBasedGenerator(EthernetAddress.fromInterface());
|
||||
private static TimeBasedGenerator generator = Generators.timeBasedGenerator(EthernetAddress.fromInterface());
|
||||
|
||||
public static synchronized String getKey() {
|
||||
public static synchronized String getKey() {
|
||||
|
||||
String[] uuids = generator.generate().toString().split("-");
|
||||
StringBuffer sb = new StringBuffer();
|
||||
String[] uuids = generator.generate().toString().split("-");
|
||||
StringBuffer sb = new StringBuffer();
|
||||
|
||||
for ( int idx = 0; idx < uuids.length; idx++ ) {
|
||||
sb.append(uuids[idx]);
|
||||
}
|
||||
|
||||
return sb.toString();
|
||||
for (int idx = 0; idx < uuids.length; idx++) {
|
||||
sb.append(uuids[idx]);
|
||||
}
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -9,18 +9,20 @@ import org.springframework.data.domain.Sort;
|
|||
* Created by insanity on 17. 8. 25.
|
||||
*/
|
||||
public class PageUtil {
|
||||
private static Sort.Direction getSortDirection(String sortDirection) {
|
||||
if(sortDirection.equalsIgnoreCase("ascending")) {
|
||||
return Sort.Direction.ASC;
|
||||
}
|
||||
return Sort.Direction.DESC;
|
||||
private static Sort.Direction getSortDirection(String sortDirection) {
|
||||
if (sortDirection.equalsIgnoreCase("ascending")) {
|
||||
return Sort.Direction.ASC;
|
||||
}
|
||||
return Sort.Direction.DESC;
|
||||
}
|
||||
|
||||
public static PageRequest getPageRequest(PageParams pageParams) {
|
||||
if(pageParams.getSortCol().isEmpty()) pageParams.setSortCol("id");
|
||||
if(pageParams.getSortDirection().isEmpty()) pageParams.setSortDirection("descending");
|
||||
public static PageRequest getPageRequest(PageParams pageParams) {
|
||||
if (pageParams.getSortCol().isEmpty())
|
||||
pageParams.setSortCol("id");
|
||||
if (pageParams.getSortDirection().isEmpty())
|
||||
pageParams.setSortDirection("descending");
|
||||
|
||||
return new PageRequest(pageParams.getPageNo(), pageParams.getCountPerPage(),
|
||||
new Sort(PageUtil.getSortDirection(pageParams.getSortDirection()), pageParams.getSortCol()));
|
||||
}
|
||||
return new PageRequest(pageParams.getPageNo(), pageParams.getCountPerPage(),
|
||||
new Sort(PageUtil.getSortDirection(pageParams.getSortDirection()), pageParams.getSortCol()));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,46 +6,49 @@ import io.grpc.Metadata;
|
|||
import static io.grpc.Metadata.ASCII_STRING_MARSHALLER;
|
||||
|
||||
public class SessionMetadata {
|
||||
/*
|
||||
digits: 0-9
|
||||
uppercase letters: A-Z (normalized to lower)
|
||||
lowercase letters: a-z
|
||||
special characters: -_.
|
||||
*/
|
||||
/*
|
||||
* digits: 0-9 uppercase letters: A-Z (normalized to lower) lowercase letters:
|
||||
* a-z special characters: -_.
|
||||
*/
|
||||
|
||||
public static final String CLIENT_TYPE_KEY = "OVERFLOW_GRPC_CLIENT_TYPE";
|
||||
public static final String SESSION_ID_KEY = "OVERFLOW_GRPC_SESSION_ID";
|
||||
public static final String TARGET_ID_KEY = "OVERFLOW_GRPC_TARGET_ID";
|
||||
public static final String CLIENT_TYPE_KEY = "OVERFLOW_GRPC_CLIENT_TYPE";
|
||||
public static final String SESSION_ID_KEY = "OVERFLOW_GRPC_SESSION_ID";
|
||||
public static final String TARGET_ID_KEY = "OVERFLOW_GRPC_TARGET_ID";
|
||||
|
||||
public static final Context.Key<String> CTX_CLIENT_TYPE_KEY = Context.key(CLIENT_TYPE_KEY);
|
||||
public static final Context.Key<String> CTX_SESSION_ID_KEY = Context.key(SESSION_ID_KEY);
|
||||
public static final Context.Key<String> CTX_TARGET_ID_KEY = Context.key(TARGET_ID_KEY);
|
||||
public static final Context.Key<String> CTX_CLIENT_TYPE_KEY = Context.key(CLIENT_TYPE_KEY);
|
||||
public static final Context.Key<String> CTX_SESSION_ID_KEY = Context.key(SESSION_ID_KEY);
|
||||
public static final Context.Key<String> CTX_TARGET_ID_KEY = Context.key(TARGET_ID_KEY);
|
||||
|
||||
public static final Metadata.Key<String> METADATA_CLIENT_TYPE_KEY = Metadata.Key.of(CLIENT_TYPE_KEY, ASCII_STRING_MARSHALLER);
|
||||
public static final Metadata.Key<String> METADATA_SESSION_ID_KEY = Metadata.Key.of(SESSION_ID_KEY, ASCII_STRING_MARSHALLER);
|
||||
public static final Metadata.Key<String> METADATA_TARGET_ID_KEY = Metadata.Key.of(TARGET_ID_KEY, ASCII_STRING_MARSHALLER);
|
||||
public static final Metadata.Key<String> METADATA_CLIENT_TYPE_KEY = Metadata.Key.of(CLIENT_TYPE_KEY,
|
||||
ASCII_STRING_MARSHALLER);
|
||||
public static final Metadata.Key<String> METADATA_SESSION_ID_KEY = Metadata.Key.of(SESSION_ID_KEY,
|
||||
ASCII_STRING_MARSHALLER);
|
||||
public static final Metadata.Key<String> METADATA_TARGET_ID_KEY = Metadata.Key.of(TARGET_ID_KEY,
|
||||
ASCII_STRING_MARSHALLER);
|
||||
|
||||
public static ClientType getClientType() {
|
||||
return ClientType.valueOf(CTX_CLIENT_TYPE_KEY.get());
|
||||
}
|
||||
public static String getSessionID() {
|
||||
return CTX_SESSION_ID_KEY.get();
|
||||
}
|
||||
public static String getTargetID() {
|
||||
return CTX_TARGET_ID_KEY.get();
|
||||
public static ClientType getClientType() {
|
||||
return ClientType.valueOf(CTX_CLIENT_TYPE_KEY.get());
|
||||
}
|
||||
|
||||
public static String getSessionID() {
|
||||
return CTX_SESSION_ID_KEY.get();
|
||||
}
|
||||
|
||||
public static String getTargetID() {
|
||||
return CTX_TARGET_ID_KEY.get();
|
||||
}
|
||||
|
||||
public static enum ClientType {
|
||||
MEMBER("MEMBER"), PROBE("PROBE");
|
||||
|
||||
final private String name;
|
||||
|
||||
private ClientType(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public static enum ClientType {
|
||||
MEMBER("MEMBER"),
|
||||
PROBE("PROBE");
|
||||
|
||||
final private String name;
|
||||
|
||||
private ClientType(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
public String toString() {
|
||||
return name;
|
||||
}
|
||||
public String toString() {
|
||||
return name;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,57 +5,51 @@ package com.loafle.overflow.central.commons.utils;
|
|||
*/
|
||||
public class StringConvertor {
|
||||
|
||||
public static String intToIp(long i) {
|
||||
return ((i >> 24 ) & 0xFF) + "." +
|
||||
((i >> 16 ) & 0xFF) + "." +
|
||||
((i >> 8 ) & 0xFF) + "." +
|
||||
( i & 0xFF);
|
||||
public static String intToIp(long i) {
|
||||
return ((i >> 24) & 0xFF) + "." + ((i >> 16) & 0xFF) + "." + ((i >> 8) & 0xFF) + "." + (i & 0xFF);
|
||||
}
|
||||
|
||||
public static long ipToLong(String ipAddress) {
|
||||
|
||||
String[] ipAddressInArray = ipAddress.split("\\.");
|
||||
|
||||
long result = 0;
|
||||
for (int i = 0; i < ipAddressInArray.length; i++) {
|
||||
|
||||
int power = 3 - i;
|
||||
int ip = Integer.parseInt(ipAddressInArray[i]);
|
||||
result += ip * Math.pow(256, power);
|
||||
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public static long ipToLong(String ipAddress) {
|
||||
// https://github.com/Sovietaced/floodlight/blob/master/src/main/java/net/floodlightcontroller/util/MACAddress.java
|
||||
|
||||
String[] ipAddressInArray = ipAddress.split("\\.");
|
||||
public static final int MAC_ADDRESS_LENGTH = 6;
|
||||
|
||||
long result = 0;
|
||||
for (int i = 0; i < ipAddressInArray.length; i++) {
|
||||
|
||||
int power = 3 - i;
|
||||
int ip = Integer.parseInt(ipAddressInArray[i]);
|
||||
result += ip * Math.pow(256, power);
|
||||
|
||||
}
|
||||
|
||||
return result;
|
||||
public static long macStrToLong(String address) {
|
||||
String[] elements = address.split(":");
|
||||
if (elements.length != MAC_ADDRESS_LENGTH) {
|
||||
throw new IllegalArgumentException(
|
||||
"Specified MAC Address must contain 12 hex digits" + " separated pairwise by :'s.");
|
||||
}
|
||||
|
||||
|
||||
// https://github.com/Sovietaced/floodlight/blob/master/src/main/java/net/floodlightcontroller/util/MACAddress.java
|
||||
|
||||
public static final int MAC_ADDRESS_LENGTH = 6;
|
||||
|
||||
public static long macStrToLong(String address) {
|
||||
String[] elements = address.split(":");
|
||||
if (elements.length != MAC_ADDRESS_LENGTH) {
|
||||
throw new IllegalArgumentException(
|
||||
"Specified MAC Address must contain 12 hex digits" +
|
||||
" separated pairwise by :'s.");
|
||||
}
|
||||
|
||||
byte[] addressInBytes = new byte[MAC_ADDRESS_LENGTH];
|
||||
for (int i = 0; i < MAC_ADDRESS_LENGTH; i++) {
|
||||
String element = elements[i];
|
||||
addressInBytes[i] = (byte)Integer.parseInt(element, 16);
|
||||
}
|
||||
|
||||
long mac = 0;
|
||||
for (int i = 0; i < 6; i++) {
|
||||
long t = (addressInBytes[i] & 0xffL) << ((5 - i) * 8);
|
||||
mac |= t;
|
||||
}
|
||||
return mac;
|
||||
|
||||
// return new MACAddress(addressInBytes);
|
||||
byte[] addressInBytes = new byte[MAC_ADDRESS_LENGTH];
|
||||
for (int i = 0; i < MAC_ADDRESS_LENGTH; i++) {
|
||||
String element = elements[i];
|
||||
addressInBytes[i] = (byte) Integer.parseInt(element, 16);
|
||||
}
|
||||
|
||||
long mac = 0;
|
||||
for (int i = 0; i < 6; i++) {
|
||||
long t = (addressInBytes[i] & 0xffL) << ((5 - i) * 8);
|
||||
mac |= t;
|
||||
}
|
||||
return mac;
|
||||
|
||||
// return new MACAddress(addressInBytes);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,19 +1,16 @@
|
|||
package com.loafle.overflow.central.module.apikey.dao;
|
||||
|
||||
|
||||
|
||||
import com.loafle.overflow.model.apikey.ApiKey;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
|
||||
/**
|
||||
* Created by root on 17. 6. 1.
|
||||
*/
|
||||
@Repository
|
||||
public interface ApiKeyDAO extends JpaRepository<ApiKey, Long> {
|
||||
|
||||
ApiKey findByApiKey(String apiKey);
|
||||
ApiKey findByApiKey(String apiKey);
|
||||
|
||||
ApiKey findByDomainId(Long domainID);
|
||||
ApiKey findByDomainId(Long domainID);
|
||||
}
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.loafle.overflow.central.module.apikey.service;
|
||||
|
||||
|
||||
import com.loafle.overflow.central.module.apikey.dao.ApiKeyDAO;
|
||||
|
||||
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.apikey.ApiKey;
|
||||
import com.loafle.overflow.service.central.apikey.ApiKeyService;
|
||||
|
@ -16,33 +14,31 @@ import org.springframework.stereotype.Service;
|
|||
@Service("ApiKeyService")
|
||||
public class CentralApiKeyService implements ApiKeyService {
|
||||
|
||||
@Autowired
|
||||
private ApiKeyDAO apiKeyDAO;
|
||||
|
||||
@Autowired
|
||||
private ApiKeyDAO apiKeyDAO;
|
||||
public ApiKey regist(ApiKey apiKey) throws OverflowException {
|
||||
|
||||
return this.apiKeyDAO.save(apiKey);
|
||||
}
|
||||
|
||||
public ApiKey regist(ApiKey apiKey) throws OverflowException {
|
||||
public ApiKey readByDomainID(Long domainID) throws OverflowException {
|
||||
return this.apiKeyDAO.findByDomainId(domainID);
|
||||
}
|
||||
|
||||
return this.apiKeyDAO.save(apiKey);
|
||||
public boolean check(String apiKey) throws OverflowException {
|
||||
|
||||
ApiKey retApiKey = this.apiKeyDAO.findByApiKey(apiKey);
|
||||
|
||||
if (retApiKey == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public ApiKey readByDomainID(Long domainID) throws OverflowException {
|
||||
return this.apiKeyDAO.findByDomainId(domainID);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean check(String apiKey) throws OverflowException {
|
||||
|
||||
ApiKey retApiKey = this.apiKeyDAO.findByApiKey(apiKey);
|
||||
|
||||
if(retApiKey == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public ApiKey readByApiKey(String apiKey) throws OverflowException{
|
||||
return this.apiKeyDAO.findByApiKey(apiKey);
|
||||
}
|
||||
public ApiKey readByApiKey(String apiKey) throws OverflowException {
|
||||
return this.apiKeyDAO.findByApiKey(apiKey);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -9,5 +9,5 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface AuthCrawlerDAO extends JpaRepository<AuthCrawler, Long> {
|
||||
AuthCrawler findByMetaCrawlerIdAndTargetId(Short metaCrawlerId, Long targetId);
|
||||
AuthCrawler findByMetaCrawlerIdAndTargetId(Short metaCrawlerId, Long targetId);
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ public class CentralAuthCrawlerService implements AuthCrawlerService {
|
|||
|
||||
public AuthCrawler regist(AuthCrawler authCrawler) {
|
||||
// if (authCrawler == null) {
|
||||
// return this.authCrawlerDAO.save(authCrawler);
|
||||
// return this.authCrawlerDAO.save(authCrawler);
|
||||
// }
|
||||
|
||||
AuthCrawler dbAuthCrawler = this.authCrawlerDAO.findByMetaCrawlerIdAndTargetId(authCrawler.getMetaCrawler().getId(),
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package com.loafle.overflow.central.module.domain.dao;
|
||||
|
||||
|
||||
import com.loafle.overflow.model.domain.Domain;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
@ -9,5 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by root on 17. 6. 23.
|
||||
*/
|
||||
@Repository
|
||||
public interface DomainDAO extends JpaRepository<Domain, Long> {
|
||||
public interface DomainDAO extends JpaRepository<Domain, Long> {
|
||||
}
|
||||
|
|
|
@ -11,8 +11,8 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface EmailAuthDAO extends JpaRepository<EmailAuth, Long> {
|
||||
EmailAuth findByEmailAuthKey(String emailAuthKey);
|
||||
EmailAuth findByEmailAuthKey(String emailAuthKey);
|
||||
|
||||
List<EmailAuth> findByMemberId(Long memberId);
|
||||
List<EmailAuth> findByMemberId(Long memberId);
|
||||
|
||||
}
|
||||
|
|
|
@ -23,82 +23,75 @@ import java.util.Map;
|
|||
@Service("GenerateUtil")
|
||||
public class GenerateUtil {
|
||||
|
||||
@Autowired
|
||||
private MetaSensorItemKeyService metaSensorItemKeyService;
|
||||
@Autowired
|
||||
private MetaSensorItemKeyService metaSensorItemKeyService;
|
||||
|
||||
private Map<Short, Map<Integer, MetaSensorItemKey>> mappingMap = null;
|
||||
|
||||
public Map<Integer, MetaSensorItemKey> initMappingMap(MetaCrawler metaCrawler) throws OverflowException {
|
||||
|
||||
private Map<Short, Map<Integer, MetaSensorItemKey>> mappingMap = null;
|
||||
|
||||
public Map<Integer, MetaSensorItemKey> initMappingMap(MetaCrawler metaCrawler) throws OverflowException {
|
||||
|
||||
if(this.mappingMap == null) {
|
||||
this.mappingMap = new HashMap<>();
|
||||
}
|
||||
|
||||
Map<Integer, MetaSensorItemKey> resultMap = this.mappingMap.get(metaCrawler.getId());
|
||||
|
||||
if(resultMap != null) {
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
resultMap = this.metaSensorItemKeyService.readAllMapByMetaCrawlerID(metaCrawler.getId());
|
||||
this.mappingMap.put(metaCrawler.getId(), resultMap);
|
||||
|
||||
return resultMap;
|
||||
if (this.mappingMap == null) {
|
||||
this.mappingMap = new HashMap<>();
|
||||
}
|
||||
|
||||
Map<Integer, MetaSensorItemKey> resultMap = this.mappingMap.get(metaCrawler.getId());
|
||||
|
||||
|
||||
public Crawler getCrawler(MetaCrawler metaCrawler) throws OverflowException {
|
||||
|
||||
Crawler crawler = new Crawler();
|
||||
crawler.setName(metaCrawler.getName());
|
||||
|
||||
String container = "";
|
||||
|
||||
if(metaCrawler.getId() == MetaCrawlerEnum.CASSANDRA_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.CASSANDRA_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.MONGODB_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.MSSQL_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.ORACLE_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.POSTGRESQL_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.JMX_CRAWLER.getValue()) {
|
||||
container = "java_proxy";
|
||||
}
|
||||
else {
|
||||
container = "network_proxy";
|
||||
}
|
||||
|
||||
crawler.setContainer(container);
|
||||
|
||||
return crawler;
|
||||
if (resultMap != null) {
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
resultMap = this.metaSensorItemKeyService.readAllMapByMetaCrawlerID(metaCrawler.getId());
|
||||
this.mappingMap.put(metaCrawler.getId(), resultMap);
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
public Crawler getCrawler(MetaCrawler metaCrawler) throws OverflowException {
|
||||
|
||||
public Map<String, List<MetaSensorItemKey>> sortItems(List<SensorItem> sensorItems, Map<Integer, MetaSensorItemKey> keyMap) throws OverflowException {
|
||||
Crawler crawler = new Crawler();
|
||||
crawler.setName(metaCrawler.getName());
|
||||
|
||||
Map<String, List<MetaSensorItemKey>> metricMap = new HashMap<>();
|
||||
String container = "";
|
||||
|
||||
MetaSensorItemKey itemKey = null;
|
||||
|
||||
for(SensorItem sItem : sensorItems) {
|
||||
itemKey = keyMap.get(sItem.getMetaSensorDisplayItem().getId());
|
||||
if(metricMap.containsKey(itemKey.getFroms()) == false) {
|
||||
metricMap.put(itemKey.getFroms(), new ArrayList<>());
|
||||
}
|
||||
metricMap.get(itemKey.getFroms()).add(itemKey);
|
||||
}
|
||||
|
||||
return metricMap;
|
||||
if (metaCrawler.getId() == MetaCrawlerEnum.CASSANDRA_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.CASSANDRA_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.MONGODB_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.MSSQL_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.ORACLE_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.POSTGRESQL_CRAWLER.getValue()
|
||||
|| metaCrawler.getId() == MetaCrawlerEnum.JMX_CRAWLER.getValue()) {
|
||||
container = "java_proxy";
|
||||
} else {
|
||||
container = "network_proxy";
|
||||
}
|
||||
|
||||
public Keys createKeys(MetaSensorItemKey itemKey) throws OverflowException {
|
||||
Keys keys = new Keys();
|
||||
keys.setKey(itemKey.getKey());
|
||||
keys.setMetric(itemKey.getMetaSensorItem().getKey());
|
||||
return keys;
|
||||
crawler.setContainer(container);
|
||||
|
||||
return crawler;
|
||||
}
|
||||
|
||||
public Map<String, List<MetaSensorItemKey>> sortItems(List<SensorItem> sensorItems,
|
||||
Map<Integer, MetaSensorItemKey> keyMap) throws OverflowException {
|
||||
|
||||
Map<String, List<MetaSensorItemKey>> metricMap = new HashMap<>();
|
||||
|
||||
MetaSensorItemKey itemKey = null;
|
||||
|
||||
for (SensorItem sItem : sensorItems) {
|
||||
itemKey = keyMap.get(sItem.getMetaSensorDisplayItem().getId());
|
||||
if (metricMap.containsKey(itemKey.getFroms()) == false) {
|
||||
metricMap.put(itemKey.getFroms(), new ArrayList<>());
|
||||
}
|
||||
metricMap.get(itemKey.getFroms()).add(itemKey);
|
||||
}
|
||||
|
||||
return metricMap;
|
||||
}
|
||||
|
||||
public Keys createKeys(MetaSensorItemKey itemKey) throws OverflowException {
|
||||
Keys keys = new Keys();
|
||||
keys.setKey(itemKey.getKey());
|
||||
keys.setMetric(itemKey.getMetaSensorItem().getKey());
|
||||
return keys;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package com.loafle.overflow.central.module.generator.service;
|
||||
|
||||
import com.loafle.overflow.central.commons.utils.StringConvertor;
|
||||
import com.loafle.overflow.core.type.PortType;
|
||||
import com.loafle.overflow.model.auth.AuthCrawler;
|
||||
import com.loafle.overflow.model.infra.Infra;
|
||||
|
@ -77,7 +76,8 @@ public class InfraHostGenerator {
|
|||
|
||||
private Target createTarget(InfraHost infraHost, Sensor dbSensor) throws Exception {
|
||||
|
||||
AuthCrawler authCrawler = this.authCrawlerService.readByMetaCrawlerIDAndTargetID(dbSensor.getMetaCrawler().getId(), dbSensor.getTarget().getId());
|
||||
AuthCrawler authCrawler = this.authCrawlerService.readByMetaCrawlerIDAndTargetID(dbSensor.getMetaCrawler().getId(),
|
||||
dbSensor.getTarget().getId());
|
||||
|
||||
if (authCrawler == null) {
|
||||
return null;
|
||||
|
@ -87,7 +87,9 @@ public class InfraHostGenerator {
|
|||
Connection connection = new Connection();
|
||||
connection.setIp(infraHost.getIpv4());
|
||||
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(authCrawler.getAuthJson(), new TypeReference<Map<String, String>>(){});
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(authCrawler.getAuthJson(),
|
||||
new TypeReference<Map<String, String>>() {
|
||||
});
|
||||
|
||||
if (dbSensor.getMetaCrawler().getId() == MetaCrawlerEnum.WMI_CRAWLER.getValue()) {
|
||||
connection.setPort(135);
|
||||
|
|
|
@ -37,15 +37,15 @@ public class InfraHostWMIGenerator {
|
|||
Map<String, List<MetaSensorItemKey>> metricMap = null;
|
||||
metricMap = this.generateUtil.sortItems(sensorItems, keyMap);
|
||||
|
||||
// MetaSensorItemKey itemKey = null;
|
||||
// MetaSensorItemKey itemKey = null;
|
||||
//
|
||||
// for(SensorItem sItem : sensorItems) {
|
||||
// itemKey = keyMap.get(sItem.getItem().getId());
|
||||
// if(metricMap.containsKey(itemKey.getFroms()) == false) {
|
||||
// metricMap.put(itemKey.getFroms(), new ArrayList<>());
|
||||
// }
|
||||
// metricMap.get(itemKey.getFroms()).add(itemKey);
|
||||
// }
|
||||
// for(SensorItem sItem : sensorItems) {
|
||||
// itemKey = keyMap.get(sItem.getItem().getId());
|
||||
// if(metricMap.containsKey(itemKey.getFroms()) == false) {
|
||||
// metricMap.put(itemKey.getFroms(), new ArrayList<>());
|
||||
// }
|
||||
// metricMap.get(itemKey.getFroms()).add(itemKey);
|
||||
// }
|
||||
|
||||
List<Item> itemList = new ArrayList<>();
|
||||
Item item = null;
|
||||
|
@ -76,9 +76,9 @@ public class InfraHostWMIGenerator {
|
|||
stringBuffer.append(", ");
|
||||
}
|
||||
|
||||
// keys = new Keys();
|
||||
// keys.setKey(tempItemKey.getKey());
|
||||
// keys.setMetric(tempItemKey.getItem().getKey());
|
||||
// keys = new Keys();
|
||||
// keys.setKey(tempItemKey.getKey());
|
||||
// keys.setMetric(tempItemKey.getItem().getKey());
|
||||
keysList.add(this.generateUtil.createKeys(tempItemKey));
|
||||
}
|
||||
|
||||
|
@ -86,7 +86,8 @@ public class InfraHostWMIGenerator {
|
|||
|
||||
String json = tempItemKey.getOption();
|
||||
if (json != null && json.length() > 0) {
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(json, new TypeReference<Map<String, String>>(){});
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(json, new TypeReference<Map<String, String>>() {
|
||||
});
|
||||
|
||||
Object obj = null;
|
||||
obj = optionMap.get("appends");
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package com.loafle.overflow.central.module.generator.service;
|
||||
|
||||
import com.loafle.overflow.central.commons.utils.StringConvertor;
|
||||
import com.loafle.overflow.core.type.PortType;
|
||||
import com.loafle.overflow.model.auth.AuthCrawler;
|
||||
import com.loafle.overflow.model.infra.Infra;
|
||||
|
@ -31,89 +30,91 @@ import java.util.Map;
|
|||
@Service("InfraServiceGenerator")
|
||||
public class InfraServiceGenerator {
|
||||
|
||||
@Autowired
|
||||
private GenerateUtil generateUtil;
|
||||
@Autowired
|
||||
private GenerateUtil generateUtil;
|
||||
|
||||
@Autowired
|
||||
private InfraServiceMysqlGenerator infraServiceMysqlGenerator;
|
||||
@Autowired
|
||||
private InfraServiceMysqlGenerator infraServiceMysqlGenerator;
|
||||
|
||||
@Autowired
|
||||
private InfraServiceJMXGenerator infraServiceJMXGenerator;
|
||||
@Autowired
|
||||
private InfraServiceJMXGenerator infraServiceJMXGenerator;
|
||||
|
||||
@Autowired
|
||||
private AuthCrawlerService authCrawlerService;
|
||||
@Autowired
|
||||
private AuthCrawlerService authCrawlerService;
|
||||
|
||||
@Autowired
|
||||
private ObjectMapper objectMapper;
|
||||
@Autowired
|
||||
private ObjectMapper objectMapper;
|
||||
|
||||
public String process(Sensor dbSensor, List<SensorItem> sensorItems, Infra infra) throws Exception {
|
||||
com.loafle.overflow.model.infra.InfraService infraService = (com.loafle.overflow.model.infra.InfraService)infra;
|
||||
public String process(Sensor dbSensor, List<SensorItem> sensorItems, Infra infra) throws Exception {
|
||||
com.loafle.overflow.model.infra.InfraService infraService = (com.loafle.overflow.model.infra.InfraService) infra;
|
||||
|
||||
SensorConfig sensorConfig = new SensorConfig();
|
||||
sensorConfig.setConfigID(String.valueOf(dbSensor.getId()));
|
||||
SensorConfig sensorConfig = new SensorConfig();
|
||||
sensorConfig.setConfigID(String.valueOf(dbSensor.getId()));
|
||||
|
||||
Target target = this.createTarget(infraService, dbSensor);
|
||||
Target target = this.createTarget(infraService, dbSensor);
|
||||
|
||||
if(target == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
sensorConfig.setTarget(target);
|
||||
|
||||
// FIXME: Interval
|
||||
Schedule schedule = new Schedule();
|
||||
schedule.setInterval("5");
|
||||
sensorConfig.setSchedule(schedule);
|
||||
|
||||
Crawler crawler = this.generateUtil.getCrawler(dbSensor.getMetaCrawler());
|
||||
sensorConfig.setCrawler(crawler);
|
||||
|
||||
Map<Integer, MetaSensorItemKey> keyMap = this.generateUtil.initMappingMap(dbSensor.getMetaCrawler());
|
||||
|
||||
if(dbSensor.getMetaCrawler().getId() == MetaCrawlerEnum.MYSQL_CRAWLER.getValue()) {
|
||||
this.infraServiceMysqlGenerator.process(sensorItems, keyMap, dbSensor, sensorConfig);
|
||||
} else if (dbSensor.getMetaCrawler().getId() == MetaCrawlerEnum.JMX_CRAWLER.getValue()) {
|
||||
this.infraServiceJMXGenerator.process(sensorItems, keyMap, dbSensor, sensorConfig);
|
||||
}
|
||||
|
||||
return objectMapper.writeValueAsString(sensorConfig);
|
||||
if (target == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
private Target createTarget(InfraService infraService, Sensor sensor) throws Exception {
|
||||
sensorConfig.setTarget(target);
|
||||
|
||||
AuthCrawler authCrawler = this.authCrawlerService.readByMetaCrawlerIDAndTargetID(sensor.getMetaCrawler().getId(), sensor.getTarget().getId());
|
||||
// FIXME: Interval
|
||||
Schedule schedule = new Schedule();
|
||||
schedule.setInterval("5");
|
||||
sensorConfig.setSchedule(schedule);
|
||||
|
||||
if(authCrawler == null) {
|
||||
return null;
|
||||
}
|
||||
Crawler crawler = this.generateUtil.getCrawler(dbSensor.getMetaCrawler());
|
||||
sensorConfig.setCrawler(crawler);
|
||||
|
||||
Target target = new Target();
|
||||
Connection connection = new Connection();
|
||||
connection.setIp(infraService.getInfraHost().getIpv4());
|
||||
connection.setPort(infraService.getPort());
|
||||
connection.setPortType(PortType.valueOf(infraService.getPortType()));
|
||||
connection.setSsl(infraService.isTlsType());
|
||||
Map<Integer, MetaSensorItemKey> keyMap = this.generateUtil.initMappingMap(dbSensor.getMetaCrawler());
|
||||
|
||||
target.setConnection(connection);
|
||||
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(authCrawler.getAuthJson(), new TypeReference<Map<String, String>>(){});
|
||||
|
||||
Map<String, Object> auth = new HashMap<>();
|
||||
|
||||
if(sensor.getMetaCrawler().getId() == MetaCrawlerEnum.MYSQL_CRAWLER.getValue()) {
|
||||
auth.put("url", "jdbc:mysql://"+ infraService.getInfraHost().getIpv4() +":" + infraService.getPort());
|
||||
auth.put("id", optionMap.get("ID")); // FIXME: Auth Info
|
||||
auth.put("pw", optionMap.get("PassWord")); // FIXME: Auth Info
|
||||
} else if (sensor.getMetaCrawler().getId() == MetaCrawlerEnum.JMX_CRAWLER.getValue()) {
|
||||
auth.put("id", optionMap.get("ID")); // FIXME: Auth Info
|
||||
auth.put("pw", optionMap.get("PassWord")); // FIXME: Auth Info
|
||||
connection.setPort(9840);
|
||||
}
|
||||
|
||||
target.setAuth(auth);
|
||||
|
||||
return target;
|
||||
if (dbSensor.getMetaCrawler().getId() == MetaCrawlerEnum.MYSQL_CRAWLER.getValue()) {
|
||||
this.infraServiceMysqlGenerator.process(sensorItems, keyMap, dbSensor, sensorConfig);
|
||||
} else if (dbSensor.getMetaCrawler().getId() == MetaCrawlerEnum.JMX_CRAWLER.getValue()) {
|
||||
this.infraServiceJMXGenerator.process(sensorItems, keyMap, dbSensor, sensorConfig);
|
||||
}
|
||||
|
||||
return objectMapper.writeValueAsString(sensorConfig);
|
||||
}
|
||||
|
||||
private Target createTarget(InfraService infraService, Sensor sensor) throws Exception {
|
||||
|
||||
AuthCrawler authCrawler = this.authCrawlerService.readByMetaCrawlerIDAndTargetID(sensor.getMetaCrawler().getId(),
|
||||
sensor.getTarget().getId());
|
||||
|
||||
if (authCrawler == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Target target = new Target();
|
||||
Connection connection = new Connection();
|
||||
connection.setIp(infraService.getInfraHost().getIpv4());
|
||||
connection.setPort(infraService.getPort());
|
||||
connection.setPortType(PortType.valueOf(infraService.getPortType()));
|
||||
connection.setSsl(infraService.isTlsType());
|
||||
|
||||
target.setConnection(connection);
|
||||
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(authCrawler.getAuthJson(),
|
||||
new TypeReference<Map<String, String>>() {
|
||||
});
|
||||
|
||||
Map<String, Object> auth = new HashMap<>();
|
||||
|
||||
if (sensor.getMetaCrawler().getId() == MetaCrawlerEnum.MYSQL_CRAWLER.getValue()) {
|
||||
auth.put("url", "jdbc:mysql://" + infraService.getInfraHost().getIpv4() + ":" + infraService.getPort());
|
||||
auth.put("id", optionMap.get("ID")); // FIXME: Auth Info
|
||||
auth.put("pw", optionMap.get("PassWord")); // FIXME: Auth Info
|
||||
} else if (sensor.getMetaCrawler().getId() == MetaCrawlerEnum.JMX_CRAWLER.getValue()) {
|
||||
auth.put("id", optionMap.get("ID")); // FIXME: Auth Info
|
||||
auth.put("pw", optionMap.get("PassWord")); // FIXME: Auth Info
|
||||
connection.setPort(9840);
|
||||
}
|
||||
|
||||
target.setAuth(auth);
|
||||
|
||||
return target;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -73,7 +73,8 @@ public class InfraServiceJMXGenerator {
|
|||
List<String> arrayCol = null;
|
||||
|
||||
if (json != null && json.length() > 0) {
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(json, new TypeReference<Map<String, String>>(){});
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(json, new TypeReference<Map<String, String>>() {
|
||||
});
|
||||
|
||||
Object obj = null;
|
||||
obj = optionMap.get("aliases");
|
||||
|
|
|
@ -33,14 +33,14 @@ public class InfraServiceMysqlGenerator {
|
|||
public void process(List<SensorItem> sensorItems, Map<Integer, MetaSensorItemKey> keyMap, Sensor dbSensor,
|
||||
SensorConfig sensorConfig) throws Exception {
|
||||
|
||||
// List<Keys> keysList = new ArrayList<>();
|
||||
// for(SensorItem sItem : sensorItems) {
|
||||
// keys = new Keys();
|
||||
// keys.setMetric(sItem.getItem().getKey());
|
||||
// keys.setKey(KeyMap.get(sItem.getItem().getId()).getKey());
|
||||
// keysList.add(keys);
|
||||
// }
|
||||
// item.setKeys(keysList);
|
||||
// List<Keys> keysList = new ArrayList<>();
|
||||
// for(SensorItem sItem : sensorItems) {
|
||||
// keys = new Keys();
|
||||
// keys.setMetric(sItem.getItem().getKey());
|
||||
// keys.setKey(KeyMap.get(sItem.getItem().getId()).getKey());
|
||||
// keysList.add(keys);
|
||||
// }
|
||||
// item.setKeys(keysList);
|
||||
Map<String, List<MetaSensorItemKey>> metricMap = null;
|
||||
metricMap = this.generateUtil.sortItems(sensorItems, keyMap);
|
||||
|
||||
|
@ -81,7 +81,8 @@ public class InfraServiceMysqlGenerator {
|
|||
|
||||
String json = tempItemKey.getOption();
|
||||
if (json != null && json.length() > 0) {
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(json, new TypeReference<Map<String, String>>(){});
|
||||
HashMap<String, String> optionMap = this.objectMapper.readValue(json, new TypeReference<Map<String, String>>() {
|
||||
});
|
||||
|
||||
Object obj = null;
|
||||
obj = optionMap.get("valueColumn");
|
||||
|
@ -113,42 +114,43 @@ public class InfraServiceMysqlGenerator {
|
|||
|
||||
sensorConfig.setItems(itemList);
|
||||
|
||||
// ObjectMapper objectMapper = new ObjectMapper();
|
||||
// ObjectMapper objectMapper = new ObjectMapper();
|
||||
//
|
||||
// return objectMapper.writeValueAsString(config);
|
||||
// return objectMapper.writeValueAsString(config);
|
||||
}
|
||||
|
||||
// public void setQueryAndMapping(MetaCrawler metaCrawler, List<Keys> keysList, QueryInfo queryInfo, MappingInfo mappingInfo) {
|
||||
// public void setQueryAndMapping(MetaCrawler metaCrawler, List<Keys> keysList,
|
||||
// QueryInfo queryInfo, MappingInfo mappingInfo) {
|
||||
//
|
||||
// switch (metaCrawler.getId()) {
|
||||
// case 11: // mysql
|
||||
// {
|
||||
// String query = "show status where ";
|
||||
//// queryInfo.setQuery("show status where ");
|
||||
// switch (metaCrawler.getId()) {
|
||||
// case 11: // mysql
|
||||
// {
|
||||
// String query = "show status where ";
|
||||
//// queryInfo.setQuery("show status where ");
|
||||
//
|
||||
// Keys keys = null;
|
||||
// for(int indexI = 0 ; indexI < keysList.size(); ++indexI) {
|
||||
// keys = keysList.get(indexI);
|
||||
// query += "variable_name = '";
|
||||
// query += keys.getKey();
|
||||
// query += "'";
|
||||
// if(indexI + 1 < keysList.size()) {
|
||||
// query += " or ";
|
||||
// }
|
||||
// }
|
||||
// Keys keys = null;
|
||||
// for(int indexI = 0 ; indexI < keysList.size(); ++indexI) {
|
||||
// keys = keysList.get(indexI);
|
||||
// query += "variable_name = '";
|
||||
// query += keys.getKey();
|
||||
// query += "'";
|
||||
// if(indexI + 1 < keysList.size()) {
|
||||
// query += " or ";
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// queryInfo.setQuery(query);
|
||||
// queryInfo.setQuery(query);
|
||||
//
|
||||
// mappingInfo.setParseDirection("row");
|
||||
// mappingInfo.setValueColumn("Value");
|
||||
// mappingInfo.setParseDirection("row");
|
||||
// mappingInfo.setValueColumn("Value");
|
||||
//
|
||||
// List<String> keyColumns = new ArrayList<>();
|
||||
// keyColumns.add("Variable_name");
|
||||
// List<String> keyColumns = new ArrayList<>();
|
||||
// keyColumns.add("Variable_name");
|
||||
//
|
||||
// mappingInfo.setKeyColumns(keyColumns);
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
// mappingInfo.setKeyColumns(keyColumns);
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
//
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
|
|
@ -19,47 +19,44 @@ import com.loafle.overflow.service.central.sensor.SensorItemService;
|
|||
@Service("SensorConfigGenerator")
|
||||
public class SensorConfigGenerator {
|
||||
|
||||
@Autowired
|
||||
private SensorItemService sensorItemService;
|
||||
@Autowired
|
||||
private SensorItemService sensorItemService;
|
||||
|
||||
@Autowired
|
||||
private InfraService infraService;
|
||||
@Autowired
|
||||
private InfraService infraService;
|
||||
|
||||
@Autowired
|
||||
private InfraHostGenerator infraHostGenerator;
|
||||
@Autowired
|
||||
private InfraHostGenerator infraHostGenerator;
|
||||
|
||||
@Autowired
|
||||
private InfraServiceGenerator infraServiceGenerator;
|
||||
@Autowired
|
||||
private InfraServiceGenerator infraServiceGenerator;
|
||||
|
||||
public String generate(Sensor sensor) throws Exception {
|
||||
PageParams pageParams = new PageParams();
|
||||
pageParams.setPageNo(0);
|
||||
pageParams.setCountPerPage(Integer.MAX_VALUE);
|
||||
pageParams.setSortCol("id");
|
||||
pageParams.setSortDirection("descending");
|
||||
Page<SensorItem> dbItemList = this.sensorItemService.readAllBySensorID(sensor.getId(), pageParams);
|
||||
|
||||
public String generate(Sensor sensor) throws Exception {
|
||||
PageParams pageParams = new PageParams();
|
||||
pageParams.setPageNo(0);
|
||||
pageParams.setCountPerPage(Integer.MAX_VALUE);
|
||||
pageParams.setSortCol("id");
|
||||
pageParams.setSortDirection("descending");
|
||||
Page<SensorItem> dbItemList = this.sensorItemService.readAllBySensorID(sensor.getId(), pageParams);
|
||||
List<SensorItem> sensorItems = dbItemList.getContent();
|
||||
|
||||
List<SensorItem> sensorItems = dbItemList.getContent();
|
||||
if (sensorItems.size() <= 0) {
|
||||
return "";
|
||||
}
|
||||
Sensor dbSensor = sensorItems.get(0).getSensor();
|
||||
|
||||
if(sensorItems.size() <= 0) {
|
||||
return "";
|
||||
}
|
||||
Sensor dbSensor = sensorItems.get(0).getSensor();
|
||||
Infra infra = this.infraService.readByTargetID(dbSensor.getTarget().getId());
|
||||
|
||||
Infra infra = this.infraService.readByTargetID(dbSensor.getTarget().getId());
|
||||
|
||||
// 7 = Infra OS Service
|
||||
if(infra.getMetaInfraType().getId() == 7) {
|
||||
return this.infraServiceGenerator.process(dbSensor, sensorItems, infra);
|
||||
}
|
||||
if(infra.getMetaInfraType().getId() == 2) {
|
||||
return this.infraHostGenerator.process(dbSensor, sensorItems, infra);
|
||||
}
|
||||
|
||||
return null;
|
||||
// 7 = Infra OS Service
|
||||
if (infra.getMetaInfraType().getId() == 7) {
|
||||
return this.infraServiceGenerator.process(dbSensor, sensorItems, infra);
|
||||
}
|
||||
if (infra.getMetaInfraType().getId() == 2) {
|
||||
return this.infraHostGenerator.process(dbSensor, sensorItems, infra);
|
||||
}
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -12,11 +12,11 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface HistoryDAO extends JpaRepository<History, Long> {
|
||||
Page<History> findAllByProbeId(Long probeID, Pageable pageable);
|
||||
Page<History> findAllByProbeId(Long probeID, Pageable pageable);
|
||||
|
||||
Page<History> findAllByProbeIdAndMetaHistoryTypeId(Long probeID, Integer metaHistoryTypeId, Pageable pageable);
|
||||
Page<History> findAllByProbeIdAndMetaHistoryTypeId(Long probeID, Integer metaHistoryTypeId, Pageable pageable);
|
||||
|
||||
Page<History> findAllByDomainId(Long domainID, Pageable pageRequest);
|
||||
Page<History> findAllByDomainId(Long domainID, Pageable pageRequest);
|
||||
|
||||
Page<History> findAllByDomainIdAndMetaHistoryTypeId(Long domainID, Integer metaHistoryTypeId, Pageable pageRequest);
|
||||
Page<History> findAllByDomainIdAndMetaHistoryTypeId(Long domainID, Integer metaHistoryTypeId, Pageable pageRequest);
|
||||
}
|
||||
|
|
|
@ -4,10 +4,7 @@ import com.loafle.overflow.central.commons.utils.PageUtil;
|
|||
import com.loafle.overflow.central.module.history.dao.HistoryDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.core.model.PageParams;
|
||||
import com.loafle.overflow.model.domain.Domain;
|
||||
import com.loafle.overflow.model.history.History;
|
||||
import com.loafle.overflow.model.meta.MetaHistoryType;
|
||||
import com.loafle.overflow.model.probe.Probe;
|
||||
import com.loafle.overflow.service.central.history.HistoryService;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -16,28 +13,31 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("HistoryService")
|
||||
public class CentralHistoryService implements HistoryService {
|
||||
@Autowired
|
||||
private HistoryDAO historyDAO;
|
||||
@Autowired
|
||||
private HistoryDAO historyDAO;
|
||||
|
||||
public History regist(History history) throws OverflowException {
|
||||
return this.historyDAO.save(history);
|
||||
}
|
||||
public History regist(History history) throws OverflowException {
|
||||
return this.historyDAO.save(history);
|
||||
}
|
||||
|
||||
public Page<History> readAllByProbeIDAndMetaHistoryTypeID(Long probeID, Integer metaHistoryTypeID,
|
||||
PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByProbeIdAndMetaHistoryTypeId(probeID, metaHistoryTypeID,
|
||||
PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<History> readAllByProbeIDAndMetaHistoryTypeID(Long probeID, Integer metaHistoryTypeID, PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByProbeIdAndMetaHistoryTypeId(probeID, metaHistoryTypeID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
public Page<History> readAllByProbeID(Long probeID, PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByProbeId(probeID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<History> readAllByProbeID(Long probeID, PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByProbeId(probeID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
public Page<History> readAllByDomainID(Long domainID, PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByDomainId(domainID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<History> readAllByDomainID(Long domainID, PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByDomainId(domainID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<History> readAllByDomainIDAndMetaHistoryTypeID(Long domainID, Integer metaHistoryTypeID, PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByDomainIdAndMetaHistoryTypeId(domainID, metaHistoryTypeID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
public Page<History> readAllByDomainIDAndMetaHistoryTypeID(Long domainID, Integer metaHistoryTypeID,
|
||||
PageParams pageParams) throws OverflowException {
|
||||
return this.historyDAO.findAllByDomainIdAndMetaHistoryTypeId(domainID, metaHistoryTypeID,
|
||||
PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -15,14 +15,14 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface InfraDAO extends JpaRepository<Infra, Long> {
|
||||
List<Infra> findAllByProbeId(Long probeID);
|
||||
List<Infra> findAllByProbeId(Long probeID);
|
||||
|
||||
Page<Infra> findAllByProbeId(Long probeID, Pageable pageable);
|
||||
Page<Infra> findAllByProbeId(Long probeID, Pageable pageable);
|
||||
|
||||
Page<Infra> findAllByProbeIn(List<Probe> probes, Pageable pageable);
|
||||
Page<Infra> findAllByProbeIn(List<Probe> probes, Pageable pageable);
|
||||
|
||||
List<Target> findAllTargetByProbeIn(List<Probe> probes);
|
||||
List<Target> findAllTargetByProbeIn(List<Probe> probes);
|
||||
|
||||
// Infra findByTargetId(Long targetID);
|
||||
// Infra findByTargetId(Long targetID);
|
||||
|
||||
}
|
|
@ -9,6 +9,6 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface InfraHostDAO extends JpaRepository<InfraHost, Long> {
|
||||
InfraHost findByProbeIdAndIpv4(Long probeId, String ipv4);
|
||||
InfraHost findByProbeIdAndIpv4(Long probeId, String ipv4);
|
||||
|
||||
}
|
|
@ -9,5 +9,5 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface InfraOSPortDAO extends JpaRepository<InfraOSPort, Long> {
|
||||
InfraOSPort findByInfraOSAndPortAndPortType(Long infraOSId, Integer port, String portType);
|
||||
InfraOSPort findByInfraOSAndPortAndPortType(Long infraOSId, Integer port, String portType);
|
||||
}
|
|
@ -9,5 +9,5 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface InfraServiceDAO extends JpaRepository<InfraService, Long> {
|
||||
InfraService findByInfraHostIdAndPortAndPortType(Long infraHostId, Integer port, String portType);
|
||||
InfraService findByInfraHostIdAndPortAndPortType(Long infraHostId, Integer port, String portType);
|
||||
}
|
|
@ -1,6 +1,5 @@
|
|||
package com.loafle.overflow.central.module.infra.service;
|
||||
|
||||
|
||||
import com.loafle.overflow.central.module.infra.dao.InfraHostDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.infra.InfraHost;
|
||||
|
@ -14,19 +13,19 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("InfraHostService")
|
||||
public class CentralInfraHostService implements InfraHostService {
|
||||
@Autowired
|
||||
InfraHostDAO infraHostDAO;
|
||||
@Autowired
|
||||
InfraHostDAO infraHostDAO;
|
||||
|
||||
public InfraHost regist(InfraHost infraHost) throws OverflowException {
|
||||
return this.infraHostDAO.save(infraHost);
|
||||
}
|
||||
public InfraHost regist(InfraHost infraHost) throws OverflowException {
|
||||
return this.infraHostDAO.save(infraHost);
|
||||
}
|
||||
|
||||
public InfraHost read(Long id) throws OverflowException {
|
||||
return this.infraHostDAO.findById(id).get();
|
||||
}
|
||||
public InfraHost read(Long id) throws OverflowException {
|
||||
return this.infraHostDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public InfraHost readByProbeIdAndIpv4(Long probeId, String ip) throws OverflowException {
|
||||
return this.infraHostDAO.findByProbeIdAndIpv4(probeId, ip);
|
||||
}
|
||||
public InfraHost readByProbeIdAndIpv4(Long probeId, String ip) throws OverflowException {
|
||||
return this.infraHostDAO.findByProbeIdAndIpv4(probeId, ip);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -12,14 +12,14 @@ import org.springframework.stereotype.Service;
|
|||
*/
|
||||
@Service("InfraMachineService")
|
||||
public class CentralInfraMachineService implements InfraMachineService {
|
||||
@Autowired
|
||||
InfraMachineDAO infraMachineDAO;
|
||||
@Autowired
|
||||
InfraMachineDAO infraMachineDAO;
|
||||
|
||||
public InfraMachine regist(InfraMachine infraMachine) throws OverflowException {
|
||||
return this.infraMachineDAO.save(infraMachine);
|
||||
}
|
||||
public InfraMachine regist(InfraMachine infraMachine) throws OverflowException {
|
||||
return this.infraMachineDAO.save(infraMachine);
|
||||
}
|
||||
|
||||
public InfraMachine read(Long id) {
|
||||
return this.infraMachineDAO.findById(id).get();
|
||||
}
|
||||
public InfraMachine read(Long id) {
|
||||
return this.infraMachineDAO.findById(id).get();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,14 +13,14 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("InfraOSApplicationService")
|
||||
public class CentralInfraOSApplicationService implements InfraOSApplicationService {
|
||||
@Autowired
|
||||
InfraOSApplicationDAO infraOSApplicationDAO;
|
||||
@Autowired
|
||||
InfraOSApplicationDAO infraOSApplicationDAO;
|
||||
|
||||
public InfraOSApplication regist(InfraOSApplication infraOSApplication) throws OverflowException {
|
||||
return this.infraOSApplicationDAO.save(infraOSApplication);
|
||||
}
|
||||
public InfraOSApplication regist(InfraOSApplication infraOSApplication) throws OverflowException {
|
||||
return this.infraOSApplicationDAO.save(infraOSApplication);
|
||||
}
|
||||
|
||||
public InfraOSApplication read(Long id) throws OverflowException {
|
||||
return this.infraOSApplicationDAO.findById(id).get();
|
||||
}
|
||||
public InfraOSApplication read(Long id) throws OverflowException {
|
||||
return this.infraOSApplicationDAO.findById(id).get();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,14 +13,14 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("InfraOSDaemonService")
|
||||
public class CentralInfraOSDaemonService implements InfraOSDaemonService {
|
||||
@Autowired
|
||||
InfraOSDaemonDAO infraOSDaemonDAO;
|
||||
@Autowired
|
||||
InfraOSDaemonDAO infraOSDaemonDAO;
|
||||
|
||||
public InfraOSDaemon regist(InfraOSDaemon infraOSDaemon) throws OverflowException {
|
||||
return this.infraOSDaemonDAO.save(infraOSDaemon);
|
||||
}
|
||||
public InfraOSDaemon regist(InfraOSDaemon infraOSDaemon) throws OverflowException {
|
||||
return this.infraOSDaemonDAO.save(infraOSDaemon);
|
||||
}
|
||||
|
||||
public InfraOSDaemon read(Long id) throws OverflowException {
|
||||
return this.infraOSDaemonDAO.findById(id).get();
|
||||
}
|
||||
public InfraOSDaemon read(Long id) throws OverflowException {
|
||||
return this.infraOSDaemonDAO.findById(id).get();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,19 +13,19 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("InfraOSPortService")
|
||||
public class CentralInfraOSPortService implements InfraOSPortService {
|
||||
@Autowired
|
||||
InfraOSPortDAO infraOSPortDAO;
|
||||
@Autowired
|
||||
InfraOSPortDAO infraOSPortDAO;
|
||||
|
||||
public InfraOSPort regist(InfraOSPort infraOSPort) throws OverflowException {
|
||||
return this.infraOSPortDAO.save(infraOSPort);
|
||||
}
|
||||
public InfraOSPort regist(InfraOSPort infraOSPort) throws OverflowException {
|
||||
return this.infraOSPortDAO.save(infraOSPort);
|
||||
}
|
||||
|
||||
public InfraOSPort read(Long id) throws OverflowException {
|
||||
return this.infraOSPortDAO.findById(id).get();
|
||||
}
|
||||
public InfraOSPort read(Long id) throws OverflowException {
|
||||
return this.infraOSPortDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public InfraOSPort readByInfraOSIDAndPortAndPortType(Long infraOSID, Integer port, String portType)
|
||||
throws OverflowException {
|
||||
return this.infraOSPortDAO.findByInfraOSAndPortAndPortType(infraOSID, port, portType);
|
||||
}
|
||||
public InfraOSPort readByInfraOSIDAndPortAndPortType(Long infraOSID, Integer port, String portType)
|
||||
throws OverflowException {
|
||||
return this.infraOSPortDAO.findByInfraOSAndPortAndPortType(infraOSID, port, portType);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,14 +13,14 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("InfraOSService")
|
||||
public class CentralInfraOSService implements InfraOSService {
|
||||
@Autowired
|
||||
InfraOSDAO infraOSDAO;
|
||||
@Autowired
|
||||
InfraOSDAO infraOSDAO;
|
||||
|
||||
public InfraOS regist(InfraOS infraOS) throws OverflowException {
|
||||
return this.infraOSDAO.save(infraOS);
|
||||
}
|
||||
public InfraOS regist(InfraOS infraOS) throws OverflowException {
|
||||
return this.infraOSDAO.save(infraOS);
|
||||
}
|
||||
|
||||
public InfraOS read(Long id) throws OverflowException {
|
||||
return this.infraOSDAO.findById(id).get();
|
||||
}
|
||||
public InfraOS read(Long id) throws OverflowException {
|
||||
return this.infraOSDAO.findById(id).get();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,58 +24,58 @@ import java.util.List;
|
|||
@Service("InfraService")
|
||||
public class CentralInfraService implements InfraService {
|
||||
|
||||
@Autowired
|
||||
InfraDAO infraDAO;
|
||||
@Autowired
|
||||
InfraDAO infraDAO;
|
||||
|
||||
@Autowired
|
||||
SensorDAO sensorDAO;
|
||||
@Autowired
|
||||
SensorDAO sensorDAO;
|
||||
|
||||
@Autowired
|
||||
private ProbeService probeService;
|
||||
@Autowired
|
||||
private ProbeService probeService;
|
||||
|
||||
public Infra regist(Infra infra) throws OverflowException {
|
||||
return this.infraDAO.save(infra);
|
||||
public Infra regist(Infra infra) throws OverflowException {
|
||||
return this.infraDAO.save(infra);
|
||||
}
|
||||
|
||||
public Infra read(Long id) throws OverflowException {
|
||||
Infra infra = this.infraDAO.findById(id).get();
|
||||
return infra;
|
||||
}
|
||||
|
||||
public Page<Infra> readAllByProbeID(Long probeID, PageParams pageParams) throws OverflowException {
|
||||
return this.infraDAO.findAllByProbeId(probeID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<Infra> readAllByDomainID(Long domainID, PageParams pageParams) throws OverflowException {
|
||||
List<Probe> probeList = this.probeService.readAllByDomainID(domainID);
|
||||
|
||||
if (probeList == null || probeList.size() <= 0) {
|
||||
throw new OverflowException("ProbeNotFoundException", new Throwable());
|
||||
}
|
||||
|
||||
public Infra read(Long id) throws OverflowException {
|
||||
Infra infra = this.infraDAO.findById(id).get();
|
||||
return infra;
|
||||
Page<Infra> infraList = this.infraDAO.findAllByProbeIn(probeList, PageUtil.getPageRequest(pageParams));
|
||||
return infraList;
|
||||
}
|
||||
|
||||
public List<Target> readAllTargetByDomainID(Long domainID) throws OverflowException {
|
||||
|
||||
List<Probe> probes = this.probeService.readAllByDomainID(domainID);
|
||||
|
||||
if (probes == null || probes.size() <= 0) {
|
||||
throw new OverflowException("ProbeNotFoundException", new Throwable());
|
||||
}
|
||||
|
||||
public Page<Infra> readAllByProbeID(Long probeID, PageParams pageParams) throws OverflowException {
|
||||
return this.infraDAO.findAllByProbeId(probeID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
return this.infraDAO.findAllTargetByProbeIn(probes);
|
||||
}
|
||||
|
||||
public Page<Infra> readAllByDomainID(Long domainID, PageParams pageParams) throws OverflowException {
|
||||
List<Probe> probeList = this.probeService.readAllByDomainID(domainID);
|
||||
public List<Target> readAllTargetByProbes(List<Probe> probes) throws OverflowException {
|
||||
return this.infraDAO.findAllTargetByProbeIn(probes);
|
||||
// return null;
|
||||
}
|
||||
|
||||
if (probeList == null || probeList.size() <= 0) {
|
||||
throw new OverflowException("ProbeNotFoundException", new Throwable());
|
||||
}
|
||||
|
||||
Page<Infra> infraList = this.infraDAO.findAllByProbeIn(probeList, PageUtil.getPageRequest(pageParams));
|
||||
return infraList;
|
||||
}
|
||||
|
||||
public List<Target> readAllTargetByDomainID(Long domainID) throws OverflowException {
|
||||
|
||||
List<Probe> probes = this.probeService.readAllByDomainID(domainID);
|
||||
|
||||
if (probes == null || probes.size() <= 0) {
|
||||
throw new OverflowException("ProbeNotFoundException", new Throwable());
|
||||
}
|
||||
|
||||
return this.infraDAO.findAllTargetByProbeIn(probes);
|
||||
}
|
||||
|
||||
public List<Target> readAllTargetByProbes(List<Probe> probes) throws OverflowException {
|
||||
return this.infraDAO.findAllTargetByProbeIn(probes);
|
||||
// return null;
|
||||
}
|
||||
|
||||
public Infra readByTargetID(Long targetID) throws OverflowException {
|
||||
// return this.infraDAO.findByTargetId(targetID);
|
||||
return null;
|
||||
}
|
||||
public Infra readByTargetID(Long targetID) throws OverflowException {
|
||||
// return this.infraDAO.findByTargetId(targetID);
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -13,19 +13,19 @@ import org.springframework.stereotype.Service;
|
|||
@Service("InfraServiceService")
|
||||
public class CentralInfraServiceService implements InfraServiceService {
|
||||
|
||||
@Autowired
|
||||
InfraServiceDAO infraServiceDAO;
|
||||
@Autowired
|
||||
InfraServiceDAO infraServiceDAO;
|
||||
|
||||
public InfraService regist(InfraService infraService) throws OverflowException {
|
||||
return this.infraServiceDAO.save(infraService);
|
||||
}
|
||||
public InfraService regist(InfraService infraService) throws OverflowException {
|
||||
return this.infraServiceDAO.save(infraService);
|
||||
}
|
||||
|
||||
public InfraService read(Long id) throws OverflowException {
|
||||
return this.infraServiceDAO.findById(id).get();
|
||||
}
|
||||
public InfraService read(Long id) throws OverflowException {
|
||||
return this.infraServiceDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public InfraService readByInfraHostIDAndPortAndPortType(Long infraHostID, int port, String portType)
|
||||
throws OverflowException {
|
||||
return this.infraServiceDAO.findByInfraHostIdAndPortAndPortType(infraHostID, port, portType);
|
||||
}
|
||||
public InfraService readByInfraHostIDAndPortAndPortType(Long infraHostID, int port, String portType)
|
||||
throws OverflowException {
|
||||
return this.infraServiceDAO.findByInfraHostIdAndPortAndPortType(infraHostID, port, portType);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,5 +10,5 @@ import org.springframework.stereotype.Repository;
|
|||
|
||||
@Repository
|
||||
public interface MemberDAO extends JpaRepository<Member, Long> {
|
||||
Member findByEmail(String email);
|
||||
Member findByEmail(String email);
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface MemberTotpDAO extends JpaRepository<MemberTotp, Long> {
|
||||
MemberTotp findBySecretCode(String secretCode);
|
||||
MemberTotp findBySecretCode(String secretCode);
|
||||
|
||||
MemberTotp findByMemberEmail(String memberEmail);
|
||||
MemberTotp findByMemberEmail(String memberEmail);
|
||||
}
|
||||
|
|
|
@ -32,264 +32,258 @@ import java.util.regex.Pattern;
|
|||
@Service("MemberService")
|
||||
public class CentralMemberService implements MemberService {
|
||||
|
||||
@Autowired
|
||||
private MemberDAO memberDAO;
|
||||
@Autowired
|
||||
private MemberDAO memberDAO;
|
||||
|
||||
@Autowired
|
||||
private EmailAuthService emailAuthService;
|
||||
@Autowired
|
||||
private EmailAuthService emailAuthService;
|
||||
|
||||
@Autowired
|
||||
private ApiKeyService apiKeyService;
|
||||
@Autowired
|
||||
private ApiKeyService apiKeyService;
|
||||
|
||||
@Autowired
|
||||
private DomainMemberService domainMemberService;
|
||||
@Autowired
|
||||
private DomainMemberService domainMemberService;
|
||||
|
||||
@Autowired
|
||||
private ProbeService probeService;
|
||||
@Autowired
|
||||
private ProbeService probeService;
|
||||
|
||||
private BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
|
||||
private BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
|
||||
|
||||
public DomainMember signin(String signinId, String signinPw) throws OverflowException {
|
||||
Member m = this.memberDAO.findByEmail(signinId);
|
||||
public DomainMember signin(String signinId, String signinPw) throws OverflowException {
|
||||
Member m = this.memberDAO.findByEmail(signinId);
|
||||
|
||||
if ( null == m ) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
if ( m.getMetaMemberStatus().getId() == 1 ) {
|
||||
throw new OverflowException("EmailNotConfirmedException()", new Throwable());
|
||||
}
|
||||
|
||||
Boolean match = passwordEncoder.matches(signinPw, m.getPw());
|
||||
if(!match) {
|
||||
if (m.getSigninFailCount() > 10) {
|
||||
throw new OverflowException("SigninOverFailedException()", new Throwable());
|
||||
}
|
||||
m.setSigninFailCount(m.getSigninFailCount()+1);
|
||||
this.modify(m);
|
||||
throw new OverflowException("SignInPwNotMatchException()", new Throwable());
|
||||
}
|
||||
|
||||
m.setSigninFailCount(0);
|
||||
this.modify(m);
|
||||
|
||||
DomainMember dm = domainMemberService.readByMemberEmail(m.getEmail());
|
||||
|
||||
// Todo Signin History
|
||||
return dm;
|
||||
if (null == m) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
public Member signup(Member member, String pw) throws OverflowException {
|
||||
if (m.getMetaMemberStatus().getId() == 1) {
|
||||
throw new OverflowException("EmailNotConfirmedException()", new Throwable());
|
||||
}
|
||||
|
||||
Member isMember = this.memberDAO.findByEmail(member.getEmail());
|
||||
Boolean match = passwordEncoder.matches(signinPw, m.getPw());
|
||||
if (!match) {
|
||||
if (m.getSigninFailCount() > 10) {
|
||||
throw new OverflowException("SigninOverFailedException()", new Throwable());
|
||||
}
|
||||
m.setSigninFailCount(m.getSigninFailCount() + 1);
|
||||
this.modify(m);
|
||||
throw new OverflowException("SignInPwNotMatchException()", new Throwable());
|
||||
}
|
||||
|
||||
if (null != isMember && isMember.getId() > 0) {
|
||||
throw new OverflowException("JoinedEmailException()", new Throwable());
|
||||
}
|
||||
m.setSigninFailCount(0);
|
||||
this.modify(m);
|
||||
|
||||
boolean checkPass = this.isPasswordStrong(pw);
|
||||
DomainMember dm = domainMemberService.readByMemberEmail(m.getEmail());
|
||||
|
||||
if (!checkPass) {
|
||||
throw new OverflowException("PasswordNotStrongException()", new Throwable());
|
||||
// (
|
||||
// "Passwords must contain at least one uppercase letter, " +
|
||||
// "special character, lowercase letter, and number, " +
|
||||
// "and must be at least 6 characters long.");
|
||||
}
|
||||
// Todo Signin History
|
||||
return dm;
|
||||
}
|
||||
|
||||
public Member signup(Member member, String pw) throws OverflowException {
|
||||
|
||||
Member isMember = this.memberDAO.findByEmail(member.getEmail());
|
||||
|
||||
if (null != isMember && isMember.getId() > 0) {
|
||||
throw new OverflowException("JoinedEmailException()", new Throwable());
|
||||
}
|
||||
|
||||
boolean checkPass = this.isPasswordStrong(pw);
|
||||
|
||||
if (!checkPass) {
|
||||
throw new OverflowException("PasswordNotStrongException()", new Throwable());
|
||||
// (
|
||||
// "Passwords must contain at least one uppercase letter, " +
|
||||
// "special character, lowercase letter, and number, " +
|
||||
// "and must be at least 6 characters long.");
|
||||
}
|
||||
member.setPw(passwordEncoder.encode(pw));
|
||||
|
||||
if (member.getMetaMemberStatus() == null) {
|
||||
member.setMetaMemberStatus(new MetaMemberStatus((short) 1));
|
||||
}
|
||||
|
||||
member.setTotpType(false);
|
||||
|
||||
Member resMember = this.memberDAO.save(member);
|
||||
|
||||
try {
|
||||
this.emailAuthService.sendEmailByMember(resMember);
|
||||
} catch (Exception e) {
|
||||
// Todo ReSend Mail
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return resMember;
|
||||
}
|
||||
|
||||
public Member sendEmailForPassword(String email) throws OverflowException {
|
||||
Member member = this.memberDAO.findByEmail(email);
|
||||
|
||||
if (null == member) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
try {
|
||||
this.emailAuthService.sendEmailResetPassword(member);
|
||||
} catch (Exception e) {
|
||||
// Todo ReSend Mail
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return member;
|
||||
}
|
||||
|
||||
public Member resetPassword(String token, String pw) throws OverflowException {
|
||||
String deStr = null;
|
||||
|
||||
try {
|
||||
deStr = URLDecoder.decode(token, "UTF-8");
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
|
||||
// String deEmail = this.emailSender.decrypt(deStr);
|
||||
EmailAuth auth = this.emailAuthService.readByToken(deStr);
|
||||
|
||||
if (auth == null) {
|
||||
throw new OverflowException("Not Exist Token", null);
|
||||
}
|
||||
|
||||
Member member = this.memberDAO.findByEmail(auth.getMember().getEmail());
|
||||
|
||||
if (null == member) {
|
||||
throw new OverflowException("", null);
|
||||
}
|
||||
|
||||
boolean checkPass = this.isPasswordStrong(pw);
|
||||
|
||||
if (!checkPass) {
|
||||
throw new OverflowException("PasswordNotStrongException()", new Throwable());
|
||||
// "Passwords must contain at least one uppercase letter, " +
|
||||
// "special character, lowercase letter, and number, " +
|
||||
// "and must be at least 6 characters long.");
|
||||
}
|
||||
member.setPw(passwordEncoder.encode(pw));
|
||||
|
||||
return this.modify(member);
|
||||
}
|
||||
|
||||
public void signout(Member member) {
|
||||
// Todo websocket session remove
|
||||
}
|
||||
|
||||
@WebappAPI
|
||||
public Member modify(Member member, String pw) throws OverflowException {
|
||||
String email = SessionMetadata.getTargetID();
|
||||
Member preMember = this.memberDAO.findByEmail(member.getEmail());
|
||||
|
||||
if (null == preMember || 0 >= preMember.getId()) {
|
||||
throw new OverflowException("SigninId Not Exist()", new Throwable());
|
||||
}
|
||||
member.setId(preMember.getId());
|
||||
if (null != pw && !pw.equals("")) {
|
||||
boolean checkPass = this.isPasswordStrong(pw);
|
||||
|
||||
if (!checkPass) {
|
||||
throw new OverflowException("PasswordNotStrongException()", new Throwable());
|
||||
// "Passwords must contain at least one uppercase letter, " +
|
||||
// "special character, lowercase letter, and number, " +
|
||||
// "and must be at least 6 characters long.");
|
||||
}
|
||||
|
||||
Boolean match = passwordEncoder.matches(member.getPw(), preMember.getPw());
|
||||
if (!match) {
|
||||
member.setPw(passwordEncoder.encode(pw));
|
||||
|
||||
if (member.getMetaMemberStatus() == null) {
|
||||
member.setMetaMemberStatus(new MetaMemberStatus((short) 1));
|
||||
}
|
||||
|
||||
member.setTotpType(false);
|
||||
|
||||
Member resMember = this.memberDAO.save(member);
|
||||
|
||||
try {
|
||||
this.emailAuthService.sendEmailByMember(resMember);
|
||||
} catch (Exception e) {
|
||||
// Todo ReSend Mail
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return resMember;
|
||||
}
|
||||
} else {
|
||||
member.setPw(preMember.getPw());
|
||||
}
|
||||
|
||||
public Member sendEmailForPassword(String email) throws OverflowException {
|
||||
Member member = this.memberDAO.findByEmail(email);
|
||||
if (member.getMetaMemberStatus() == null || member.getMetaMemberStatus().getId() <= 0) {
|
||||
member.setMetaMemberStatus(new MetaMemberStatus());
|
||||
member.getMetaMemberStatus().setId(preMember.getMetaMemberStatus().getId());
|
||||
}
|
||||
return this.modify(member);
|
||||
}
|
||||
|
||||
if (null == member) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
private Member modify(Member member) throws OverflowException {
|
||||
return this.memberDAO.save(member);
|
||||
}
|
||||
|
||||
try {
|
||||
this.emailAuthService.sendEmailResetPassword(member);
|
||||
} catch (Exception e) {
|
||||
// Todo ReSend Mail
|
||||
e.printStackTrace();
|
||||
}
|
||||
public Member confirmPw(String signinId, String signinPw) throws OverflowException {
|
||||
Member preMember = this.memberDAO.findByEmail(signinId);
|
||||
|
||||
return member;
|
||||
String encodePw = passwordEncoder.encode(signinPw);
|
||||
Boolean match = passwordEncoder.matches(encodePw, preMember.getPw());
|
||||
|
||||
if (!match) {
|
||||
throw new OverflowException("SignInPwNotMatchException", new Throwable());
|
||||
}
|
||||
|
||||
public Member resetPassword(String token, String pw) throws OverflowException {
|
||||
String deStr = null;
|
||||
return preMember;
|
||||
}
|
||||
|
||||
try {
|
||||
deStr = URLDecoder.decode(token, "UTF-8");
|
||||
}catch (Exception e) {
|
||||
public Member forgotPassword(String signinId, String newPw) throws OverflowException {
|
||||
Member preMember = this.memberDAO.findByEmail(signinId);
|
||||
|
||||
}
|
||||
|
||||
// String deEmail = this.emailSender.decrypt(deStr);
|
||||
EmailAuth auth = this.emailAuthService.readByToken(deStr);
|
||||
|
||||
if (auth == null) {
|
||||
throw new OverflowException("Not Exist Token", null);
|
||||
}
|
||||
|
||||
Member member = this.memberDAO.findByEmail(auth.getMember().getEmail());
|
||||
|
||||
if (null == member) {
|
||||
throw new OverflowException("", null);
|
||||
}
|
||||
|
||||
boolean checkPass = this.isPasswordStrong(pw);
|
||||
|
||||
if (!checkPass) {
|
||||
throw new OverflowException("PasswordNotStrongException()", new Throwable());
|
||||
// "Passwords must contain at least one uppercase letter, " +
|
||||
// "special character, lowercase letter, and number, " +
|
||||
// "and must be at least 6 characters long.");
|
||||
}
|
||||
member.setPw(passwordEncoder.encode(pw));
|
||||
|
||||
return this.modify(member);
|
||||
if (null == preMember) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
public void signout(Member member) {
|
||||
// Todo websocket session remove
|
||||
Member cMember = this.modify(preMember, newPw);
|
||||
|
||||
return cMember;
|
||||
}
|
||||
|
||||
public Member read(Long memberId) throws OverflowException {
|
||||
if (memberId <= 0) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
@WebappAPI
|
||||
public Member modify(Member member, String pw) throws OverflowException {
|
||||
String email = SessionMetadata.getTargetID();
|
||||
Member preMember = this.memberDAO.findByEmail(member.getEmail());
|
||||
Member resMember = this.memberDAO.findById(memberId).get();
|
||||
return resMember;
|
||||
}
|
||||
|
||||
if (null == preMember || 0 >= preMember.getId()) {
|
||||
throw new OverflowException("SigninId Not Exist()", new Throwable());
|
||||
}
|
||||
member.setId(preMember.getId());
|
||||
if (null != pw && !pw.equals("")) {
|
||||
boolean checkPass = this.isPasswordStrong(pw);
|
||||
@WebappAPI
|
||||
public void withdrawal(Long memberId) throws OverflowException {
|
||||
String email = SessionMetadata.getTargetID();
|
||||
|
||||
if (!checkPass) {
|
||||
throw new OverflowException("PasswordNotStrongException()", new Throwable());
|
||||
// "Passwords must contain at least one uppercase letter, " +
|
||||
// "special character, lowercase letter, and number, " +
|
||||
// "and must be at least 6 characters long.");
|
||||
}
|
||||
// Todo DB delete?
|
||||
}
|
||||
|
||||
Boolean match = passwordEncoder.matches(member.getPw(), preMember.getPw());
|
||||
if(!match) {
|
||||
member.setPw(passwordEncoder.encode(pw));
|
||||
}
|
||||
} else {
|
||||
member.setPw(preMember.getPw());
|
||||
}
|
||||
public List<Member> readAllByProbeKey(String probeKey) throws OverflowException {
|
||||
|
||||
if (member.getMetaMemberStatus() == null || member.getMetaMemberStatus().getId() <= 0) {
|
||||
member.setMetaMemberStatus(new MetaMemberStatus());
|
||||
member.getMetaMemberStatus().setId(preMember.getMetaMemberStatus().getId());
|
||||
}
|
||||
return this.modify(member);
|
||||
Probe probe = this.probeService.readByProbeKey(probeKey);
|
||||
|
||||
if (probe == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
private Member modify(Member member) throws OverflowException {
|
||||
return this.memberDAO.save(member);
|
||||
return this.domainMemberService.readAllMemberByDomainID(probe.getDomain().getId());
|
||||
}
|
||||
|
||||
public List<Member> readAllByApiKey(String apikey) throws OverflowException {
|
||||
|
||||
ApiKey apiKey = this.apiKeyService.readByApiKey(apikey);
|
||||
|
||||
if (apiKey == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
public Member confirmPw(String signinId, String signinPw) throws OverflowException {
|
||||
Member preMember = this.memberDAO.findByEmail(signinId);
|
||||
return this.domainMemberService.readAllMemberByDomainID(apiKey.getDomain().getId());
|
||||
}
|
||||
|
||||
String encodePw = passwordEncoder.encode(signinPw);
|
||||
Boolean match = passwordEncoder.matches(encodePw, preMember.getPw());
|
||||
public List<Member> readAllByDomainID(final Long domainID) throws OverflowException {
|
||||
|
||||
if (!match) {
|
||||
throw new OverflowException("SignInPwNotMatchException", new Throwable());
|
||||
}
|
||||
return this.domainMemberService.readAllMemberByDomainID(domainID);
|
||||
}
|
||||
|
||||
return preMember;
|
||||
}
|
||||
private static final String PASSWORD_REGEXP = "(" + "(?=.*[a-z])" + "(?=.*\\d)" + "(?=.*[A-Z])"
|
||||
+ "(?=.*[!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?])" + "." + "{6,40}" + ")";
|
||||
private Pattern pattern = Pattern.compile(PASSWORD_REGEXP);
|
||||
|
||||
public Member forgotPassword(String signinId, String newPw) throws OverflowException {
|
||||
Member preMember = this.memberDAO.findByEmail(signinId);
|
||||
|
||||
if (null == preMember) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
Member cMember = this.modify(preMember, newPw);
|
||||
|
||||
return cMember;
|
||||
}
|
||||
|
||||
public Member read(Long memberId) throws OverflowException {
|
||||
if (memberId <= 0) {
|
||||
throw new OverflowException("SignInIdNotExistException()", new Throwable());
|
||||
}
|
||||
|
||||
Member resMember = this.memberDAO.findById(memberId).get();
|
||||
return resMember;
|
||||
}
|
||||
|
||||
@WebappAPI
|
||||
public void withdrawal(Long memberId) throws OverflowException {
|
||||
String email = SessionMetadata.getTargetID();
|
||||
|
||||
// Todo DB delete?
|
||||
}
|
||||
|
||||
public List<Member> readAllByProbeKey(String probeKey) throws OverflowException {
|
||||
|
||||
Probe probe = this.probeService.readByProbeKey(probeKey);
|
||||
|
||||
if(probe == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return this.domainMemberService.readAllMemberByDomainID(probe.getDomain().getId());
|
||||
}
|
||||
|
||||
public List<Member> readAllByApiKey(String apikey) throws OverflowException {
|
||||
|
||||
ApiKey apiKey = this.apiKeyService.readByApiKey(apikey);
|
||||
|
||||
if(apiKey == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return this.domainMemberService.readAllMemberByDomainID(apiKey.getDomain().getId());
|
||||
}
|
||||
|
||||
public List<Member> readAllByDomainID(final Long domainID) throws OverflowException {
|
||||
|
||||
return this.domainMemberService.readAllMemberByDomainID(domainID);
|
||||
}
|
||||
|
||||
private static final String PASSWORD_REGEXP = "(" +
|
||||
"(?=.*[a-z])" +
|
||||
"(?=.*\\d)" +
|
||||
"(?=.*[A-Z])" +
|
||||
"(?=.*[!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?])" +
|
||||
"." +
|
||||
"{6,40}" +
|
||||
")";
|
||||
private Pattern pattern = Pattern.compile(PASSWORD_REGEXP);
|
||||
|
||||
protected boolean isPasswordStrong(String pass) {
|
||||
Matcher m = pattern.matcher(pass);
|
||||
return m.matches();
|
||||
}
|
||||
protected boolean isPasswordStrong(String pass) {
|
||||
Matcher m = pattern.matcher(pass);
|
||||
return m.matches();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,99 +19,100 @@ import java.util.Map;
|
|||
*/
|
||||
@Service("MemberTotpService")
|
||||
public class CentralMemberTotpService implements MemberTotpService {
|
||||
@Autowired
|
||||
private MemberTotpDAO totpDAO;
|
||||
@Autowired
|
||||
private MemberTotpDAO totpDAO;
|
||||
|
||||
public void regist(Member member, String secretCode, String code) throws OverflowException {
|
||||
public void regist(Member member, String secretCode, String code) throws OverflowException {
|
||||
|
||||
if (null == member || 0 >= member.getId()) {
|
||||
throw new OverflowException("SignInIdNotExistException", new Throwable());
|
||||
if (null == member || 0 >= member.getId()) {
|
||||
throw new OverflowException("SignInIdNotExistException", new Throwable());
|
||||
}
|
||||
|
||||
if (!this.checkCode(secretCode, code)) {
|
||||
throw new OverflowException("TotpCodeNotMatchException", new Throwable());
|
||||
}
|
||||
|
||||
MemberTotp totp = new MemberTotp();
|
||||
totp.setMember(member);
|
||||
totp.setSecretCode(secretCode);
|
||||
|
||||
this.totpDAO.save(totp);
|
||||
}
|
||||
|
||||
public MemberTotp modify(MemberTotp totp) throws OverflowException {
|
||||
if (null == totp.getSecretCode() || totp.getSecretCode().equals("")) {
|
||||
throw new OverflowException("SecretCodeNotExistException", new Throwable());
|
||||
}
|
||||
if (null == totp.getMember() || 0 < totp.getMember().getId()) {
|
||||
throw new OverflowException("SignInIdNotExistException", new Throwable());
|
||||
}
|
||||
|
||||
return this.totpDAO.save(totp);
|
||||
}
|
||||
|
||||
public void remove(Long id) throws OverflowException {
|
||||
this.totpDAO.deleteById(id);
|
||||
}
|
||||
|
||||
public MemberTotp read(Long id) throws OverflowException {
|
||||
return this.totpDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public boolean checkCodeForMember(String memberEmail, String code) throws OverflowException {
|
||||
MemberTotp totp = this.totpDAO.findByMemberEmail(memberEmail);
|
||||
if (null == totp && (totp.getSecretCode() == null || totp.getSecretCode().equals(""))) {
|
||||
throw new OverflowException("SignInIdNotExistException", new Throwable());
|
||||
}
|
||||
return this.checkCode(totp.getSecretCode(), code);
|
||||
}
|
||||
|
||||
public boolean checkCode(String secretCode, String code) throws OverflowException {
|
||||
GoogleAuthenticator googleAuthenticator = new GoogleAuthenticator();
|
||||
int codeInt = Integer.parseInt(code);
|
||||
boolean isCheck = googleAuthenticator.authorize(secretCode, codeInt);
|
||||
|
||||
if (!isCheck) {
|
||||
throw new OverflowException("TotpCodeNotMatchException", new Throwable());
|
||||
}
|
||||
|
||||
return isCheck;
|
||||
}
|
||||
|
||||
public Map<String, String> createTotp(Member member) throws OverflowException {
|
||||
Map<String, String> returnMap = new HashMap<>();
|
||||
|
||||
GoogleAuthenticator googleAuthenticator = new GoogleAuthenticator();
|
||||
final GoogleAuthenticatorKey key = googleAuthenticator.createCredentials();
|
||||
|
||||
String secret = key.getKey();
|
||||
// List<Integer> scratchCodes = key.getScratchCodes();
|
||||
// String otpAuthURL = GoogleAuthenticatorQRGenerator.getOtpAuthURL("overFlow",
|
||||
// member.getEmail(), key);
|
||||
URIBuilder uri = (new URIBuilder()).setScheme("otpauth").setHost("totp")
|
||||
.setPath("/" + formatLabel("overFlow", member.getEmail())).setParameter("secret", key.getKey());
|
||||
|
||||
returnMap.put("key", secret);
|
||||
returnMap.put("uri", uri.toString());
|
||||
|
||||
return returnMap;
|
||||
}
|
||||
|
||||
private String formatLabel(String issuer, String accountName) throws OverflowException {
|
||||
if (accountName != null && accountName.trim().length() != 0) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (issuer != null) {
|
||||
if (issuer.contains(":")) {
|
||||
throw new IllegalArgumentException("Issuer cannot contain the ':' character.");
|
||||
}
|
||||
|
||||
if (!this.checkCode(secretCode, code)) {
|
||||
throw new OverflowException("TotpCodeNotMatchException", new Throwable());
|
||||
}
|
||||
sb.append(issuer);
|
||||
sb.append(":");
|
||||
}
|
||||
|
||||
MemberTotp totp = new MemberTotp();
|
||||
totp.setMember(member);
|
||||
totp.setSecretCode(secretCode);
|
||||
|
||||
this.totpDAO.save(totp);
|
||||
}
|
||||
|
||||
public MemberTotp modify(MemberTotp totp) throws OverflowException {
|
||||
if (null == totp.getSecretCode() || totp.getSecretCode().equals("")) {
|
||||
throw new OverflowException("SecretCodeNotExistException", new Throwable());
|
||||
}
|
||||
if (null == totp.getMember() || 0 < totp.getMember().getId()) {
|
||||
throw new OverflowException("SignInIdNotExistException", new Throwable());
|
||||
}
|
||||
|
||||
return this.totpDAO.save(totp);
|
||||
}
|
||||
|
||||
public void remove(Long id) throws OverflowException {
|
||||
this.totpDAO.deleteById(id);
|
||||
}
|
||||
|
||||
public MemberTotp read(Long id) throws OverflowException {
|
||||
return this.totpDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public boolean checkCodeForMember(String memberEmail, String code) throws OverflowException {
|
||||
MemberTotp totp = this.totpDAO.findByMemberEmail(memberEmail);
|
||||
if (null == totp && (totp.getSecretCode() == null || totp.getSecretCode().equals(""))) {
|
||||
throw new OverflowException("SignInIdNotExistException", new Throwable());
|
||||
}
|
||||
return this.checkCode(totp.getSecretCode(), code);
|
||||
}
|
||||
|
||||
public boolean checkCode(String secretCode, String code) throws OverflowException {
|
||||
GoogleAuthenticator googleAuthenticator = new GoogleAuthenticator();
|
||||
int codeInt = Integer.parseInt(code);
|
||||
boolean isCheck = googleAuthenticator.authorize(secretCode, codeInt);
|
||||
|
||||
if (!isCheck) {
|
||||
throw new OverflowException("TotpCodeNotMatchException", new Throwable());
|
||||
}
|
||||
|
||||
return isCheck;
|
||||
}
|
||||
|
||||
public Map<String, String> createTotp(Member member) throws OverflowException {
|
||||
Map<String, String> returnMap = new HashMap<>();
|
||||
|
||||
GoogleAuthenticator googleAuthenticator = new GoogleAuthenticator();
|
||||
final GoogleAuthenticatorKey key = googleAuthenticator.createCredentials();
|
||||
|
||||
String secret = key.getKey();
|
||||
// List<Integer> scratchCodes = key.getScratchCodes();
|
||||
// String otpAuthURL = GoogleAuthenticatorQRGenerator.getOtpAuthURL("overFlow", member.getEmail(), key);
|
||||
URIBuilder uri = (new URIBuilder()).setScheme("otpauth").setHost("totp")
|
||||
.setPath("/" + formatLabel("overFlow", member.getEmail())).setParameter("secret", key.getKey());
|
||||
|
||||
returnMap.put("key", secret);
|
||||
returnMap.put("uri", uri.toString());
|
||||
|
||||
return returnMap;
|
||||
}
|
||||
|
||||
private String formatLabel(String issuer, String accountName) throws OverflowException {
|
||||
if (accountName != null && accountName.trim().length() != 0) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (issuer != null) {
|
||||
if (issuer.contains(":")) {
|
||||
throw new IllegalArgumentException("Issuer cannot contain the ':' character.");
|
||||
}
|
||||
|
||||
sb.append(issuer);
|
||||
sb.append(":");
|
||||
}
|
||||
|
||||
sb.append(accountName);
|
||||
return sb.toString();
|
||||
} else {
|
||||
throw new IllegalArgumentException("Account name must not be empty.");
|
||||
}
|
||||
sb.append(accountName);
|
||||
return sb.toString();
|
||||
} else {
|
||||
throw new IllegalArgumentException("Account name must not be empty.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,5 +11,5 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface MetaCrawlerInputItemDAO extends JpaRepository<MetaCrawlerInputItem, Integer> {
|
||||
List<MetaCrawlerInputItem> findAllByMetaCrawlerId(Short metaCrawlerId);
|
||||
List<MetaCrawlerInputItem> findAllByMetaCrawlerId(Short metaCrawlerId);
|
||||
}
|
||||
|
|
|
@ -11,5 +11,5 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface MetaInfraVendorDAO extends JpaRepository<MetaInfraVendor, Integer> {
|
||||
List<MetaInfraVendor> findAllByMetaInfraTypeId(Integer MetaInfraTypeId);
|
||||
List<MetaInfraVendor> findAllByMetaInfraTypeId(Integer MetaInfraTypeId);
|
||||
}
|
||||
|
|
|
@ -11,5 +11,5 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface MetaProbePackageDAO extends JpaRepository<MetaProbePackage, Long> {
|
||||
List<MetaProbePackage> findAllByMetaProbeOsId(Short metaProbeOsId);
|
||||
List<MetaProbePackage> findAllByMetaProbeOsId(Short metaProbeOsId);
|
||||
}
|
||||
|
|
|
@ -8,6 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by snoop on 17. 6. 26.
|
||||
*/
|
||||
@Repository
|
||||
public interface MetaProbeStatusDAO extends JpaRepository<MetaProbeStatus, Short> {
|
||||
public interface MetaProbeStatusDAO extends JpaRepository<MetaProbeStatus, Short> {
|
||||
}
|
||||
|
||||
|
|
|
@ -8,5 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by insanity on 17. 6. 23.
|
||||
*/
|
||||
@Repository
|
||||
public interface MetaProbeTaskTypeDAO extends JpaRepository<MetaProbeTaskType, Short>{
|
||||
public interface MetaProbeTaskTypeDAO extends JpaRepository<MetaProbeTaskType, Short> {
|
||||
}
|
||||
|
|
|
@ -8,5 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by insanity on 17. 6. 23.
|
||||
*/
|
||||
@Repository
|
||||
public interface MetaProbeVersionDAO extends JpaRepository<MetaProbeVersion, Short>{
|
||||
public interface MetaProbeVersionDAO extends JpaRepository<MetaProbeVersion, Short> {
|
||||
}
|
||||
|
|
|
@ -11,5 +11,5 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface MetaSensorDisplayItemDAO extends JpaRepository<MetaSensorDisplayItem, Long> {
|
||||
public List<MetaSensorDisplayItem> findAllByMetaCrawlerId(Short metaCrawlerId);
|
||||
public List<MetaSensorDisplayItem> findAllByMetaCrawlerId(Short metaCrawlerId);
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@ import java.util.List;
|
|||
@Repository
|
||||
public interface MetaSensorDisplayMappingDAO extends JpaRepository<MetaSensorDisplayMapping, Short> {
|
||||
|
||||
@Query("SELECT m.metaSensorItemKey from MetaSensorDisplayMapping m where m.metaSensorDisplayItem.id = :metaSensorDisplayItemId")
|
||||
public List<MetaSensorItemKey> findAllMetaSensorItemKeyByMetaSensorDisplayItemId(@Param("metaSensorDisplayItemId") Long metaSensorDisplayItemId);
|
||||
@Query("SELECT m.metaSensorItemKey from MetaSensorDisplayMapping m where m.metaSensorDisplayItem.id = :metaSensorDisplayItemId")
|
||||
public List<MetaSensorItemKey> findAllMetaSensorItemKeyByMetaSensorDisplayItemId(
|
||||
@Param("metaSensorDisplayItemId") Long metaSensorDisplayItemId);
|
||||
}
|
||||
|
|
|
@ -8,5 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by insanity on 17. 6. 23.
|
||||
*/
|
||||
@Repository
|
||||
public interface MetaSensorItemDAO extends JpaRepository<MetaSensorItem, Integer>{
|
||||
public interface MetaSensorItemDAO extends JpaRepository<MetaSensorItem, Integer> {
|
||||
}
|
||||
|
|
|
@ -11,5 +11,5 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface MetaSensorItemKeyDAO extends JpaRepository<MetaSensorItemKey, Long> {
|
||||
List<MetaSensorItemKey> findAllByMetaCrawlerId(Short metaCrawlerId);
|
||||
List<MetaSensorItemKey> findAllByMetaCrawlerId(Short metaCrawlerId);
|
||||
}
|
||||
|
|
|
@ -8,5 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by insanity on 17. 6. 23.
|
||||
*/
|
||||
@Repository
|
||||
public interface MetaSensorItemTypeDAO extends JpaRepository<MetaSensorItemType, Short>{
|
||||
public interface MetaSensorItemTypeDAO extends JpaRepository<MetaSensorItemType, Short> {
|
||||
}
|
||||
|
|
|
@ -9,5 +9,5 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
|
||||
@Repository
|
||||
public interface MetaSensorStatusDAO extends JpaRepository<MetaSensorStatus, Short> {
|
||||
public interface MetaSensorStatusDAO extends JpaRepository<MetaSensorStatus, Short> {
|
||||
}
|
||||
|
|
|
@ -11,5 +11,5 @@ import java.util.List;
|
|||
*/
|
||||
@Repository
|
||||
public interface MetaVendorCrawlerDAO extends JpaRepository<MetaVendorCrawler, Integer> {
|
||||
List<MetaVendorCrawler> findAllByMetaInfraVendorId(Integer metaInfraVendorId);
|
||||
List<MetaVendorCrawler> findAllByMetaInfraVendorId(Integer metaInfraVendorId);
|
||||
}
|
||||
|
|
|
@ -8,5 +8,5 @@ import org.springframework.stereotype.Repository;
|
|||
* Created by insanity on 17. 6. 23.
|
||||
*/
|
||||
@Repository
|
||||
public interface MetaVendorCrawlerSensorItemDAO extends JpaRepository<MetaVendorCrawlerSensorItem, Long>{
|
||||
public interface MetaVendorCrawlerSensorItemDAO extends JpaRepository<MetaVendorCrawlerSensorItem, Long> {
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package com.loafle.overflow.central.module.meta.service;
|
|||
|
||||
import com.loafle.overflow.central.module.meta.dao.MetaCrawlerInputItemDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.meta.MetaCrawler;
|
||||
import com.loafle.overflow.model.meta.MetaCrawlerInputItem;
|
||||
import com.loafle.overflow.service.central.meta.MetaCrawlerInputItemService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -16,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaCrawlerInputItemService")
|
||||
public class CentralMetaCrawlerInputItemService implements MetaCrawlerInputItemService {
|
||||
|
||||
@Autowired
|
||||
private MetaCrawlerInputItemDAO crawlerInputItemDAO;
|
||||
@Autowired
|
||||
private MetaCrawlerInputItemDAO crawlerInputItemDAO;
|
||||
|
||||
public List<MetaCrawlerInputItem> readAllByMetaCrawlerID(Short metaCrawlerID) throws OverflowException {
|
||||
return this.crawlerInputItemDAO.findAllByMetaCrawlerId(metaCrawlerID);
|
||||
}
|
||||
public List<MetaCrawlerInputItem> readAllByMetaCrawlerID(Short metaCrawlerID) throws OverflowException {
|
||||
return this.crawlerInputItemDAO.findAllByMetaCrawlerId(metaCrawlerID);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,10 +14,10 @@ import java.util.List;
|
|||
@Service("MetaCrawlerService")
|
||||
public class CentralMetaCrawlerService {
|
||||
|
||||
@Autowired
|
||||
private MetaCrawlerDAO crawlerDAO;
|
||||
@Autowired
|
||||
private MetaCrawlerDAO crawlerDAO;
|
||||
|
||||
public List<MetaCrawler> readAll() throws OverflowException {
|
||||
return this.crawlerDAO.findAll();
|
||||
}
|
||||
public List<MetaCrawler> readAll() throws OverflowException {
|
||||
return this.crawlerDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,18 +16,18 @@ import java.util.List;
|
|||
@Service("MetaHistoryTypeService")
|
||||
public class CentralMetaHistoryTypeService implements MetaHistoryTypeService {
|
||||
|
||||
@Autowired
|
||||
private MetaHistoryTypeDAO hisotyTypeDAO;
|
||||
@Autowired
|
||||
private MetaHistoryTypeDAO hisotyTypeDAO;
|
||||
|
||||
public List<MetaHistoryType> readAll() throws OverflowException {
|
||||
return this.hisotyTypeDAO.findAll();
|
||||
}
|
||||
public List<MetaHistoryType> readAll() throws OverflowException {
|
||||
return this.hisotyTypeDAO.findAll();
|
||||
}
|
||||
|
||||
public MetaHistoryType regist(MetaHistoryType type) throws OverflowException {
|
||||
return this.hisotyTypeDAO.save(type);
|
||||
}
|
||||
public MetaHistoryType regist(MetaHistoryType type) throws OverflowException {
|
||||
return this.hisotyTypeDAO.save(type);
|
||||
}
|
||||
|
||||
public List<MetaHistoryType> registAll(List<MetaHistoryType> metaHistoryTypes) throws OverflowException {
|
||||
return (List<MetaHistoryType>)this.hisotyTypeDAO.saveAll(metaHistoryTypes);
|
||||
}
|
||||
public List<MetaHistoryType> registAll(List<MetaHistoryType> metaHistoryTypes) throws OverflowException {
|
||||
return (List<MetaHistoryType>) this.hisotyTypeDAO.saveAll(metaHistoryTypes);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,10 +16,10 @@ import java.util.List;
|
|||
@Service("MetaInfraTypeService")
|
||||
public class CentralMetaInfraTypeService implements MetaInfraTypeService {
|
||||
|
||||
@Autowired
|
||||
private MetaInfraTypeDAO infraTypeDAO;
|
||||
@Autowired
|
||||
private MetaInfraTypeDAO infraTypeDAO;
|
||||
|
||||
public List<MetaInfraType> readAll() throws OverflowException {
|
||||
return this.infraTypeDAO.findAll();
|
||||
}
|
||||
public List<MetaInfraType> readAll() throws OverflowException {
|
||||
return this.infraTypeDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,11 +16,11 @@ import java.util.List;
|
|||
@Service("MetaInfraVendorService")
|
||||
public class CentralMetaInfraVendorService implements MetaInfraVendorService {
|
||||
|
||||
@Autowired
|
||||
private MetaInfraVendorDAO infraVendorDAO;
|
||||
@Autowired
|
||||
private MetaInfraVendorDAO infraVendorDAO;
|
||||
|
||||
public List<MetaInfraVendor> readAllByMetaInfraTypeID(Integer metaInfraTypeID) throws OverflowException {
|
||||
return this.infraVendorDAO.findAllByMetaInfraTypeId(metaInfraTypeID);
|
||||
}
|
||||
public List<MetaInfraVendor> readAllByMetaInfraTypeID(Integer metaInfraTypeID) throws OverflowException {
|
||||
return this.infraVendorDAO.findAllByMetaInfraTypeId(metaInfraTypeID);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaInputTypeService")
|
||||
public class CentralMetaInputTypeService implements MetaInputTypeService {
|
||||
|
||||
@Autowired
|
||||
private MetaInputTypeDAO inputTypeDAO;
|
||||
@Autowired
|
||||
private MetaInputTypeDAO inputTypeDAO;
|
||||
|
||||
public List<MetaInputType> readAll() throws OverflowException {
|
||||
return this.inputTypeDAO.findAll();
|
||||
}
|
||||
public List<MetaInputType> readAll() throws OverflowException {
|
||||
return this.inputTypeDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaMemberStatusService")
|
||||
public class CentralMetaMemberStatusService implements MetaMemberStatusService {
|
||||
|
||||
@Autowired
|
||||
private MetaMemberStatusDAO memberStatusDAO;
|
||||
@Autowired
|
||||
private MetaMemberStatusDAO memberStatusDAO;
|
||||
|
||||
public List<MetaMemberStatus> readAll() throws OverflowException {
|
||||
return this.memberStatusDAO.findAll();
|
||||
}
|
||||
public List<MetaMemberStatus> readAll() throws OverflowException {
|
||||
return this.memberStatusDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
|
||||
@Service("MetaNoAuthProbeStatusService")
|
||||
public class CentralMetaNoAuthProbeStatusService implements MetaNoAuthProbeStatusService {
|
||||
@Autowired
|
||||
private MetaNoAuthProbeStatusDAO noAuthProbeStatusDAO;
|
||||
@Autowired
|
||||
private MetaNoAuthProbeStatusDAO noAuthProbeStatusDAO;
|
||||
|
||||
public List<MetaNoAuthProbeStatus> readAll() throws OverflowException {
|
||||
return this.noAuthProbeStatusDAO.findAll();
|
||||
}
|
||||
public List<MetaNoAuthProbeStatus> readAll() throws OverflowException {
|
||||
return this.noAuthProbeStatusDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaProbeArchitectureService")
|
||||
public class CentralMetaProbeArchitectureService implements MetaProbeArchitectureService {
|
||||
|
||||
@Autowired
|
||||
private MetaProbeArchitectureDAO probeArchitectureDAO;
|
||||
@Autowired
|
||||
private MetaProbeArchitectureDAO probeArchitectureDAO;
|
||||
|
||||
public List<MetaProbeArchitecture> readAll() throws OverflowException {
|
||||
return this.probeArchitectureDAO.findAll();
|
||||
}
|
||||
public List<MetaProbeArchitecture> readAll() throws OverflowException {
|
||||
return this.probeArchitectureDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaProbeOsService")
|
||||
public class CentralMetaProbeOsService implements MetaProbeOsService {
|
||||
|
||||
@Autowired
|
||||
private MetaProbeOsDAO probeOsDAO;
|
||||
@Autowired
|
||||
private MetaProbeOsDAO probeOsDAO;
|
||||
|
||||
public List<MetaProbeOs> readAll() throws OverflowException {
|
||||
return this.probeOsDAO.findAll();
|
||||
}
|
||||
public List<MetaProbeOs> readAll() throws OverflowException {
|
||||
return this.probeOsDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package com.loafle.overflow.central.module.meta.service;
|
|||
|
||||
import com.loafle.overflow.central.module.meta.dao.MetaProbePackageDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.meta.MetaProbeOs;
|
||||
import com.loafle.overflow.model.meta.MetaProbePackage;
|
||||
import com.loafle.overflow.service.central.meta.MetaProbePackageService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -16,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaProbePackageService")
|
||||
public class CentralMetaProbePackageService implements MetaProbePackageService {
|
||||
|
||||
@Autowired
|
||||
private MetaProbePackageDAO probePackageDAO;
|
||||
@Autowired
|
||||
private MetaProbePackageDAO probePackageDAO;
|
||||
|
||||
public List<MetaProbePackage> readAllByMetaProbeOsID(Short metaProbeOsID) throws OverflowException {
|
||||
return this.probePackageDAO.findAllByMetaProbeOsId(metaProbeOsID);
|
||||
}
|
||||
public List<MetaProbePackage> readAllByMetaProbeOsID(Short metaProbeOsID) throws OverflowException {
|
||||
return this.probePackageDAO.findAllByMetaProbeOsId(metaProbeOsID);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaProbeStatusService")
|
||||
public class CentralMetaProbeStatusService implements MetaProbeStatusService {
|
||||
|
||||
@Autowired
|
||||
private MetaProbeStatusDAO probeStatusDAO;
|
||||
@Autowired
|
||||
private MetaProbeStatusDAO probeStatusDAO;
|
||||
|
||||
public List<MetaProbeStatus> readAll() throws OverflowException {
|
||||
return this.probeStatusDAO.findAll();
|
||||
}
|
||||
public List<MetaProbeStatus> readAll() throws OverflowException {
|
||||
return this.probeStatusDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,10 +16,10 @@ import java.util.List;
|
|||
@Service("MetaProbeTaskTypeService")
|
||||
public class CentralMetaProbeTaskTypeService implements MetaProbeTaskTypeService {
|
||||
|
||||
@Autowired
|
||||
private MetaProbeTaskTypeDAO probeTaskTypeDAO;
|
||||
@Autowired
|
||||
private MetaProbeTaskTypeDAO probeTaskTypeDAO;
|
||||
|
||||
public List<MetaProbeTaskType> readAll() throws OverflowException {
|
||||
return this.probeTaskTypeDAO.findAll();
|
||||
}
|
||||
public List<MetaProbeTaskType> readAll() throws OverflowException {
|
||||
return this.probeTaskTypeDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,10 +16,10 @@ import java.util.List;
|
|||
@Service("MetaProbeVersionService")
|
||||
public class CentralMetaProbeVersionService implements MetaProbeVersionService {
|
||||
|
||||
@Autowired
|
||||
private MetaProbeVersionDAO probeVersionDAO;
|
||||
@Autowired
|
||||
private MetaProbeVersionDAO probeVersionDAO;
|
||||
|
||||
public List<MetaProbeVersion> readAll() throws OverflowException {
|
||||
return this.probeVersionDAO.findAll();
|
||||
}
|
||||
public List<MetaProbeVersion> readAll() throws OverflowException {
|
||||
return this.probeVersionDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package com.loafle.overflow.central.module.meta.service;
|
|||
|
||||
import com.loafle.overflow.central.module.meta.dao.MetaSensorDisplayItemDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.meta.MetaCrawler;
|
||||
import com.loafle.overflow.model.meta.MetaSensorDisplayItem;
|
||||
import com.loafle.overflow.service.central.meta.MetaSensorDisplayItemService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -15,18 +14,18 @@ import java.util.List;
|
|||
*/
|
||||
@Service("MetaSensorDisplayItemService")
|
||||
public class CentralMetaSensorDisplayItemService implements MetaSensorDisplayItemService {
|
||||
@Autowired
|
||||
private MetaSensorDisplayItemDAO displayItemDAO;
|
||||
@Autowired
|
||||
private MetaSensorDisplayItemDAO displayItemDAO;
|
||||
|
||||
public MetaSensorDisplayItem regist(MetaSensorDisplayItem item) throws OverflowException {
|
||||
return this.displayItemDAO.save(item);
|
||||
}
|
||||
public MetaSensorDisplayItem regist(MetaSensorDisplayItem item) throws OverflowException {
|
||||
return this.displayItemDAO.save(item);
|
||||
}
|
||||
|
||||
public MetaSensorDisplayItem read(Long id) throws OverflowException {
|
||||
return this.displayItemDAO.findById(id).get();
|
||||
}
|
||||
public MetaSensorDisplayItem read(Long id) throws OverflowException {
|
||||
return this.displayItemDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public List<MetaSensorDisplayItem> readAllByCrawlerID(Short metaCrawlerID) throws OverflowException {
|
||||
return this.displayItemDAO.findAllByMetaCrawlerId(metaCrawlerID);
|
||||
}
|
||||
public List<MetaSensorDisplayItem> readAllByCrawlerID(Short metaCrawlerID) throws OverflowException {
|
||||
return this.displayItemDAO.findAllByMetaCrawlerId(metaCrawlerID);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package com.loafle.overflow.central.module.meta.service;
|
|||
|
||||
import com.loafle.overflow.central.module.meta.dao.MetaSensorDisplayMappingDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.meta.MetaSensorDisplayItem;
|
||||
import com.loafle.overflow.model.meta.MetaSensorDisplayMapping;
|
||||
import com.loafle.overflow.model.meta.MetaSensorItemKey;
|
||||
import com.loafle.overflow.service.central.meta.MetaSensorDisplayMappingService;
|
||||
|
@ -16,14 +15,15 @@ import java.util.List;
|
|||
*/
|
||||
@Service("MetaSensorDisplayMappingService")
|
||||
public class CentralMetaSensorDisplayMappingService implements MetaSensorDisplayMappingService {
|
||||
@Autowired
|
||||
private MetaSensorDisplayMappingDAO mappingDAO;
|
||||
@Autowired
|
||||
private MetaSensorDisplayMappingDAO mappingDAO;
|
||||
|
||||
public MetaSensorDisplayMapping regist(MetaSensorDisplayMapping m) throws OverflowException {
|
||||
return this.mappingDAO.save(m);
|
||||
}
|
||||
public MetaSensorDisplayMapping regist(MetaSensorDisplayMapping m) throws OverflowException {
|
||||
return this.mappingDAO.save(m);
|
||||
}
|
||||
|
||||
public List<MetaSensorItemKey> readAllMetaSensorItemKeyByDisplayItemID(Long metaSensorDisplayItemID) throws OverflowException {
|
||||
return this.mappingDAO.findAllMetaSensorItemKeyByMetaSensorDisplayItemId(metaSensorDisplayItemID);
|
||||
}
|
||||
public List<MetaSensorItemKey> readAllMetaSensorItemKeyByDisplayItemID(Long metaSensorDisplayItemID)
|
||||
throws OverflowException {
|
||||
return this.mappingDAO.findAllMetaSensorItemKeyByMetaSensorDisplayItemId(metaSensorDisplayItemID);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,18 +16,18 @@ import java.util.List;
|
|||
@Service("MetaSensorItemTypeService")
|
||||
public class CentralMetaSensorItemTypeService implements MetaSensorItemTypeService {
|
||||
|
||||
@Autowired
|
||||
private MetaSensorItemTypeDAO sensorItemTypeDAO;
|
||||
@Autowired
|
||||
private MetaSensorItemTypeDAO sensorItemTypeDAO;
|
||||
|
||||
public List<MetaSensorItemType> readAll() throws OverflowException {
|
||||
return this.sensorItemTypeDAO.findAll();
|
||||
}
|
||||
public List<MetaSensorItemType> readAll() throws OverflowException {
|
||||
return this.sensorItemTypeDAO.findAll();
|
||||
}
|
||||
|
||||
public MetaSensorItemType regist(MetaSensorItemType type) throws OverflowException {
|
||||
return this.sensorItemTypeDAO.save(type);
|
||||
}
|
||||
public MetaSensorItemType regist(MetaSensorItemType type) throws OverflowException {
|
||||
return this.sensorItemTypeDAO.save(type);
|
||||
}
|
||||
|
||||
public List<MetaSensorItemType> registAll(List<MetaSensorItemType> list) throws OverflowException {
|
||||
return (List<MetaSensorItemType>)this.sensorItemTypeDAO.saveAll(list);
|
||||
}
|
||||
public List<MetaSensorItemType> registAll(List<MetaSensorItemType> list) throws OverflowException {
|
||||
return (List<MetaSensorItemType>) this.sensorItemTypeDAO.saveAll(list);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,10 +13,10 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
@Service("MetaSensorItemUnitService")
|
||||
public class CentralMetaSensorItemUnitService implements MetaSensorItemUnitService {
|
||||
@Autowired
|
||||
private MetaSensorItemUnitDAO sensorItemUnitDAO;
|
||||
@Autowired
|
||||
private MetaSensorItemUnitDAO sensorItemUnitDAO;
|
||||
|
||||
public MetaSensorItemUnit regist(MetaSensorItemUnit sensorItemUnit) throws OverflowException {
|
||||
return this.sensorItemUnitDAO.save(sensorItemUnit);
|
||||
}
|
||||
public MetaSensorItemUnit regist(MetaSensorItemUnit sensorItemUnit) throws OverflowException {
|
||||
return this.sensorItemUnitDAO.save(sensorItemUnit);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
@Service("MetaSensorStatusService")
|
||||
public class CentralMetaSensorStatusService implements MetaSensorStatusService {
|
||||
|
||||
@Autowired
|
||||
private MetaSensorStatusDAO sensorStatusDAO;
|
||||
@Autowired
|
||||
private MetaSensorStatusDAO sensorStatusDAO;
|
||||
|
||||
public List<MetaSensorStatus> readAll() throws OverflowException {
|
||||
return this.sensorStatusDAO.findAll();
|
||||
}
|
||||
public List<MetaSensorStatus> readAll() throws OverflowException {
|
||||
return this.sensorStatusDAO.findAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package com.loafle.overflow.central.module.meta.service;
|
|||
|
||||
import com.loafle.overflow.central.module.meta.dao.MetaVendorCrawlerDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.model.meta.MetaInfraVendor;
|
||||
import com.loafle.overflow.model.meta.MetaVendorCrawler;
|
||||
import com.loafle.overflow.service.central.meta.MetaVendorCrawlerService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -17,15 +16,15 @@ import java.util.List;
|
|||
@Service("MetaVendorCrawlerService")
|
||||
public class CentralMetaVendorCrawlerService implements MetaVendorCrawlerService {
|
||||
|
||||
@Autowired
|
||||
private MetaVendorCrawlerDAO crawlerDAO;
|
||||
@Autowired
|
||||
private MetaVendorCrawlerDAO crawlerDAO;
|
||||
|
||||
public List<MetaVendorCrawler> readAllByMetaInfraVendorID(Integer metaInfraVendorID) throws OverflowException {
|
||||
public List<MetaVendorCrawler> readAllByMetaInfraVendorID(Integer metaInfraVendorID) throws OverflowException {
|
||||
|
||||
return this.crawlerDAO.findAllByMetaInfraVendorId(metaInfraVendorID);
|
||||
}
|
||||
return this.crawlerDAO.findAllByMetaInfraVendorId(metaInfraVendorID);
|
||||
}
|
||||
|
||||
public MetaVendorCrawler regist(MetaVendorCrawler metaVendorCrawler) throws OverflowException {
|
||||
return this.crawlerDAO.save(metaVendorCrawler);
|
||||
}
|
||||
public MetaVendorCrawler regist(MetaVendorCrawler metaVendorCrawler) throws OverflowException {
|
||||
return this.crawlerDAO.save(metaVendorCrawler);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,16 +13,19 @@ import java.util.List;
|
|||
@Repository
|
||||
public interface NoAuthProbeDAO extends JpaRepository<NoAuthProbe, Long> {
|
||||
|
||||
NoAuthProbe findByTempProbeKey(String tempProbeKey);
|
||||
NoAuthProbe findByTempProbeKey(String tempProbeKey);
|
||||
|
||||
List<NoAuthProbe> findAllByDomainIdAndMetaNoAuthProbeStatusId(Long domainID, Short metaNoAuthProbeStatusId);
|
||||
List<NoAuthProbe> findAllByDomainIdAndMetaNoAuthProbeStatusId(Long domainID, Short metaNoAuthProbeStatusId);
|
||||
|
||||
// NoAuthProbeDeprecate findByTempKey(NoAuthProbeDeprecate noAuthAgent);
|
||||
// List<NoAuthProbeDeprecate> findAllByNoAuth(NoAuthProbeDeprecate noAuthAgent);
|
||||
// @Query("SELECT n FROM NoAuthProbe n WHERE n.tempProbeKey = :tempProbeKey")
|
||||
// @Query("select m from Member m WHERE m.email = :#{#m2.email}")
|
||||
// NoAuthProbeDeprecate findByTempKey(NoAuthProbeDeprecate noAuthAgent);
|
||||
// List<NoAuthProbeDeprecate> findAllByNoAuth(NoAuthProbeDeprecate noAuthAgent);
|
||||
// @Query("SELECT n FROM NoAuthProbe n WHERE n.tempProbeKey = :tempProbeKey")
|
||||
// @Query("select m from Member m WHERE m.email = :#{#m2.email}")
|
||||
|
||||
// @Modifying(clearAutomatically = true)
|
||||
// @Query("UPDATE NoAuthProbe n set n.connectDate = :connectDate, n.connectAddress = :connectAddress where n.tempProbeKey = :tempProbeKey")
|
||||
// int saveConnect(@Param("tempProbeKey") String tempProbeKey, @Param("connectDate") Date connectDate, @Param("connectAddress") String connectAddress);
|
||||
// @Modifying(clearAutomatically = true)
|
||||
// @Query("UPDATE NoAuthProbe n set n.connectDate = :connectDate,
|
||||
// n.connectAddress = :connectAddress where n.tempProbeKey = :tempProbeKey")
|
||||
// int saveConnect(@Param("tempProbeKey") String tempProbeKey,
|
||||
// @Param("connectDate") Date connectDate, @Param("connectAddress") String
|
||||
// connectAddress);
|
||||
}
|
||||
|
|
|
@ -15,11 +15,11 @@ import java.util.List;
|
|||
@Repository
|
||||
public interface NotificationDAO extends JpaRepository<Notification, Long> {
|
||||
|
||||
List<Notification> findAllByMemberEmail(String memberEmail);
|
||||
List<Notification> findAllByMemberEmail(String memberEmail);
|
||||
|
||||
Page<Notification> findAllByMemberEmail(String memberEmail, Pageable pageRequest);
|
||||
Page<Notification> findAllByMemberEmail(String memberEmail, Pageable pageRequest);
|
||||
|
||||
Page<Notification> findAllByMemberEmailAndConfirmDateNull(String memberEmail, Pageable pageRequest);
|
||||
Page<Notification> findAllByMemberEmailAndConfirmDateNull(String memberEmail, Pageable pageRequest);
|
||||
|
||||
Long countByMemberEmailAndConfirmDateNull(String memberEmail);
|
||||
Long countByMemberEmailAndConfirmDateNull(String memberEmail);
|
||||
}
|
||||
|
|
|
@ -4,7 +4,6 @@ import com.loafle.overflow.central.commons.utils.PageUtil;
|
|||
import com.loafle.overflow.central.module.notification.dao.NotificationDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.core.model.PageParams;
|
||||
import com.loafle.overflow.model.member.Member;
|
||||
import com.loafle.overflow.model.notification.Notification;
|
||||
import com.loafle.overflow.service.central.notification.NotificationService;
|
||||
|
||||
|
@ -21,51 +20,51 @@ import java.util.List;
|
|||
@Service("NotificationService")
|
||||
public class CentralNotificationService implements NotificationService {
|
||||
|
||||
@Autowired
|
||||
private NotificationDAO notificationDAO;
|
||||
@Autowired
|
||||
private NotificationDAO notificationDAO;
|
||||
|
||||
public Notification regist(Notification notification) throws OverflowException {
|
||||
return this.notificationDAO.save(notification);
|
||||
}
|
||||
public Notification regist(Notification notification) throws OverflowException {
|
||||
return this.notificationDAO.save(notification);
|
||||
}
|
||||
|
||||
public Page<Notification> readAllByMemberEmail(String memberEmail, PageParams pageParams) throws OverflowException {
|
||||
return this.notificationDAO.findAllByMemberEmail(memberEmail, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
public Page<Notification> readAllByMemberEmail(String memberEmail, PageParams pageParams) throws OverflowException {
|
||||
return this.notificationDAO.findAllByMemberEmail(memberEmail, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<Notification> readAllUnconfirmedByMemberEmail(String memberEmail, PageParams pageParams)
|
||||
throws OverflowException {
|
||||
return this.notificationDAO.findAllByMemberEmailAndConfirmDateNull(memberEmail,
|
||||
PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
public Page<Notification> readAllUnconfirmedByMemberEmail(String memberEmail, PageParams pageParams)
|
||||
throws OverflowException {
|
||||
return this.notificationDAO.findAllByMemberEmailAndConfirmDateNull(memberEmail,
|
||||
PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Long readUnconfirmedCountByMemberEmail(String memberEmail) throws OverflowException {
|
||||
return this.notificationDAO.countByMemberEmailAndConfirmDateNull(memberEmail);
|
||||
}
|
||||
public Long readUnconfirmedCountByMemberEmail(String memberEmail) throws OverflowException {
|
||||
return this.notificationDAO.countByMemberEmailAndConfirmDateNull(memberEmail);
|
||||
}
|
||||
|
||||
public Page<Notification> markAllAsReadByMemberEmail(String memberEmail, PageParams pageParams)
|
||||
throws OverflowException {
|
||||
List<Notification> list = this.notificationDAO.findAllByMemberEmail(memberEmail);
|
||||
for (Notification n : list) {
|
||||
n.setConfirmDate(new Date());
|
||||
}
|
||||
this.notificationDAO.saveAll(list);
|
||||
return this.readAllByMemberEmail(memberEmail, pageParams);
|
||||
public Page<Notification> markAllAsReadByMemberEmail(String memberEmail, PageParams pageParams)
|
||||
throws OverflowException {
|
||||
List<Notification> list = this.notificationDAO.findAllByMemberEmail(memberEmail);
|
||||
for (Notification n : list) {
|
||||
n.setConfirmDate(new Date());
|
||||
}
|
||||
this.notificationDAO.saveAll(list);
|
||||
return this.readAllByMemberEmail(memberEmail, pageParams);
|
||||
}
|
||||
|
||||
public Page<Notification> markAllAsUnreadMemberEmail(String memberEmail, PageParams pageParams)
|
||||
throws OverflowException {
|
||||
List<Notification> list = this.notificationDAO.findAllByMemberEmail(memberEmail);
|
||||
for (Notification n : list) {
|
||||
n.setConfirmDate(null);
|
||||
}
|
||||
this.notificationDAO.saveAll(list);
|
||||
return this.readAllByMemberEmail(memberEmail, pageParams);
|
||||
public Page<Notification> markAllAsUnreadMemberEmail(String memberEmail, PageParams pageParams)
|
||||
throws OverflowException {
|
||||
List<Notification> list = this.notificationDAO.findAllByMemberEmail(memberEmail);
|
||||
for (Notification n : list) {
|
||||
n.setConfirmDate(null);
|
||||
}
|
||||
this.notificationDAO.saveAll(list);
|
||||
return this.readAllByMemberEmail(memberEmail, pageParams);
|
||||
}
|
||||
|
||||
public Notification markAsRead(Long notificationID) throws OverflowException {
|
||||
Notification notification = this.notificationDAO.findById(notificationID).get();
|
||||
notification.setConfirmDate(new Date());
|
||||
return this.notificationDAO.save(notification);
|
||||
}
|
||||
public Notification markAsRead(Long notificationID) throws OverflowException {
|
||||
Notification notification = this.notificationDAO.findById(notificationID).get();
|
||||
notification.setConfirmDate(new Date());
|
||||
return this.notificationDAO.save(notification);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -7,17 +7,19 @@ import org.springframework.stereotype.Repository;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* Created by insanity on 17. 5. 29.
|
||||
*/
|
||||
@Repository
|
||||
public interface ProbeDAO extends JpaRepository<Probe, Long> {
|
||||
|
||||
Probe findByProbeKey(String probeKey);
|
||||
List<Probe> findAllByDomainIdOrderByIdDesc(Long domainID);
|
||||
Probe findByProbeKey(String probeKey);
|
||||
|
||||
// @Modifying(clearAutomatically = true)
|
||||
// @Query("UPDATE Probe p set p.connectDate = :connectDate, p.connectAddress = :connectAddress where p.probeKey = :probeKey")
|
||||
// int saveConnect(@Param("probeKey") String probeKey, @Param("connectDate") Date connectDate, @Param("connectAddress") String connectAddress);
|
||||
List<Probe> findAllByDomainIdOrderByIdDesc(Long domainID);
|
||||
|
||||
// @Modifying(clearAutomatically = true)
|
||||
// @Query("UPDATE Probe p set p.connectDate = :connectDate, p.connectAddress =
|
||||
// :connectAddress where p.probeKey = :probeKey")
|
||||
// int saveConnect(@Param("probeKey") String probeKey, @Param("connectDate")
|
||||
// Date connectDate, @Param("connectAddress") String connectAddress);
|
||||
}
|
|
@ -12,7 +12,7 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface ProbeHostDAO extends JpaRepository<ProbeHost, Long> {
|
||||
ProbeHost findByProbeId(Long probeID);
|
||||
ProbeHost findByProbeId(Long probeID);
|
||||
|
||||
List<ProbeHost> findAllByProbeDomainId(Long domainID);
|
||||
List<ProbeHost> findAllByProbeDomainId(Long domainID);
|
||||
}
|
||||
|
|
|
@ -12,5 +12,5 @@ import com.loafle.overflow.model.probe.ProbeTask;
|
|||
*/
|
||||
@Repository
|
||||
public interface ProbeTaskDAO extends JpaRepository<ProbeTask, Long> {
|
||||
List<ProbeTask> findAllByProbeId(Long probeId);
|
||||
List<ProbeTask> findAllByProbeId(Long probeId);
|
||||
}
|
||||
|
|
|
@ -16,22 +16,22 @@ import org.springframework.stereotype.Service;
|
|||
@Service("ProbeHostService")
|
||||
public class CentralProbeHostService implements ProbeHostService {
|
||||
|
||||
@Autowired
|
||||
private ProbeHostDAO probeHostDAO;
|
||||
@Autowired
|
||||
private ProbeHostDAO probeHostDAO;
|
||||
|
||||
public ProbeHost read(Long id) throws OverflowException {
|
||||
return this.probeHostDAO.findById(id).get();
|
||||
}
|
||||
public ProbeHost read(Long id) throws OverflowException {
|
||||
return this.probeHostDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public ProbeHost readByProbeID(Long probeID) throws OverflowException {
|
||||
return this.probeHostDAO.findByProbeId(probeID);
|
||||
}
|
||||
public ProbeHost readByProbeID(Long probeID) throws OverflowException {
|
||||
return this.probeHostDAO.findByProbeId(probeID);
|
||||
}
|
||||
|
||||
public ProbeHost regist(ProbeHost probeHost) throws OverflowException {
|
||||
return this.probeHostDAO.save(probeHost);
|
||||
}
|
||||
public ProbeHost regist(ProbeHost probeHost) throws OverflowException {
|
||||
return this.probeHostDAO.save(probeHost);
|
||||
}
|
||||
|
||||
public List<ProbeHost> readAllByDomainID(Long domainID) throws OverflowException {
|
||||
return this.probeHostDAO.findAllByProbeDomainId(domainID);
|
||||
}
|
||||
public List<ProbeHost> readAllByDomainID(Long domainID) throws OverflowException {
|
||||
return this.probeHostDAO.findAllByProbeDomainId(domainID);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,77 +18,77 @@ import java.util.List;
|
|||
@Service("ProbeService")
|
||||
public class CentralProbeService implements ProbeService {
|
||||
|
||||
@Autowired
|
||||
private ProbeDAO probeDAO;
|
||||
@Autowired
|
||||
private MessagePublisher messagePublisher;
|
||||
@Autowired
|
||||
private ProbeDAO probeDAO;
|
||||
@Autowired
|
||||
private MessagePublisher messagePublisher;
|
||||
|
||||
public Probe regist(Probe probe) throws OverflowException {
|
||||
return this.probeDAO.save(probe);
|
||||
public Probe regist(Probe probe) throws OverflowException {
|
||||
return this.probeDAO.save(probe);
|
||||
}
|
||||
|
||||
public List<Probe> regist(List<Probe> probes) throws OverflowException {
|
||||
return (List<Probe>) this.probeDAO.saveAll(probes);
|
||||
}
|
||||
|
||||
public List<Probe> readAllByDomainID(Long domainID) throws OverflowException {
|
||||
List<Probe> probes = this.probeDAO.findAllByDomainIdOrderByIdDesc(domainID);
|
||||
return probes;
|
||||
}
|
||||
|
||||
public Probe read(Long id) throws OverflowException {
|
||||
return this.probeDAO.findById(id).get();
|
||||
}
|
||||
|
||||
public Probe readByProbeKey(String probeKey) throws OverflowException {
|
||||
return this.probeDAO.findByProbeKey(probeKey);
|
||||
}
|
||||
|
||||
public Probe modify(Probe probe) throws OverflowException {
|
||||
return this.probeDAO.save(probe);
|
||||
}
|
||||
|
||||
public boolean remove(Long id) throws OverflowException {
|
||||
this.probeDAO.deleteById(id);
|
||||
return true;
|
||||
}
|
||||
|
||||
public Probe increaseTargetCount(Probe probe) {
|
||||
Probe p = this.probeDAO.findById(probe.getId()).get();
|
||||
p.setTargetCount(p.getTargetCount() + 1);
|
||||
return this.probeDAO.save(p);
|
||||
}
|
||||
|
||||
public Probe decreaseTargetCount(Probe probe) {
|
||||
Probe p = this.probeDAO.findById(probe.getId()).get();
|
||||
int count = p.getTargetCount();
|
||||
if (count > 0) {
|
||||
p.setTargetCount(count - 1);
|
||||
}
|
||||
return this.probeDAO.save(p);
|
||||
}
|
||||
|
||||
public List<Probe> regist(List<Probe> probes) throws OverflowException {
|
||||
return (List<Probe>)this.probeDAO.saveAll(probes);
|
||||
}
|
||||
public Probe modifyDisplayName(Long probeId, String displayName) {
|
||||
Probe probe = this.probeDAO.findById(probeId).get();
|
||||
probe.setDisplayName(displayName);
|
||||
return this.probeDAO.save(probe);
|
||||
}
|
||||
|
||||
public List<Probe> readAllByDomainID(Long domainID) throws OverflowException {
|
||||
List<Probe> probes = this.probeDAO.findAllByDomainIdOrderByIdDesc(domainID);
|
||||
return probes;
|
||||
}
|
||||
public void onConnect(String probeKey, String connectAddress) throws OverflowException {
|
||||
Probe probe = this.probeDAO.findByProbeKey(probeKey);
|
||||
probe.setConnectDate(new Date());
|
||||
probe.setConnectAddress(connectAddress);
|
||||
probe = this.probeDAO.save(probe);
|
||||
|
||||
public Probe read(Long id) throws OverflowException {
|
||||
return this.probeDAO.findById(id).get();
|
||||
}
|
||||
messagePublisher.publishToDomainMembers(probe.getDomain().getId(), "ProbeService.onConnect", probe);
|
||||
}
|
||||
|
||||
public Probe readByProbeKey(String probeKey) throws OverflowException {
|
||||
return this.probeDAO.findByProbeKey(probeKey);
|
||||
}
|
||||
public void onDisconnect(String probeKey) throws OverflowException {
|
||||
Probe probe = this.probeDAO.findByProbeKey(probeKey);
|
||||
probe.setConnectDate(null);
|
||||
probe.setConnectAddress(null);
|
||||
probe = this.probeDAO.save(probe);
|
||||
|
||||
public Probe modify(Probe probe) throws OverflowException {
|
||||
return this.probeDAO.save(probe);
|
||||
}
|
||||
|
||||
public boolean remove(Long id) throws OverflowException {
|
||||
this.probeDAO.deleteById(id);
|
||||
return true;
|
||||
}
|
||||
|
||||
public Probe increaseTargetCount(Probe probe) {
|
||||
Probe p = this.probeDAO.findById(probe.getId()).get();
|
||||
p.setTargetCount(p.getTargetCount() + 1);
|
||||
return this.probeDAO.save(p);
|
||||
}
|
||||
|
||||
public Probe decreaseTargetCount(Probe probe) {
|
||||
Probe p = this.probeDAO.findById(probe.getId()).get();
|
||||
int count = p.getTargetCount();
|
||||
if (count > 0) {
|
||||
p.setTargetCount(count - 1);
|
||||
}
|
||||
return this.probeDAO.save(p);
|
||||
}
|
||||
|
||||
public Probe modifyDisplayName(Long probeId, String displayName) {
|
||||
Probe probe = this.probeDAO.findById(probeId).get();
|
||||
probe.setDisplayName(displayName);
|
||||
return this.probeDAO.save(probe);
|
||||
}
|
||||
|
||||
public void onConnect(String probeKey, String connectAddress) throws OverflowException {
|
||||
Probe probe = this.probeDAO.findByProbeKey(probeKey);
|
||||
probe.setConnectDate(new Date());
|
||||
probe.setConnectAddress(connectAddress);
|
||||
probe = this.probeDAO.save(probe);
|
||||
|
||||
messagePublisher.publishToDomainMembers(probe.getDomain().getId(), "ProbeService.onConnect", probe);
|
||||
}
|
||||
|
||||
public void onDisconnect(String probeKey) throws OverflowException {
|
||||
Probe probe = this.probeDAO.findByProbeKey(probeKey);
|
||||
probe.setConnectDate(null);
|
||||
probe.setConnectAddress(null);
|
||||
probe = this.probeDAO.save(probe);
|
||||
|
||||
messagePublisher.publishToDomainMembers(probe.getDomain().getId(), "ProbeService.onDisconnect", probe);
|
||||
}
|
||||
messagePublisher.publishToDomainMembers(probe.getDomain().getId(), "ProbeService.onDisconnect", probe);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,16 +14,16 @@ import java.util.List;
|
|||
* Created by snoop on 17. 6. 28.
|
||||
*/
|
||||
@Service("ProbeTaskService")
|
||||
public class CentralProbeTaskService implements ProbeTaskService{
|
||||
public class CentralProbeTaskService implements ProbeTaskService {
|
||||
|
||||
@Autowired
|
||||
private ProbeTaskDAO probeTaskDAO;
|
||||
@Autowired
|
||||
private ProbeTaskDAO probeTaskDAO;
|
||||
|
||||
public ProbeTask regist(ProbeTask probeTask) throws OverflowException {
|
||||
return this.probeTaskDAO.save(probeTask);
|
||||
}
|
||||
public ProbeTask regist(ProbeTask probeTask) throws OverflowException {
|
||||
return this.probeTaskDAO.save(probeTask);
|
||||
}
|
||||
|
||||
public List<ProbeTask> readAllByProbeID(Long probeID) throws OverflowException {
|
||||
return this.probeTaskDAO.findAllByProbeId(probeID);
|
||||
}
|
||||
public List<ProbeTask> readAllByProbeID(Long probeID) throws OverflowException {
|
||||
return this.probeTaskDAO.findAllByProbeId(probeID);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,9 +15,9 @@ import com.loafle.overflow.model.target.Target;
|
|||
*/
|
||||
@Repository
|
||||
public interface SensorDAO extends JpaRepository<Sensor, Long> {
|
||||
Page<Sensor> findAllByTargetId(Long targetID, Pageable pageable);
|
||||
Page<Sensor> findAllByTargetId(Long targetID, Pageable pageable);
|
||||
|
||||
List<Sensor> findAllByTargetId(Long targetID);
|
||||
List<Sensor> findAllByTargetId(Long targetID);
|
||||
|
||||
Page<Sensor> findAllByTargetIn(List<Target> targets, Pageable pageable);
|
||||
Page<Sensor> findAllByTargetIn(List<Target> targets, Pageable pageable);
|
||||
}
|
||||
|
|
|
@ -12,5 +12,5 @@ import org.springframework.stereotype.Repository;
|
|||
*/
|
||||
@Repository
|
||||
public interface SensorItemDAO extends JpaRepository<SensorItem, Long> {
|
||||
Page<SensorItem> findAllBySensorId(Long sensorId, Pageable pageable);
|
||||
Page<SensorItem> findAllBySensorId(Long sensorId, Pageable pageable);
|
||||
}
|
||||
|
|
|
@ -16,6 +16,7 @@ import java.util.List;
|
|||
@Repository
|
||||
public interface SensorItemDependencyDAO extends JpaRepository<SensorItemDependency, Long> {
|
||||
|
||||
@Query("SELECT s.metaSensorItemKey from SensorItemDependency s where s.metaSensorDisplayItem.id = :metaSensorDisplayItemId")
|
||||
List<MetaSensorItemKey> findAllMetaSensorItemKeyByMetaSensorDisplayItemId(@Param("metaSensorDisplayItemId") Long metaSensorDisplayItemId);
|
||||
@Query("SELECT s.metaSensorItemKey from SensorItemDependency s where s.metaSensorDisplayItem.id = :metaSensorDisplayItemId")
|
||||
List<MetaSensorItemKey> findAllMetaSensorItemKeyByMetaSensorDisplayItemId(
|
||||
@Param("metaSensorDisplayItemId") Long metaSensorDisplayItemId);
|
||||
}
|
||||
|
|
|
@ -21,29 +21,29 @@ import java.util.Map;
|
|||
@Service("SensorItemDependencyService")
|
||||
public class CentralSensorItemDependencyService implements SensorItemDependencyService {
|
||||
|
||||
@Autowired
|
||||
private SensorItemDependencyDAO sensorItemDependencyDAO;
|
||||
@Autowired
|
||||
private SensorItemDependencyDAO sensorItemDependencyDAO;
|
||||
|
||||
public SensorItemDependency regist(SensorItemDependency dependency) throws OverflowException {
|
||||
return this.sensorItemDependencyDAO.save(dependency);
|
||||
public SensorItemDependency regist(SensorItemDependency dependency) throws OverflowException {
|
||||
return this.sensorItemDependencyDAO.save(dependency);
|
||||
}
|
||||
|
||||
public List<MetaSensorItemKey> readAllMetaSensorItemKeyByMetaSensorDisplayItemID(Long metaSensorDisplayItemID)
|
||||
throws OverflowException {
|
||||
return this.sensorItemDependencyDAO.findAllMetaSensorItemKeyByMetaSensorDisplayItemId(metaSensorDisplayItemID);
|
||||
}
|
||||
|
||||
public Map<String, List<MetaSensorItemKey>> readAllMapByMetaSensorDisplayItems(
|
||||
List<MetaSensorDisplayItem> metaSensorDisplayItems) throws OverflowException {
|
||||
|
||||
Map<String, List<MetaSensorItemKey>> map = new HashMap<String, List<MetaSensorItemKey>>();
|
||||
|
||||
for (MetaSensorDisplayItem displayItem : metaSensorDisplayItems) {
|
||||
List<MetaSensorItemKey> itemKeys = this.sensorItemDependencyDAO
|
||||
.findAllMetaSensorItemKeyByMetaSensorDisplayItemId(displayItem.getId());
|
||||
map.put(displayItem.getKey(), itemKeys);
|
||||
}
|
||||
|
||||
public List<MetaSensorItemKey> readAllMetaSensorItemKeyByMetaSensorDisplayItemID(Long metaSensorDisplayItemID)
|
||||
throws OverflowException {
|
||||
return this.sensorItemDependencyDAO.findAllMetaSensorItemKeyByMetaSensorDisplayItemId(metaSensorDisplayItemID);
|
||||
}
|
||||
|
||||
public Map<String, List<MetaSensorItemKey>> readAllMapByMetaSensorDisplayItems(
|
||||
List<MetaSensorDisplayItem> metaSensorDisplayItems) throws OverflowException {
|
||||
|
||||
Map<String, List<MetaSensorItemKey>> map = new HashMap<String, List<MetaSensorItemKey>>();
|
||||
|
||||
for (MetaSensorDisplayItem displayItem : metaSensorDisplayItems) {
|
||||
List<MetaSensorItemKey> itemKeys = this.sensorItemDependencyDAO
|
||||
.findAllMetaSensorItemKeyByMetaSensorDisplayItemId(displayItem.getId());
|
||||
map.put(displayItem.getKey(), itemKeys);
|
||||
}
|
||||
|
||||
return map;
|
||||
}
|
||||
return map;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,41 +22,41 @@ import java.util.List;
|
|||
@Service("SensorItemService")
|
||||
public class CentralSensorItemService implements SensorItemService {
|
||||
|
||||
@Autowired
|
||||
private SensorItemDAO sensorItemDAO;
|
||||
@Autowired
|
||||
private SensorDAO sensorDAO;
|
||||
@Autowired
|
||||
private SensorItemDAO sensorItemDAO;
|
||||
@Autowired
|
||||
private SensorDAO sensorDAO;
|
||||
|
||||
@Transactional
|
||||
public SensorItem regist(SensorItem sensorItem) throws OverflowException {
|
||||
Sensor s = sensorDAO.findById(sensorItem.getSensor().getId()).get();
|
||||
s.setItemCount((short) (s.getItemCount() + 1));
|
||||
this.sensorDAO.save(s);
|
||||
return this.sensorItemDAO.save(sensorItem);
|
||||
}
|
||||
@Transactional
|
||||
public SensorItem regist(SensorItem sensorItem) throws OverflowException {
|
||||
Sensor s = sensorDAO.findById(sensorItem.getSensor().getId()).get();
|
||||
s.setItemCount((short) (s.getItemCount() + 1));
|
||||
this.sensorDAO.save(s);
|
||||
return this.sensorItemDAO.save(sensorItem);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public boolean registAll(List<SensorItem> sensorItemList) throws OverflowException {
|
||||
Sensor s = sensorDAO.findById(sensorItemList.get(0).getSensor().getId()).get();
|
||||
s.setItemCount((short) sensorItemList.size());
|
||||
this.sensorDAO.save(s);
|
||||
this.sensorItemDAO.saveAll(sensorItemList);
|
||||
return true;
|
||||
}
|
||||
@Transactional
|
||||
public boolean registAll(List<SensorItem> sensorItemList) throws OverflowException {
|
||||
Sensor s = sensorDAO.findById(sensorItemList.get(0).getSensor().getId()).get();
|
||||
s.setItemCount((short) sensorItemList.size());
|
||||
this.sensorDAO.save(s);
|
||||
this.sensorItemDAO.saveAll(sensorItemList);
|
||||
return true;
|
||||
}
|
||||
|
||||
public SensorItem read(String id) throws OverflowException {
|
||||
return this.sensorItemDAO.findById(Long.valueOf(id)).get();
|
||||
}
|
||||
public SensorItem read(String id) throws OverflowException {
|
||||
return this.sensorItemDAO.findById(Long.valueOf(id)).get();
|
||||
}
|
||||
|
||||
public Page<SensorItem> readAllBySensorID(Long sensorID, PageParams pageParams) throws OverflowException {
|
||||
return this.sensorItemDAO.findAllBySensorId(sensorID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
public Page<SensorItem> readAllBySensorID(Long sensorID, PageParams pageParams) throws OverflowException {
|
||||
return this.sensorItemDAO.findAllBySensorId(sensorID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void remove(SensorItem sensorItem) throws OverflowException {
|
||||
Sensor s = sensorItem.getSensor();
|
||||
s.setItemCount((short) (s.getItemCount() - 1));
|
||||
this.sensorDAO.save(s);
|
||||
this.sensorItemDAO.delete(sensorItem);
|
||||
}
|
||||
@Transactional
|
||||
public void remove(SensorItem sensorItem) throws OverflowException {
|
||||
Sensor s = sensorItem.getSensor();
|
||||
s.setItemCount((short) (s.getItemCount() - 1));
|
||||
this.sensorDAO.save(s);
|
||||
this.sensorItemDAO.delete(sensorItem);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,8 +5,6 @@ import com.loafle.overflow.central.module.generator.service.SensorConfigGenerato
|
|||
import com.loafle.overflow.central.module.sensor.dao.SensorDAO;
|
||||
import com.loafle.overflow.core.exception.OverflowException;
|
||||
import com.loafle.overflow.core.model.PageParams;
|
||||
import com.loafle.overflow.model.domain.Domain;
|
||||
import com.loafle.overflow.model.infra.Infra;
|
||||
import com.loafle.overflow.model.meta.MetaSensorStatus;
|
||||
import com.loafle.overflow.model.probe.Probe;
|
||||
import com.loafle.overflow.model.sensor.Sensor;
|
||||
|
@ -31,109 +29,112 @@ import java.util.List;
|
|||
@Service("SensorService")
|
||||
public class CentralSensorService implements SensorService {
|
||||
|
||||
@Autowired
|
||||
SensorDAO sensorDAO;
|
||||
@Autowired
|
||||
SensorDAO sensorDAO;
|
||||
|
||||
@Autowired
|
||||
private ProbeService probeService;
|
||||
@Autowired
|
||||
private ProbeService probeService;
|
||||
|
||||
@Autowired
|
||||
private InfraService infraService;
|
||||
@Autowired
|
||||
private InfraService infraService;
|
||||
|
||||
@Autowired
|
||||
private SensorItemService sensorItemService;
|
||||
@Autowired
|
||||
private SensorItemService sensorItemService;
|
||||
|
||||
@Autowired
|
||||
private SensorConfigGenerator sensorConfigGenerator;
|
||||
@Autowired
|
||||
private SensorConfigGenerator sensorConfigGenerator;
|
||||
|
||||
@Autowired
|
||||
private TargetService targetService;
|
||||
@Autowired
|
||||
private TargetService targetService;
|
||||
|
||||
@Transactional
|
||||
public Sensor regist(Sensor sensor) throws OverflowException {
|
||||
this.targetService.increaseSensorCount(sensor.getTarget());
|
||||
return this.sensorDAO.save(sensor);
|
||||
@Transactional
|
||||
public Sensor regist(Sensor sensor) throws OverflowException {
|
||||
this.targetService.increaseSensorCount(sensor.getTarget());
|
||||
return this.sensorDAO.save(sensor);
|
||||
}
|
||||
|
||||
public Page<Sensor> readAllByDomainID(Long domainID, PageParams pageParams) throws OverflowException {
|
||||
|
||||
List<Probe> probeList = this.probeService.readAllByDomainID(domainID);
|
||||
|
||||
if (probeList == null || probeList.size() <= 0) {
|
||||
throw new OverflowException("", new Throwable());
|
||||
}
|
||||
|
||||
public Page<Sensor> readAllByDomainID(Long domainID, PageParams pageParams) throws OverflowException {
|
||||
List<Target> targetList = this.infraService.readAllTargetByProbes(probeList);
|
||||
|
||||
List<Probe> probeList = this.probeService.readAllByDomainID(domainID);
|
||||
|
||||
if (probeList == null || probeList.size() <= 0) {
|
||||
throw new OverflowException("", new Throwable());
|
||||
}
|
||||
|
||||
List<Target> targetList = this.infraService.readAllTargetByProbes(probeList);
|
||||
|
||||
if (targetList == null || targetList.size() <= 0) {
|
||||
throw new OverflowException("", new Throwable());
|
||||
}
|
||||
|
||||
return this.sensorDAO.findAllByTargetIn(targetList, PageUtil.getPageRequest(pageParams));
|
||||
if (targetList == null || targetList.size() <= 0) {
|
||||
throw new OverflowException("", new Throwable());
|
||||
}
|
||||
|
||||
public Page<Sensor> readAllByInfraID(Long infraID, PageParams pageParams) throws OverflowException {
|
||||
// Infra dbInfra = this.infraService.read(infraID);
|
||||
// if (dbInfra == null) {
|
||||
// throw new OverflowException("", new Throwable());
|
||||
// }
|
||||
// return this.sensorDAO.findAllByTargetId(dbInfra.getTarget().getId(), PageUtil.getPageRequest(pageParams));
|
||||
return null;
|
||||
return this.sensorDAO.findAllByTargetIn(targetList, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Page<Sensor> readAllByInfraID(Long infraID, PageParams pageParams) throws OverflowException {
|
||||
// Infra dbInfra = this.infraService.read(infraID);
|
||||
// if (dbInfra == null) {
|
||||
// throw new OverflowException("", new Throwable());
|
||||
// }
|
||||
// return this.sensorDAO.findAllByTargetId(dbInfra.getTarget().getId(),
|
||||
// PageUtil.getPageRequest(pageParams));
|
||||
return null;
|
||||
}
|
||||
|
||||
public Page<Sensor> readAllByTargetID(Long targetID, PageParams pageParams) throws OverflowException {
|
||||
return this.sensorDAO.findAllByTargetId(targetID, PageUtil.getPageRequest(pageParams));
|
||||
}
|
||||
|
||||
public Sensor read(Long id) throws OverflowException {
|
||||
return this.sensorDAO.findById(Long.valueOf(id)).get();
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void remove(Long sensorID) throws OverflowException {
|
||||
Sensor sensor = this.sensorDAO.findById(sensorID).get();
|
||||
this.targetService.decreaseSensorCount(sensor.getTarget());
|
||||
this.sensorDAO.delete(sensor);
|
||||
}
|
||||
|
||||
public Sensor start(Long sensorID) throws OverflowException {
|
||||
Sensor sensor = this.sensorDAO.findById(sensorID).get();
|
||||
MetaSensorStatus status = new MetaSensorStatus((short) 1);
|
||||
sensor.setMetaSensorStatus(status);
|
||||
return this.sensorDAO.save(sensor);
|
||||
}
|
||||
|
||||
public Sensor stop(Long sensorID) throws OverflowException {
|
||||
Sensor sensor = this.sensorDAO.findById(sensorID).get();
|
||||
MetaSensorStatus status = new MetaSensorStatus((short) 2);
|
||||
sensor.setMetaSensorStatus(status);
|
||||
return this.sensorDAO.save(sensor);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Sensor registSensorConfig(Sensor sensor, List<SensorItem> sensorItemList, String etcJson)
|
||||
throws OverflowException {
|
||||
|
||||
this.targetService.increaseSensorCount(sensor.getTarget());
|
||||
this.sensorDAO.save(sensor);
|
||||
|
||||
for (SensorItem sensorItem : sensorItemList) {
|
||||
sensorItem.setSensor(sensor);
|
||||
}
|
||||
|
||||
public Page<Sensor> readAllByTargetID(Long targetID, PageParams pageParams) throws OverflowException {
|
||||
return this.sensorDAO.findAllByTargetId(targetID, PageUtil.getPageRequest(pageParams));
|
||||
this.sensorItemService.registAll(sensorItemList);
|
||||
|
||||
return sensor;
|
||||
}
|
||||
|
||||
public String generateSensorConfig(Sensor sensor) throws OverflowException {
|
||||
try {
|
||||
return this.sensorConfigGenerator.generate(sensor);
|
||||
} catch (Exception e) {
|
||||
throw new OverflowException("", new Throwable());
|
||||
}
|
||||
}
|
||||
|
||||
public Sensor read(Long id) throws OverflowException {
|
||||
return this.sensorDAO.findById(Long.valueOf(id)).get();
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void remove(Long sensorID) throws OverflowException {
|
||||
Sensor sensor = this.sensorDAO.findById(sensorID).get();
|
||||
this.targetService.decreaseSensorCount(sensor.getTarget());
|
||||
this.sensorDAO.delete(sensor);
|
||||
}
|
||||
|
||||
public Sensor start(Long sensorID) throws OverflowException {
|
||||
Sensor sensor = this.sensorDAO.findById(sensorID).get();
|
||||
MetaSensorStatus status = new MetaSensorStatus((short) 1);
|
||||
sensor.setMetaSensorStatus(status);
|
||||
return this.sensorDAO.save(sensor);
|
||||
}
|
||||
|
||||
public Sensor stop(Long sensorID) throws OverflowException {
|
||||
Sensor sensor = this.sensorDAO.findById(sensorID).get();
|
||||
MetaSensorStatus status = new MetaSensorStatus((short) 2);
|
||||
sensor.setMetaSensorStatus(status);
|
||||
return this.sensorDAO.save(sensor);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Sensor registSensorConfig(Sensor sensor, List<SensorItem> sensorItemList, String etcJson) throws OverflowException {
|
||||
|
||||
this.targetService.increaseSensorCount(sensor.getTarget());
|
||||
this.sensorDAO.save(sensor);
|
||||
|
||||
for (SensorItem sensorItem : sensorItemList) {
|
||||
sensorItem.setSensor(sensor);
|
||||
}
|
||||
|
||||
this.sensorItemService.registAll(sensorItemList);
|
||||
|
||||
return sensor;
|
||||
}
|
||||
|
||||
public String generateSensorConfig(Sensor sensor) throws OverflowException {
|
||||
try {
|
||||
return this.sensorConfigGenerator.generate(sensor);
|
||||
} catch (Exception e) {
|
||||
throw new OverflowException("", new Throwable());
|
||||
}
|
||||
}
|
||||
|
||||
// public List<Sensor> readAllByTarget(Target target, PageParams pageParams) {
|
||||
// return this.sensorDAO.findAllByTarget(target, PageUtil.getPageRequest(pageParams));
|
||||
// }
|
||||
// public List<Sensor> readAllByTarget(Target target, PageParams pageParams) {
|
||||
// return this.sensorDAO.findAllByTarget(target,
|
||||
// PageUtil.getPageRequest(pageParams));
|
||||
// }
|
||||
}
|
||||
|
|
|
@ -13,8 +13,9 @@ import org.springframework.stereotype.Repository;
|
|||
public interface TargetDAO extends JpaRepository<Target, Long> {
|
||||
Target findByInfraId(Long infraId);
|
||||
|
||||
// @Query("select t.infra from target t where t.infra.probe.id = :probeId")
|
||||
// Page<Target> findForProbeId(@Param("probeId") Long probeId, Pageable pageRequest);
|
||||
// @Query("select t.infra from target t where t.infra.probe.id = :probeId")
|
||||
// Page<Target> findForProbeId(@Param("probeId") Long probeId, Pageable
|
||||
// pageRequest);
|
||||
|
||||
Page<Target> findAllByInfraProbeId(Long probeId, Pageable pageRequest);
|
||||
}
|
||||
|
|
|
@ -19,208 +19,219 @@
|
|||
// import java.util.List;
|
||||
|
||||
// /**
|
||||
// * Created by snoop on 17. 6. 28.
|
||||
// */
|
||||
// * Created by snoop on 17. 6. 28.
|
||||
// */
|
||||
// @Service("TargetDiscoveryService")
|
||||
// public class CentralTargetDiscoveryService implements TargetDiscoveryService {
|
||||
// public class CentralTargetDiscoveryService implements TargetDiscoveryService
|
||||
// {
|
||||
|
||||
// @Autowired
|
||||
// private TargetService targetService;
|
||||
// @Autowired
|
||||
// private TargetService targetService;
|
||||
|
||||
// @Autowired
|
||||
// private CentralInfraMachineService infraMachineService;
|
||||
// @Autowired
|
||||
// private CentralInfraMachineService infraMachineService;
|
||||
|
||||
// @Autowired
|
||||
// private CentralInfraOSService infraOSService;
|
||||
// @Autowired
|
||||
// private CentralInfraOSService infraOSService;
|
||||
|
||||
// @Autowired
|
||||
// private CentralInfraHostService infraHostService;
|
||||
// @Autowired
|
||||
// private CentralInfraHostService infraHostService;
|
||||
|
||||
// // @Autowired
|
||||
// // private CentralInfraService infraService;
|
||||
// // @Autowired
|
||||
// // private CentralInfraService infraService;
|
||||
|
||||
// @Autowired
|
||||
// private CentralInfraOSPortService infraOSPortService;
|
||||
// @Autowired
|
||||
// private CentralInfraOSPortService infraOSPortService;
|
||||
|
||||
// @Autowired
|
||||
// private CentralInfraServiceService infraServiceService;
|
||||
// @Autowired
|
||||
// private CentralInfraServiceService infraServiceService;
|
||||
|
||||
// @Transactional
|
||||
// public boolean saveAllTarget(List<Host> hosts, Probe probe) throws OverflowException {
|
||||
// @Transactional
|
||||
// public boolean saveAllTarget(List<Host> hosts, Probe probe) throws
|
||||
// OverflowException {
|
||||
|
||||
// InfraHost infraHost = null;
|
||||
// InfraHost infraHost = null;
|
||||
|
||||
// for (Host host : hosts) {
|
||||
// for (Host host : hosts) {
|
||||
|
||||
// infraHost = this.createAndReadHost(host, probe);
|
||||
// infraHost = this.createAndReadHost(host, probe);
|
||||
|
||||
// this.createPort(infraHost, host, probe);
|
||||
|
||||
// }
|
||||
// return true;
|
||||
// }
|
||||
|
||||
// private void createService(InfraHost infraHost, Port port, Probe probe) throws OverflowException {
|
||||
|
||||
// MetaInfraType typeService = new MetaInfraType(7);
|
||||
|
||||
// String portType = "UDP";
|
||||
|
||||
// if (port.getPortType() == PortType.TLS || port.getPortType() == PortType.TCP || port.getPortType() == null) {
|
||||
// portType = "TCP";
|
||||
// }
|
||||
|
||||
// if (port.getServiceList() == null) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// // for(String key : port.getServices().keySet()) {
|
||||
// for (com.loafle.overflow.model.discovery.Service service : port.getServiceList()) {
|
||||
|
||||
// // com.loafle.overflow.module.discovery.model.Service service =
|
||||
// // port.getServices().get(key);
|
||||
|
||||
// InfraService dbInfraService = this.infraServiceService
|
||||
// .readByInfraHostIDAndPortAndPortType(infraHost.getId(), port.getPortNumber(), portType);
|
||||
|
||||
// if (dbInfraService != null) {
|
||||
// if (service.isTarget() && dbInfraService.getTarget() == null) {
|
||||
// Target targetService = new Target();
|
||||
// targetService.setDisplayName(service.getServiceName());
|
||||
// this.targetService.regist(targetService, probe);
|
||||
// dbInfraService.setTarget(targetService);
|
||||
// this.infraServiceService.regist(dbInfraService);
|
||||
// }
|
||||
// continue;
|
||||
// }
|
||||
|
||||
// InfraService infraService = new InfraService();
|
||||
// infraService.setInfraHost(infraHost);
|
||||
// infraService.setPort(port.getPortNumber());
|
||||
// infraService.setPortType(portType);
|
||||
// infraService.setMetaInfraType(typeService);
|
||||
// infraService.setProbe(probe);
|
||||
|
||||
// if (port.getPortType() == PortType.TLS) {
|
||||
// infraService.setTlsType(true);
|
||||
// }
|
||||
// infraService.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByService(service.getServiceName()));
|
||||
|
||||
// if (service.isTarget()) {
|
||||
// Target targetService = new Target();
|
||||
// targetService.setDisplayName(service.getServiceName());
|
||||
// this.targetService.regist(targetService, probe);
|
||||
// infraService.setTarget(targetService);
|
||||
// }
|
||||
|
||||
// this.infraServiceService.regist(infraService);
|
||||
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
// private void createPort(InfraHost infraHost, Host host, Probe probe) throws OverflowException {
|
||||
|
||||
// // if(host.getPorts() == null) {
|
||||
// // return;
|
||||
// // }
|
||||
|
||||
// String portType = "UDP";
|
||||
|
||||
// MetaInfraType typePort = new MetaInfraType(6);
|
||||
|
||||
// InfraOS infraOS = infraHost.getInfraOS();
|
||||
|
||||
// // for( String key: host.getPorts().keySet()) {
|
||||
|
||||
// if (host.getPortList() == null) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// for (Port port : host.getPortList()) {
|
||||
// // Port port = host.getPorts().get(key);
|
||||
|
||||
// if (port.getPortType() == PortType.TLS || port.getPortType() == PortType.TCP) {
|
||||
// portType = "TCP";
|
||||
// }
|
||||
|
||||
// InfraOSPort dbInfraOSPort = this.infraOSPortService.readByInfraOSIDAndPortAndPortType(infraOS.getId(), port.getPortNumber(),
|
||||
// portType);
|
||||
// if (dbInfraOSPort == null) {
|
||||
// InfraOSPort infraOSPort = new InfraOSPort();
|
||||
// infraOSPort.setInfraOS(infraOS);
|
||||
// infraOSPort.setPort(port.getPortNumber());
|
||||
// infraOSPort.setPortType(portType);
|
||||
// infraOSPort.setProbe(probe);
|
||||
// infraOSPort.setMetaInfraType(typePort);
|
||||
|
||||
// if (port.getPortType() == PortType.TLS) {
|
||||
// infraOSPort.setTlsType(true);
|
||||
// }
|
||||
// infraOSPort.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByPort(port.getPortNumber()));
|
||||
// this.infraOSPortService.regist(infraOSPort);
|
||||
// }
|
||||
|
||||
// this.createService(infraHost, port, probe);
|
||||
// }
|
||||
// }
|
||||
|
||||
// private InfraHost createAndReadHost(Host host, Probe probe) throws OverflowException {
|
||||
|
||||
// InfraHost infraHost = this.infraHostService.readByIp(host.getIpv4());
|
||||
// if (infraHost != null) {
|
||||
|
||||
// if (host.isTarget() && infraHost.getTarget() == null) {
|
||||
// Target target = new Target();
|
||||
// target.setDisplayName(host.getIpv4() + "-Host");
|
||||
|
||||
// this.targetService.regist(target, probe);
|
||||
// infraHost.setTarget(target);
|
||||
// this.infraHostService.regist(infraHost);
|
||||
// }
|
||||
|
||||
// return infraHost;
|
||||
// } else {
|
||||
// MetaInfraType typeMachine = new MetaInfraType(1); // 1 = Machine;
|
||||
|
||||
// MetaInfraType typeOS = new MetaInfraType(3);// 3 = Os
|
||||
|
||||
// MetaInfraType typeHost = new MetaInfraType(2); // 2 = Host
|
||||
|
||||
// InfraMachine infraMachine = new InfraMachine();
|
||||
// infraMachine.setProbe(probe);
|
||||
// infraMachine.setMetaInfraType(typeMachine);
|
||||
// infraMachine.setMeta(host.getIpv4() + "-MACHINE");
|
||||
// this.infraMachineService.regist(infraMachine);
|
||||
|
||||
// InfraOS infraOS = new InfraOS();
|
||||
// infraOS.setInfraMachine(infraMachine);
|
||||
// infraOS.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByOS(host.getOs()));
|
||||
// infraOS.setMetaInfraType(typeOS);
|
||||
// infraOS.setProbe(probe);
|
||||
// infraOS.setMeta(host.getIpv4() + "-OS");
|
||||
// this.infraOSService.regist(infraOS);
|
||||
|
||||
// InfraHost newInfraHost = new InfraHost();
|
||||
// newInfraHost.setIpv4(host.getIpv4());
|
||||
// newInfraHost.setMac(host.getMac());
|
||||
// newInfraHost.setInfraOS(infraOS);
|
||||
// newInfraHost.setMetaInfraType(typeHost);
|
||||
// newInfraHost.setProbe(probe);
|
||||
|
||||
// if (host.isTarget()) {
|
||||
// Target target = new Target();
|
||||
// target.setDisplayName(host.getIpv4() + "-Host");
|
||||
|
||||
// this.targetService.regist(target, probe);
|
||||
// newInfraHost.setTarget(target);
|
||||
// }
|
||||
|
||||
// this.infraHostService.regist(newInfraHost);
|
||||
// infraHost = newInfraHost;
|
||||
// }
|
||||
|
||||
// return infraHost;
|
||||
// }
|
||||
// this.createPort(infraHost, host, probe);
|
||||
|
||||
// }
|
||||
// return true;
|
||||
// }
|
||||
|
||||
// private void createService(InfraHost infraHost, Port port, Probe probe)
|
||||
// throws OverflowException {
|
||||
|
||||
// MetaInfraType typeService = new MetaInfraType(7);
|
||||
|
||||
// String portType = "UDP";
|
||||
|
||||
// if (port.getPortType() == PortType.TLS || port.getPortType() == PortType.TCP
|
||||
// || port.getPortType() == null) {
|
||||
// portType = "TCP";
|
||||
// }
|
||||
|
||||
// if (port.getServiceList() == null) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// // for(String key : port.getServices().keySet()) {
|
||||
// for (com.loafle.overflow.model.discovery.Service service :
|
||||
// port.getServiceList()) {
|
||||
|
||||
// // com.loafle.overflow.module.discovery.model.Service service =
|
||||
// // port.getServices().get(key);
|
||||
|
||||
// InfraService dbInfraService = this.infraServiceService
|
||||
// .readByInfraHostIDAndPortAndPortType(infraHost.getId(), port.getPortNumber(),
|
||||
// portType);
|
||||
|
||||
// if (dbInfraService != null) {
|
||||
// if (service.isTarget() && dbInfraService.getTarget() == null) {
|
||||
// Target targetService = new Target();
|
||||
// targetService.setDisplayName(service.getServiceName());
|
||||
// this.targetService.regist(targetService, probe);
|
||||
// dbInfraService.setTarget(targetService);
|
||||
// this.infraServiceService.regist(dbInfraService);
|
||||
// }
|
||||
// continue;
|
||||
// }
|
||||
|
||||
// InfraService infraService = new InfraService();
|
||||
// infraService.setInfraHost(infraHost);
|
||||
// infraService.setPort(port.getPortNumber());
|
||||
// infraService.setPortType(portType);
|
||||
// infraService.setMetaInfraType(typeService);
|
||||
// infraService.setProbe(probe);
|
||||
|
||||
// if (port.getPortType() == PortType.TLS) {
|
||||
// infraService.setTlsType(true);
|
||||
// }
|
||||
// infraService.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByService(service.getServiceName()));
|
||||
|
||||
// if (service.isTarget()) {
|
||||
// Target targetService = new Target();
|
||||
// targetService.setDisplayName(service.getServiceName());
|
||||
// this.targetService.regist(targetService, probe);
|
||||
// infraService.setTarget(targetService);
|
||||
// }
|
||||
|
||||
// this.infraServiceService.regist(infraService);
|
||||
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
// private void createPort(InfraHost infraHost, Host host, Probe probe) throws
|
||||
// OverflowException {
|
||||
|
||||
// // if(host.getPorts() == null) {
|
||||
// // return;
|
||||
// // }
|
||||
|
||||
// String portType = "UDP";
|
||||
|
||||
// MetaInfraType typePort = new MetaInfraType(6);
|
||||
|
||||
// InfraOS infraOS = infraHost.getInfraOS();
|
||||
|
||||
// // for( String key: host.getPorts().keySet()) {
|
||||
|
||||
// if (host.getPortList() == null) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// for (Port port : host.getPortList()) {
|
||||
// // Port port = host.getPorts().get(key);
|
||||
|
||||
// if (port.getPortType() == PortType.TLS || port.getPortType() == PortType.TCP)
|
||||
// {
|
||||
// portType = "TCP";
|
||||
// }
|
||||
|
||||
// InfraOSPort dbInfraOSPort =
|
||||
// this.infraOSPortService.readByInfraOSIDAndPortAndPortType(infraOS.getId(),
|
||||
// port.getPortNumber(),
|
||||
// portType);
|
||||
// if (dbInfraOSPort == null) {
|
||||
// InfraOSPort infraOSPort = new InfraOSPort();
|
||||
// infraOSPort.setInfraOS(infraOS);
|
||||
// infraOSPort.setPort(port.getPortNumber());
|
||||
// infraOSPort.setPortType(portType);
|
||||
// infraOSPort.setProbe(probe);
|
||||
// infraOSPort.setMetaInfraType(typePort);
|
||||
|
||||
// if (port.getPortType() == PortType.TLS) {
|
||||
// infraOSPort.setTlsType(true);
|
||||
// }
|
||||
// infraOSPort.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByPort(port.getPortNumber()));
|
||||
// this.infraOSPortService.regist(infraOSPort);
|
||||
// }
|
||||
|
||||
// this.createService(infraHost, port, probe);
|
||||
// }
|
||||
// }
|
||||
|
||||
// private InfraHost createAndReadHost(Host host, Probe probe) throws
|
||||
// OverflowException {
|
||||
|
||||
// InfraHost infraHost = this.infraHostService.readByIp(host.getIpv4());
|
||||
// if (infraHost != null) {
|
||||
|
||||
// if (host.isTarget() && infraHost.getTarget() == null) {
|
||||
// Target target = new Target();
|
||||
// target.setDisplayName(host.getIpv4() + "-Host");
|
||||
|
||||
// this.targetService.regist(target, probe);
|
||||
// infraHost.setTarget(target);
|
||||
// this.infraHostService.regist(infraHost);
|
||||
// }
|
||||
|
||||
// return infraHost;
|
||||
// } else {
|
||||
// MetaInfraType typeMachine = new MetaInfraType(1); // 1 = Machine;
|
||||
|
||||
// MetaInfraType typeOS = new MetaInfraType(3);// 3 = Os
|
||||
|
||||
// MetaInfraType typeHost = new MetaInfraType(2); // 2 = Host
|
||||
|
||||
// InfraMachine infraMachine = new InfraMachine();
|
||||
// infraMachine.setProbe(probe);
|
||||
// infraMachine.setMetaInfraType(typeMachine);
|
||||
// infraMachine.setMeta(host.getIpv4() + "-MACHINE");
|
||||
// this.infraMachineService.regist(infraMachine);
|
||||
|
||||
// InfraOS infraOS = new InfraOS();
|
||||
// infraOS.setInfraMachine(infraMachine);
|
||||
// infraOS.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByOS(host.getOs()));
|
||||
// infraOS.setMetaInfraType(typeOS);
|
||||
// infraOS.setProbe(probe);
|
||||
// infraOS.setMeta(host.getIpv4() + "-OS");
|
||||
// this.infraOSService.regist(infraOS);
|
||||
|
||||
// InfraHost newInfraHost = new InfraHost();
|
||||
// newInfraHost.setIpv4(host.getIpv4());
|
||||
// newInfraHost.setMac(host.getMac());
|
||||
// newInfraHost.setInfraOS(infraOS);
|
||||
// newInfraHost.setMetaInfraType(typeHost);
|
||||
// newInfraHost.setProbe(probe);
|
||||
|
||||
// if (host.isTarget()) {
|
||||
// Target target = new Target();
|
||||
// target.setDisplayName(host.getIpv4() + "-Host");
|
||||
|
||||
// this.targetService.regist(target, probe);
|
||||
// newInfraHost.setTarget(target);
|
||||
// }
|
||||
|
||||
// this.infraHostService.regist(newInfraHost);
|
||||
// infraHost = newInfraHost;
|
||||
// }
|
||||
|
||||
// return infraHost;
|
||||
// }
|
||||
|
||||
// }
|
||||
|
|
|
@ -31,148 +31,150 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
@org.springframework.stereotype.Service("TargetService")
|
||||
public class CentralTargetService implements TargetService {
|
||||
|
||||
@Autowired
|
||||
private TargetDAO targetDAO;
|
||||
@Autowired
|
||||
private CentralProbeService probeService;
|
||||
@Autowired
|
||||
private CentralInfraHostService infraHostService;
|
||||
@Autowired
|
||||
private CentralInfraServiceService infraServiceService;
|
||||
@Autowired
|
||||
private TargetDAO targetDAO;
|
||||
@Autowired
|
||||
private CentralProbeService probeService;
|
||||
@Autowired
|
||||
private CentralInfraHostService infraHostService;
|
||||
@Autowired
|
||||
private CentralInfraServiceService infraServiceService;
|
||||
|
||||
@Transactional
|
||||
public Target regist(Target target, Probe probe) throws OverflowException {
|
||||
this.probeService.increaseTargetCount(probe);
|
||||
return this.targetDAO.save(target);
|
||||
}
|
||||
@Transactional
|
||||
public Target regist(Target target, Probe probe) throws OverflowException {
|
||||
this.probeService.increaseTargetCount(probe);
|
||||
return this.targetDAO.save(target);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void remove(Target target, Probe probe) throws OverflowException {
|
||||
this.probeService.decreaseTargetCount(probe);
|
||||
this.targetDAO.delete(target);
|
||||
}
|
||||
@Transactional
|
||||
public void remove(Target target, Probe probe) throws OverflowException {
|
||||
this.probeService.decreaseTargetCount(probe);
|
||||
this.targetDAO.delete(target);
|
||||
}
|
||||
|
||||
public Target read(String id) throws OverflowException {
|
||||
return this.targetDAO.findById(Long.valueOf(id)).get();
|
||||
}
|
||||
public Target read(String id) throws OverflowException {
|
||||
return this.targetDAO.findById(Long.valueOf(id)).get();
|
||||
}
|
||||
|
||||
public Target modify(Target target) throws OverflowException {
|
||||
return this.targetDAO.save(target);
|
||||
}
|
||||
public Target modify(Target target) throws OverflowException {
|
||||
return this.targetDAO.save(target);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public Target regist(Target target) throws OverflowException {
|
||||
return this.targetDAO.save(target);
|
||||
}
|
||||
@Deprecated
|
||||
public Target regist(Target target) throws OverflowException {
|
||||
return this.targetDAO.save(target);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public void remove(Target target) throws OverflowException {
|
||||
this.targetDAO.delete(target);
|
||||
}
|
||||
@Deprecated
|
||||
public void remove(Target target) throws OverflowException {
|
||||
this.targetDAO.delete(target);
|
||||
}
|
||||
|
||||
public Target increaseSensorCount(Target target) throws OverflowException {
|
||||
Target t = this.targetDAO.findById(target.getId()).get();
|
||||
t.setSensorCount(t.getSensorCount() + 1);
|
||||
return this.targetDAO.save(t);
|
||||
}
|
||||
public Target increaseSensorCount(Target target) throws OverflowException {
|
||||
Target t = this.targetDAO.findById(target.getId()).get();
|
||||
t.setSensorCount(t.getSensorCount() + 1);
|
||||
return this.targetDAO.save(t);
|
||||
}
|
||||
|
||||
public Target decreaseSensorCount(Target target) throws OverflowException {
|
||||
Target t = this.targetDAO.findById(target.getId()).get();
|
||||
int count = t.getSensorCount();
|
||||
if (t.getSensorCount() > 0) {
|
||||
t.setSensorCount(count - 1);
|
||||
}
|
||||
return this.targetDAO.save(t);
|
||||
public Target decreaseSensorCount(Target target) throws OverflowException {
|
||||
Target t = this.targetDAO.findById(target.getId()).get();
|
||||
int count = t.getSensorCount();
|
||||
if (t.getSensorCount() > 0) {
|
||||
t.setSensorCount(count - 1);
|
||||
}
|
||||
return this.targetDAO.save(t);
|
||||
}
|
||||
|
||||
public Target readExistHostTarget(Long probeId, String ip) throws OverflowException {
|
||||
InfraHost infraHost = this.infraHostService.readByProbeIdAndIpv4(probeId, ip);
|
||||
if (null == infraHost)
|
||||
return null;
|
||||
return this.targetDAO.findByInfraId(infraHost.getId());
|
||||
}
|
||||
public Target readExistHostTarget(Long probeId, String ip) throws OverflowException {
|
||||
InfraHost infraHost = this.infraHostService.readByProbeIdAndIpv4(probeId, ip);
|
||||
if (null == infraHost)
|
||||
return null;
|
||||
return this.targetDAO.findByInfraId(infraHost.getId());
|
||||
}
|
||||
|
||||
public Target readExistServiceTarget(Long hostId, int portNumber, String portType) throws OverflowException {
|
||||
InfraService infraService = this.infraServiceService.readByInfraHostIDAndPortAndPortType(hostId, portNumber,
|
||||
portType);
|
||||
if (null == infraService)
|
||||
return null;
|
||||
return this.targetDAO.findByInfraId(infraService.getId());
|
||||
}
|
||||
public Target readExistServiceTarget(Long hostId, int portNumber, String portType) throws OverflowException {
|
||||
InfraService infraService = this.infraServiceService.readByInfraHostIDAndPortAndPortType(hostId, portNumber,
|
||||
portType);
|
||||
if (null == infraService)
|
||||
return null;
|
||||
return this.targetDAO.findByInfraId(infraService.getId());
|
||||
}
|
||||
|
||||
public Page<Target> readAllByProbeID(Long probeID, PageParams pageParams) throws OverflowException {
|
||||
return this.targetDAO.findAllByInfraProbeId(probeID, PageUtil.getPageRequest(pageParams));
|
||||
// return null;
|
||||
}
|
||||
@Transactional
|
||||
public List<Target> registDiscoveredTargets(Long probeId, List<Host> hosts, List<Service> services)
|
||||
throws OverflowException {
|
||||
List<Target> targets = new ArrayList<Target>();
|
||||
targets.addAll(registDiscoveredHostTargets(probeId, hosts));
|
||||
targets.addAll(this.registDiscoveredServiceTargets(probeId, services));
|
||||
return targets;
|
||||
}
|
||||
public Page<Target> readAllByProbeID(Long probeID, PageParams pageParams) throws OverflowException {
|
||||
return this.targetDAO.findAllByInfraProbeId(probeID, PageUtil.getPageRequest(pageParams));
|
||||
// return null;
|
||||
}
|
||||
|
||||
private List<Target> registDiscoveredHostTargets(Long probeId, List<Host> hosts) throws OverflowException {
|
||||
List<Target> targets = new ArrayList<>();
|
||||
if (null == hosts)
|
||||
return targets;
|
||||
for (Host host : hosts) {
|
||||
InfraHost infraHost = this.registInfraHostByDiscoveredHost(host, probeId);
|
||||
Target target = new Target();
|
||||
target.setInfra(infraHost);
|
||||
String displayName = (host.getIpv6() == null || host.getIpv6().trim().isEmpty()) ? host.getIpv6() : host.getIpv4();
|
||||
target.setDisplayName(displayName);
|
||||
targets.add(this.targetDAO.save(target));
|
||||
}
|
||||
return targets;
|
||||
}
|
||||
@Transactional
|
||||
public List<Target> registDiscoveredTargets(Long probeId, List<Host> hosts, List<Service> services)
|
||||
throws OverflowException {
|
||||
List<Target> targets = new ArrayList<Target>();
|
||||
targets.addAll(registDiscoveredHostTargets(probeId, hosts));
|
||||
targets.addAll(this.registDiscoveredServiceTargets(probeId, services));
|
||||
return targets;
|
||||
}
|
||||
|
||||
private List<Target> registDiscoveredServiceTargets(Long probeId, List<Service> services) throws OverflowException {
|
||||
List<Target> targets = new ArrayList<>();
|
||||
if (null == services)
|
||||
return targets;
|
||||
for (Service service : services) {
|
||||
Host host = service.getPort().getHost();
|
||||
InfraHost infraHost = null;
|
||||
InfraHost existInfraHost = this.infraHostService.readByProbeIdAndIpv4(probeId, host.getIpv4());
|
||||
InfraService infraService = null;
|
||||
if (null != existInfraHost) {
|
||||
infraHost = existInfraHost;
|
||||
} else {
|
||||
infraHost = this.registInfraHostByDiscoveredHost(host, probeId);
|
||||
infraService = this.registInfraServiceByDiscoveredService(infraHost, service, probeId);
|
||||
}
|
||||
|
||||
Target target = new Target();
|
||||
target.setInfra(infraService);
|
||||
String displayName = service.getServiceName();
|
||||
target.setDisplayName(displayName);
|
||||
targets.add(this.targetDAO.save(target));
|
||||
}
|
||||
return targets;
|
||||
private List<Target> registDiscoveredHostTargets(Long probeId, List<Host> hosts) throws OverflowException {
|
||||
List<Target> targets = new ArrayList<>();
|
||||
if (null == hosts)
|
||||
return targets;
|
||||
for (Host host : hosts) {
|
||||
InfraHost infraHost = this.registInfraHostByDiscoveredHost(host, probeId);
|
||||
Target target = new Target();
|
||||
target.setInfra(infraHost);
|
||||
String displayName = (host.getIpv6() == null || host.getIpv6().trim().isEmpty()) ? host.getIpv6()
|
||||
: host.getIpv4();
|
||||
target.setDisplayName(displayName);
|
||||
targets.add(this.targetDAO.save(target));
|
||||
}
|
||||
return targets;
|
||||
}
|
||||
|
||||
private InfraHost registInfraHostByDiscoveredHost(Host host, Long probeId) throws OverflowException {
|
||||
InfraHost infraHost = new InfraHost();
|
||||
infraHost.setMetaInfraType(new MetaInfraType(2));
|
||||
infraHost.setProbe(new Probe(probeId));
|
||||
infraHost.setIpv4(host.getIpv4());
|
||||
infraHost.setIpv6(host.getIpv6());
|
||||
infraHost.setMac(host.getMac());
|
||||
return this.infraHostService.regist(infraHost);
|
||||
}
|
||||
private List<Target> registDiscoveredServiceTargets(Long probeId, List<Service> services) throws OverflowException {
|
||||
List<Target> targets = new ArrayList<>();
|
||||
if (null == services)
|
||||
return targets;
|
||||
for (Service service : services) {
|
||||
Host host = service.getPort().getHost();
|
||||
InfraHost infraHost = null;
|
||||
InfraHost existInfraHost = this.infraHostService.readByProbeIdAndIpv4(probeId, host.getIpv4());
|
||||
InfraService infraService = null;
|
||||
if (null != existInfraHost) {
|
||||
infraHost = existInfraHost;
|
||||
} else {
|
||||
infraHost = this.registInfraHostByDiscoveredHost(host, probeId);
|
||||
infraService = this.registInfraServiceByDiscoveredService(infraHost, service, probeId);
|
||||
}
|
||||
|
||||
private InfraService registInfraServiceByDiscoveredService(InfraHost infraHost, Service service, Long probeId)
|
||||
throws OverflowException {
|
||||
InfraService infraService = new InfraService();
|
||||
infraHost.setMetaInfraType(new MetaInfraType(7));
|
||||
infraService.setInfraHost(infraHost);
|
||||
infraService.setPort(service.getPort().getPortNumber());
|
||||
infraService.setPortType(service.getPort().getPortType().toString());
|
||||
infraService.setTlsType(service.getCryptoType() == CryptoType.TLS);
|
||||
infraService.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByService(service.getServiceName()));
|
||||
return this.infraServiceService.regist(infraService);
|
||||
Target target = new Target();
|
||||
target.setInfra(infraService);
|
||||
String displayName = service.getServiceName();
|
||||
target.setDisplayName(displayName);
|
||||
targets.add(this.targetDAO.save(target));
|
||||
}
|
||||
return targets;
|
||||
}
|
||||
|
||||
private InfraHost registInfraHostByDiscoveredHost(Host host, Long probeId) throws OverflowException {
|
||||
InfraHost infraHost = new InfraHost();
|
||||
infraHost.setMetaInfraType(new MetaInfraType(2));
|
||||
infraHost.setProbe(new Probe(probeId));
|
||||
infraHost.setIpv4(host.getIpv4());
|
||||
infraHost.setIpv6(host.getIpv6());
|
||||
infraHost.setMac(host.getMac());
|
||||
return this.infraHostService.regist(infraHost);
|
||||
}
|
||||
|
||||
private InfraService registInfraServiceByDiscoveredService(InfraHost infraHost, Service service, Long probeId)
|
||||
throws OverflowException {
|
||||
InfraService infraService = new InfraService();
|
||||
infraHost.setMetaInfraType(new MetaInfraType(7));
|
||||
infraService.setInfraHost(infraHost);
|
||||
infraService.setPort(service.getPort().getPortNumber());
|
||||
infraService.setPortType(service.getPort().getPortType().toString());
|
||||
infraService.setTlsType(service.getCryptoType() == CryptoType.TLS);
|
||||
infraService.setMetaInfraVendor(MetaInfraVendor.CreateInfraVendorByService(service.getServiceName()));
|
||||
return this.infraServiceService.regist(infraService);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -6,16 +6,16 @@ import io.grpc.*;
|
|||
|
||||
public class ProxyServerInterceptor implements ServerInterceptor {
|
||||
|
||||
@Override
|
||||
public <ReqT, RespT> ServerCall.Listener<ReqT> interceptCall(ServerCall<ReqT, RespT> call, Metadata headers,
|
||||
ServerCallHandler<ReqT, RespT> next) {
|
||||
String clientType = headers.get(SessionMetadata.METADATA_CLIENT_TYPE_KEY);
|
||||
String sessionID = headers.get(SessionMetadata.METADATA_SESSION_ID_KEY);
|
||||
String targetID = headers.get(SessionMetadata.METADATA_TARGET_ID_KEY);
|
||||
@Override
|
||||
public <ReqT, RespT> ServerCall.Listener<ReqT> interceptCall(ServerCall<ReqT, RespT> call, Metadata headers,
|
||||
ServerCallHandler<ReqT, RespT> next) {
|
||||
String clientType = headers.get(SessionMetadata.METADATA_CLIENT_TYPE_KEY);
|
||||
String sessionID = headers.get(SessionMetadata.METADATA_SESSION_ID_KEY);
|
||||
String targetID = headers.get(SessionMetadata.METADATA_TARGET_ID_KEY);
|
||||
|
||||
Context ctx = Context.current().withValues(SessionMetadata.CTX_CLIENT_TYPE_KEY, clientType,
|
||||
SessionMetadata.CTX_SESSION_ID_KEY, sessionID, SessionMetadata.CTX_TARGET_ID_KEY, targetID);
|
||||
Context ctx = Context.current().withValues(SessionMetadata.CTX_CLIENT_TYPE_KEY, clientType,
|
||||
SessionMetadata.CTX_SESSION_ID_KEY, sessionID, SessionMetadata.CTX_TARGET_ID_KEY, targetID);
|
||||
|
||||
return Contexts.interceptCall(ctx, call, headers, next);
|
||||
}
|
||||
return Contexts.interceptCall(ctx, call, headers, next);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,13 +34,13 @@ public class ServiceProxy {
|
|||
ServiceImpl serviceImpl = ctx.getBean(ServiceImpl.class);
|
||||
|
||||
server = NettyServerBuilder.forPort(port)
|
||||
.addService(ServerInterceptors.intercept(serviceImpl, proxyServerInterceptor))
|
||||
.build().start();
|
||||
.addService(ServerInterceptors.intercept(serviceImpl, proxyServerInterceptor)).build().start();
|
||||
logger.info("Server started, listening on " + port);
|
||||
Runtime.getRuntime().addShutdownHook(new Thread() {
|
||||
@Override
|
||||
public void run() {
|
||||
// Use stderr here since the logger may have been reset by its JVM shutdown hook.
|
||||
// Use stderr here since the logger may have been reset by its JVM shutdown
|
||||
// hook.
|
||||
System.err.println("*** shutting down gRPC server since JVM is shutting down");
|
||||
ServiceProxy.this.stop();
|
||||
System.err.println("*** server shut down");
|
||||
|
@ -105,4 +105,3 @@ public class ServiceProxy {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -133,7 +133,7 @@ public class RedisMessagePublisher implements MessagePublisher {
|
|||
results.add(json);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return results;
|
||||
|
|
|
@ -15,19 +15,19 @@ import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
|
|||
@PropertySource({ "classpath:database.properties", "classpath:mail.properties", "classpath:redis.properties",
|
||||
"classpath:cache.properties" })
|
||||
public class AppConfig {
|
||||
// @Bean
|
||||
// public static PropertyPlaceholderConfigurer propertyPlaceholderConfigurer() {
|
||||
// PropertyPlaceholderConfigurer ppc = new PropertyPlaceholderConfigurer();
|
||||
//// ppc.setLocation(new ClassPathResource("database.properties"));
|
||||
// ppc.setLocations(new Resource[] {
|
||||
// new ClassPathResource("database.properties"),
|
||||
// new ClassPathResource("mail.properties"),
|
||||
// new ClassPathResource("redis.properties")
|
||||
// });
|
||||
// ppc.setIgnoreUnresolvablePlaceholders(true);
|
||||
// @Bean
|
||||
// public static PropertyPlaceholderConfigurer propertyPlaceholderConfigurer() {
|
||||
// PropertyPlaceholderConfigurer ppc = new PropertyPlaceholderConfigurer();
|
||||
//// ppc.setLocation(new ClassPathResource("database.properties"));
|
||||
// ppc.setLocations(new Resource[] {
|
||||
// new ClassPathResource("database.properties"),
|
||||
// new ClassPathResource("mail.properties"),
|
||||
// new ClassPathResource("redis.properties")
|
||||
// });
|
||||
// ppc.setIgnoreUnresolvablePlaceholders(true);
|
||||
//
|
||||
// return ppc;
|
||||
// }
|
||||
// return ppc;
|
||||
// }
|
||||
@Bean
|
||||
public PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
|
||||
return new PropertySourcesPlaceholderConfigurer();
|
||||
|
@ -35,10 +35,10 @@ public class AppConfig {
|
|||
|
||||
// @Bean
|
||||
// public Gson gson() {
|
||||
// GsonBuilder builder = new GsonBuilder();
|
||||
// builder.excludeFieldsWithModifiers(Modifier.TRANSIENT, Modifier.PRIVATE);
|
||||
// // builder.excludeFieldsWithoutExposeAnnotation();
|
||||
// return builder.create();
|
||||
// GsonBuilder builder = new GsonBuilder();
|
||||
// builder.excludeFieldsWithModifiers(Modifier.TRANSIENT, Modifier.PRIVATE);
|
||||
// // builder.excludeFieldsWithoutExposeAnnotation();
|
||||
// return builder.create();
|
||||
// }
|
||||
@Bean
|
||||
public ObjectMapper getObjectMapper() {
|
||||
|
|
|
@ -10,17 +10,17 @@ import org.springframework.context.annotation.Configuration;
|
|||
@EnableCaching
|
||||
@Configuration
|
||||
public class CacheConfiguration {
|
||||
@Value("#{'${cache.cache-names}'.split(',')}")
|
||||
private String[] cacheNames;
|
||||
@Value("${cache.caffeine.spec}")
|
||||
private String spec;
|
||||
@Value("#{'${cache.cache-names}'.split(',')}")
|
||||
private String[] cacheNames;
|
||||
@Value("${cache.caffeine.spec}")
|
||||
private String spec;
|
||||
|
||||
@Bean
|
||||
public CacheManager cacheManager() {
|
||||
//A EhCache based Cache manager
|
||||
CaffeineCacheManager cacheManager = new CaffeineCacheManager(cacheNames);
|
||||
cacheManager.setAllowNullValues(false);
|
||||
cacheManager.setCacheSpecification(spec);
|
||||
return cacheManager;
|
||||
}
|
||||
@Bean
|
||||
public CacheManager cacheManager() {
|
||||
// A EhCache based Cache manager
|
||||
CaffeineCacheManager cacheManager = new CaffeineCacheManager(cacheNames);
|
||||
cacheManager.setAllowNullValues(false);
|
||||
cacheManager.setCacheSpecification(spec);
|
||||
return cacheManager;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -21,82 +21,79 @@ import javax.persistence.EntityManager;
|
|||
import javax.sql.DataSource;
|
||||
import java.util.Properties;
|
||||
|
||||
|
||||
/**
|
||||
* Created by root on 17. 6. 13.
|
||||
*/
|
||||
@Configuration
|
||||
@EnableTransactionManagement
|
||||
@EnableJpaRepositories(basePackages = {"com.loafle.overflow"})
|
||||
public class JdbcConfiguration implements TransactionManagementConfigurer {
|
||||
@Value("${datasource.driver-class-name}")
|
||||
private String driver;
|
||||
@Value("${datasource.url}")
|
||||
private String url;
|
||||
@Value("${datasource.username}")
|
||||
private String username;
|
||||
@Value("${datasource.password}")
|
||||
private String password;
|
||||
@Value("${jpa.hibernate.dialect}")
|
||||
private String dialect;
|
||||
@Value("${jpa.hibernate.ddl-auto}")
|
||||
private String hbm2ddlAuto;
|
||||
@EnableJpaRepositories(basePackages = { "com.loafle.overflow" })
|
||||
public class JdbcConfiguration implements TransactionManagementConfigurer {
|
||||
@Value("${datasource.driver-class-name}")
|
||||
private String driver;
|
||||
@Value("${datasource.url}")
|
||||
private String url;
|
||||
@Value("${datasource.username}")
|
||||
private String username;
|
||||
@Value("${datasource.password}")
|
||||
private String password;
|
||||
@Value("${jpa.hibernate.dialect}")
|
||||
private String dialect;
|
||||
@Value("${jpa.hibernate.ddl-auto}")
|
||||
private String hbm2ddlAuto;
|
||||
|
||||
@Bean
|
||||
public DataSource configureDataSource() {
|
||||
DriverManagerDataSource dataSource = new DriverManagerDataSource();
|
||||
dataSource.setDriverClassName(driver);
|
||||
dataSource.setUrl(url);
|
||||
dataSource.setUsername(username);
|
||||
dataSource.setPassword(password);
|
||||
return dataSource;
|
||||
@Bean
|
||||
public DataSource configureDataSource() {
|
||||
DriverManagerDataSource dataSource = new DriverManagerDataSource();
|
||||
dataSource.setDriverClassName(driver);
|
||||
dataSource.setUrl(url);
|
||||
dataSource.setUsername(username);
|
||||
dataSource.setPassword(password);
|
||||
return dataSource;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
|
||||
LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
|
||||
entityManagerFactoryBean.setDataSource(configureDataSource());
|
||||
entityManagerFactoryBean.setPackagesToScan("com.loafle.overflow");
|
||||
entityManagerFactoryBean.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
|
||||
|
||||
Properties jpaProperties = new Properties();
|
||||
jpaProperties.put(Environment.DIALECT, dialect);
|
||||
jpaProperties.put(Environment.HBM2DDL_AUTO, hbm2ddlAuto);
|
||||
jpaProperties.put(Environment.SHOW_SQL, true);
|
||||
|
||||
entityManagerFactoryBean.setJpaProperties(jpaProperties);
|
||||
|
||||
return entityManagerFactoryBean;
|
||||
}
|
||||
|
||||
@Bean
|
||||
@Qualifier(value = "transactionManager")
|
||||
public PlatformTransactionManager annotationDrivenTransactionManager() {
|
||||
return new JpaTransactionManager();
|
||||
}
|
||||
|
||||
@Bean
|
||||
public EntityManager entityManager() {
|
||||
return entityManagerFactory().getObject().createEntityManager();
|
||||
}
|
||||
|
||||
@Bean
|
||||
public DataSourceInitializer dataSourceInitializer(DataSource dataSource) {
|
||||
DataSourceInitializer initializer = new DataSourceInitializer();
|
||||
initializer.setDataSource(dataSource);
|
||||
|
||||
ClassPathResource initSqlResource = new ClassPathResource("/init.sql");
|
||||
if (initSqlResource.exists()) {
|
||||
ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
|
||||
databasePopulator.addScript(initSqlResource);
|
||||
databasePopulator.setIgnoreFailedDrops(true);
|
||||
initializer.setDatabasePopulator(databasePopulator);
|
||||
} else {
|
||||
initializer.setEnabled(false);
|
||||
}
|
||||
|
||||
@Bean
|
||||
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
|
||||
LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
|
||||
entityManagerFactoryBean.setDataSource(configureDataSource());
|
||||
entityManagerFactoryBean.setPackagesToScan("com.loafle.overflow");
|
||||
entityManagerFactoryBean.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
|
||||
|
||||
Properties jpaProperties = new Properties();
|
||||
jpaProperties.put(Environment.DIALECT, dialect);
|
||||
jpaProperties.put(Environment.HBM2DDL_AUTO, hbm2ddlAuto);
|
||||
jpaProperties.put(Environment.SHOW_SQL, true);
|
||||
|
||||
entityManagerFactoryBean.setJpaProperties(jpaProperties);
|
||||
|
||||
return entityManagerFactoryBean;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Bean
|
||||
@Qualifier(value = "transactionManager")
|
||||
public PlatformTransactionManager annotationDrivenTransactionManager() {
|
||||
return new JpaTransactionManager();
|
||||
}
|
||||
|
||||
@Bean
|
||||
public EntityManager entityManager() {
|
||||
return entityManagerFactory().getObject().createEntityManager();
|
||||
}
|
||||
|
||||
@Bean
|
||||
public DataSourceInitializer dataSourceInitializer(DataSource dataSource) {
|
||||
DataSourceInitializer initializer = new DataSourceInitializer();
|
||||
initializer.setDataSource(dataSource);
|
||||
|
||||
ClassPathResource initSqlResource = new ClassPathResource("/init.sql");
|
||||
if (initSqlResource.exists()) {
|
||||
ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
|
||||
databasePopulator.addScript(initSqlResource);
|
||||
databasePopulator.setIgnoreFailedDrops(true);
|
||||
initializer.setDatabasePopulator(databasePopulator);
|
||||
} else {
|
||||
initializer.setEnabled(false);
|
||||
}
|
||||
|
||||
return initializer;
|
||||
}
|
||||
return initializer;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,63 +18,62 @@ import java.util.Properties;
|
|||
@ComponentScan(basePackages = "com.loafle.overflow")
|
||||
public class MailConfiguration {
|
||||
|
||||
@Value("${mail.host}")
|
||||
private String host;
|
||||
@Value("${mail.port}")
|
||||
private int port;
|
||||
@Value("${mail.username}")
|
||||
private String username;
|
||||
@Value("${mail.password}")
|
||||
private String password;
|
||||
@Value("${mail.protocol}")
|
||||
private String protocol;
|
||||
@Value("${mail.host}")
|
||||
private String host;
|
||||
@Value("${mail.port}")
|
||||
private int port;
|
||||
@Value("${mail.username}")
|
||||
private String username;
|
||||
@Value("${mail.password}")
|
||||
private String password;
|
||||
@Value("${mail.protocol}")
|
||||
private String protocol;
|
||||
|
||||
@Bean
|
||||
public JavaMailSenderImpl mailSender() {
|
||||
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
|
||||
@Bean
|
||||
public JavaMailSenderImpl mailSender() {
|
||||
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
|
||||
|
||||
mailSender.setHost(this.host);
|
||||
mailSender.setPort(this.port);
|
||||
mailSender.setUsername(this.username);
|
||||
mailSender.setPassword(this.password);
|
||||
mailSender.setProtocol(this.protocol);
|
||||
mailSender.setHost(this.host);
|
||||
mailSender.setPort(this.port);
|
||||
mailSender.setUsername(this.username);
|
||||
mailSender.setPassword(this.password);
|
||||
mailSender.setProtocol(this.protocol);
|
||||
|
||||
mailSender.setJavaMailProperties(getJavaMailProperties());
|
||||
mailSender.setJavaMailProperties(getJavaMailProperties());
|
||||
|
||||
return mailSender;
|
||||
}
|
||||
return mailSender;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public Properties getJavaMailProperties() {
|
||||
Properties javaMailProperties = new Properties();
|
||||
javaMailProperties.put("mail.smtp.starttls.enable", true);
|
||||
javaMailProperties.put("mail.smtp.auth", true);
|
||||
javaMailProperties.put("mail.transport.protocol", "smtp");
|
||||
javaMailProperties.put("mail.debug", "true");
|
||||
javaMailProperties.put("mail.smtps.ssl.checkserveridentity", true);
|
||||
javaMailProperties.put("mail.smtps.ssl.trust", "*");
|
||||
@Bean
|
||||
public Properties getJavaMailProperties() {
|
||||
Properties javaMailProperties = new Properties();
|
||||
javaMailProperties.put("mail.smtp.starttls.enable", true);
|
||||
javaMailProperties.put("mail.smtp.auth", true);
|
||||
javaMailProperties.put("mail.transport.protocol", "smtp");
|
||||
javaMailProperties.put("mail.debug", "true");
|
||||
javaMailProperties.put("mail.smtps.ssl.checkserveridentity", true);
|
||||
javaMailProperties.put("mail.smtps.ssl.trust", "*");
|
||||
|
||||
return javaMailProperties;
|
||||
}
|
||||
return javaMailProperties;
|
||||
}
|
||||
|
||||
|
||||
@Bean
|
||||
public VelocityEngine getVelocityEngine() throws VelocityException, IOException {
|
||||
Properties properties = new Properties();
|
||||
properties.load(this.getClass().getResourceAsStream("/velocity.properties"));
|
||||
return new VelocityEngine(properties);
|
||||
}
|
||||
@Bean
|
||||
public VelocityEngine getVelocityEngine() throws VelocityException, IOException {
|
||||
Properties properties = new Properties();
|
||||
properties.load(this.getClass().getResourceAsStream("/velocity.properties"));
|
||||
return new VelocityEngine(properties);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//
|
||||
// @Value("${mail.properties.mail.smtp.auth}")
|
||||
// private boolean smtpAuth;
|
||||
// @Value("${mail.properties.mail.smtp.starttls.enable}")
|
||||
// private boolean ttlEnable;
|
||||
// @Value("${mail.transport.protocol}")
|
||||
// private String transProtocol;
|
||||
// @Value("${mail.smtps.ssl.checkserveridentity}")
|
||||
// private boolean checkserver;
|
||||
// @Value("${mail.smtps.ssl.trust}")
|
||||
// private String sslTrust;
|
||||
// @Value("${mail.properties.mail.smtp.auth}")
|
||||
// private boolean smtpAuth;
|
||||
// @Value("${mail.properties.mail.smtp.starttls.enable}")
|
||||
// private boolean ttlEnable;
|
||||
// @Value("${mail.transport.protocol}")
|
||||
// private String transProtocol;
|
||||
// @Value("${mail.smtps.ssl.checkserveridentity}")
|
||||
// private boolean checkserver;
|
||||
// @Value("${mail.smtps.ssl.trust}")
|
||||
// private String sslTrust;
|
||||
|
|
|
@ -20,54 +20,53 @@ import java.util.Map;
|
|||
|
||||
@Configuration
|
||||
public class RedisConfiguration {
|
||||
@Value("${redis.host}")
|
||||
private String host;
|
||||
@Value("${redis.port}")
|
||||
private int port;
|
||||
@Value("#{'${redis.channels}'.split(',')}")
|
||||
private List<String> channels;
|
||||
@Value("${redis.host}")
|
||||
private String host;
|
||||
@Value("${redis.port}")
|
||||
private int port;
|
||||
@Value("#{'${redis.channels}'.split(',')}")
|
||||
private List<String> channels;
|
||||
|
||||
@Bean
|
||||
JedisConnectionFactory jedisConnectionFactory() {
|
||||
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
|
||||
redisStandaloneConfiguration.setHostName(host);
|
||||
redisStandaloneConfiguration.setPort(port);
|
||||
// redisStandaloneConfiguration.setDatabase(0);
|
||||
// redisStandaloneConfiguration.setPassword(RedisPassword.of("password"));
|
||||
@Bean
|
||||
JedisConnectionFactory jedisConnectionFactory() {
|
||||
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
|
||||
redisStandaloneConfiguration.setHostName(host);
|
||||
redisStandaloneConfiguration.setPort(port);
|
||||
// redisStandaloneConfiguration.setDatabase(0);
|
||||
// redisStandaloneConfiguration.setPassword(RedisPassword.of("password"));
|
||||
|
||||
JedisClientConfigurationBuilder jedisClientConfiguration = JedisClientConfiguration.builder();
|
||||
jedisClientConfiguration.connectTimeout(Duration.ofSeconds(60));// 60s connection timeout
|
||||
JedisClientConfigurationBuilder jedisClientConfiguration = JedisClientConfiguration.builder();
|
||||
jedisClientConfiguration.connectTimeout(Duration.ofSeconds(60));// 60s connection timeout
|
||||
|
||||
JedisConnectionFactory jedisConFactory = new JedisConnectionFactory(redisStandaloneConfiguration,
|
||||
jedisClientConfiguration.build());
|
||||
JedisConnectionFactory jedisConFactory = new JedisConnectionFactory(redisStandaloneConfiguration,
|
||||
jedisClientConfiguration.build());
|
||||
|
||||
// JedisConnectionFactory jedisConFactory = new JedisConnectionFactory();
|
||||
// jedisConFactory.setHostName(host);
|
||||
// jedisConFactory.setPort(port);
|
||||
return jedisConFactory;
|
||||
}
|
||||
|
||||
// JedisConnectionFactory jedisConFactory = new JedisConnectionFactory();
|
||||
// jedisConFactory.setHostName(host);
|
||||
// jedisConFactory.setPort(port);
|
||||
return jedisConFactory;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public RedisTemplate<String, Object> redisTemplate() {
|
||||
final RedisTemplate<String, Object> template = new RedisTemplate<String, Object>();
|
||||
template.setConnectionFactory(jedisConnectionFactory());
|
||||
template.setValueSerializer(new GenericToStringSerializer<Object>(Object.class));
|
||||
return template;
|
||||
}
|
||||
|
||||
@Bean
|
||||
MessagePublisher messagePublisher() {
|
||||
return new RedisMessagePublisher(redisTemplate(), topics());
|
||||
}
|
||||
|
||||
@Bean
|
||||
Map<String, ChannelTopic> topics() {
|
||||
Map<String, ChannelTopic> topicMap = new HashMap<>(this.channels.size());
|
||||
for (String channel: this.channels) {
|
||||
topicMap.put(channel, new ChannelTopic(channel));
|
||||
}
|
||||
return topicMap;
|
||||
@Bean
|
||||
public RedisTemplate<String, Object> redisTemplate() {
|
||||
final RedisTemplate<String, Object> template = new RedisTemplate<String, Object>();
|
||||
template.setConnectionFactory(jedisConnectionFactory());
|
||||
template.setValueSerializer(new GenericToStringSerializer<Object>(Object.class));
|
||||
return template;
|
||||
}
|
||||
|
||||
@Bean
|
||||
MessagePublisher messagePublisher() {
|
||||
return new RedisMessagePublisher(redisTemplate(), topics());
|
||||
}
|
||||
|
||||
@Bean
|
||||
Map<String, ChannelTopic> topics() {
|
||||
Map<String, ChannelTopic> topicMap = new HashMap<>(this.channels.size());
|
||||
for (String channel : this.channels) {
|
||||
topicMap.put(channel, new ChannelTopic(channel));
|
||||
}
|
||||
return topicMap;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user