From 0f148e997ec808e01a013baa8ca7b0053a69fe22 Mon Sep 17 00:00:00 2001 From: Rinjae Date: Fri, 5 Sep 2025 18:34:26 +0900 Subject: [PATCH] init --- .gitignore | 235 +++ build.gradle | 149 ++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59821 bytes gradle/wrapper/gradle-wrapper.properties | 6 + gradlew | 234 +++ gradlew.bat | 89 + hibernate.properties | 0 readme.md | 12 + settings.gradle | 5 + .../eactive/eai/agent/command/Command.java | 96 ++ .../eai/agent/command/CommandException.java | 35 + .../eai/agent/command/CommonCommand.java | 63 + .../java/com/eactive/eai/common/EAIKeys.java | 52 + .../java/com/eactive/eai/common/EAITable.java | 82 + .../com/eactive/eai/common/dao/BaseDAO.java | 159 ++ .../eactive/eai/common/dao/DAOException.java | 92 + .../eactive/eai/common/dao/DAOFactory.java | 91 + .../java/com/eactive/eai/common/dao/Keys.java | 41 + .../eai/common/errorcode/ErrorCodeDAO.java | 60 + .../common/errorcode/ErrorCodeHandler.java | 37 + .../common/errorcode/ErrorCodeManager.java | 140 ++ .../eai/common/errorcode/ErrorCodeVO.java | 51 + .../errorcode/mapper/ErrorCodeMapper.java | 23 + .../exception/ExceptionHandleService.java | 100 ++ .../eai/common/exception/ExceptionUtil.java | 128 ++ .../lifecycle/DefaultLifecycleListener.java | 56 + .../eai/common/lifecycle/Lifecycle.java | 109 ++ .../eai/common/lifecycle/LifecycleDAO.java | 49 + .../eai/common/lifecycle/LifecycleEvent.java | 131 ++ .../common/lifecycle/LifecycleException.java | 147 ++ .../common/lifecycle/LifecycleListener.java | 34 + .../common/lifecycle/LifecycleManager.java | 173 ++ .../common/lifecycle/LifecycleSupport.java | 170 ++ .../eai/common/lifecycle/LifecycleVO.java | 41 + .../lifecycle/mapper/LifeCycleMapper.java | 19 + .../com/eactive/eai/common/logger/Keys.java | 73 + .../eactive/eai/common/monitor/MonitorVO.java | 1494 +++++++++++++++++ .../eai/common/monitor/StatMonitorLogVO.java | 168 ++ .../eai/common/monitor/StatMonitorVO.java | 249 +++ .../FileLoggerPropertyChangeListener.java | 35 + .../eai/common/property/PropGroupVO.java | 118 ++ .../eai/common/property/PropManager.java | 197 +++ .../eai/common/property/PropertyDAO.java | 68 + .../common/property/PropertyLoginKeys.java | 57 + .../RmsPropPropertyChangeListener.java | 43 + .../property/mapper/PropGroupMapper.java | 31 + .../eai/common/seed/AnsiX923Padding.java | 91 + .../eactive/eai/common/seed/Base64Coder.java | 145 ++ .../eai/common/seed/CryptoPaddingImpl.java | 43 + .../com/eactive/eai/common/seed/Seed.java | 108 ++ .../eactive/eai/common/seed/SeedCipher.java | 797 +++++++++ .../eai/common/server/EAIServerDAO.java | 98 ++ .../eai/common/server/EAIServerManager.java | 377 +++++ .../eai/common/server/EAIServerVO.java | 154 ++ .../com/eactive/eai/common/server/Keys.java | 38 + .../common/server/mapper/EAIServerMapper.java | 28 + .../util/ApplicationContextProvider.java | 22 + .../eai/common/util/CamelCaseUtil.java | 52 + .../eai/common/util/CharsetDecoderUtil.java | 101 ++ .../eai/common/util/CommonHeaderUtil.java | 129 ++ .../eactive/eai/common/util/CommonLib.java | 288 ++++ .../eai/common/util/ContainerUtil.java | 150 ++ .../eactive/eai/common/util/DatetimeUtil.java | 355 ++++ .../com/eactive/eai/common/util/LogKeys.java | 72 + .../com/eactive/eai/common/util/Logger.java | 1102 ++++++++++++ .../eactive/eai/common/util/NullControl.java | 80 + .../eactive/eai/common/util/ObjectUtil.java | 142 ++ .../eai/common/util/ScpDbAgentUtil.java | 80 + .../eai/common/util/ServiceLocator.java | 158 ++ .../common/util/ServiceLocatorException.java | 99 ++ .../eactive/eai/common/util/StringUtil.java | 669 ++++++++ .../eactive/eai/common/util/SystemUtil.java | 70 + .../eai/common/util/TypeConversion.java | 262 +++ .../com/eactive/eai/common/util/UUID.java | 558 ++++++ .../eai/common/util/UUIDGenerator.java | 153 ++ .../com/eactive/eai/common/util/XSSUtil.java | 47 + .../logger/CustomClassOfCallerConverter.java | 21 + .../logger/CustomFileOfCallerConverter.java | 21 + .../logger/CustomLineOfCallerConverter.java | 21 + .../logger/CustomMethodOfCallerConverter.java | 21 + .../util/logger/CustomPatternLayout.java | 151 ++ .../logger/CustomPatternLayoutEncoder.java | 16 + .../eai/rms/onl/vo/AdaptersStatusVO.java | 55 + .../eactive/eai/rms/onl/vo/AdaptersVO.java | 212 +++ .../eai/rms/onl/vo/EAIEngineStatusVo.java | 271 +++ .../eactive/eai/rms/onl/vo/HostStatusVo.java | 87 + .../com/eactive/eai/rms/onl/vo/ItsmVo.java | 205 +++ .../eactive/eai/rms/onl/vo/JmsMonitorVo.java | 87 + .../eactive/eai/rms/onl/vo/MonitorDataVo.java | 87 + .../com/eactive/eai/rms/onl/vo/SmsVO.java | 50 + .../eai/rms/onl/vo/TransactionSendVo.java | 108 ++ .../stdmessage/STDMessageErrorKeys.java | 88 + .../eai/common/stdmessage/STDMessageKeys.java | 73 + src/model/StdMsgLout.java | 77 + src/model/StdMsgLoutDeploy.java | 31 + src/model/StdMsgLoutHist.java | 99 ++ src/model/StdMsgLoutItem.java | 152 ++ src/model/StdMsgLoutItemPK.java | 57 + src/model/Tseaiad01.java | 329 ++++ src/model/Tseaiad02.java | 86 + src/model/Tseaiad02PK.java | 57 + src/model/Tseaiad03.java | 43 + src/model/Tseaiad04.java | 53 + src/model/Tseaiad04PK.java | 68 + src/model/Tseaiad05.java | 212 +++ src/model/Tseaiad05PK.java | 68 + src/model/Tseaiad06.java | 129 ++ src/model/Tseaiad06PK.java | 90 + src/model/Tseaiad07.java | 64 + src/model/Tseaiad07PK.java | 112 ++ src/model/Tseaiad13.java | 54 + src/model/Tseaiad14.java | 43 + src/model/Tseaiad15.java | 42 + src/model/Tseaiad15PK.java | 57 + src/model/Tseaiad17.java | 87 + src/model/Tseaiad18.java | 108 ++ src/model/Tseaiad18PK.java | 57 + src/model/Tseaiau01.java | 186 ++ src/model/Tseaiau02.java | 142 ++ src/model/Tseaiau03.java | 65 + src/model/Tseaiau04.java | 31 + src/model/Tseaiau04PK.java | 57 + src/model/Tseaiau05.java | 108 ++ src/model/Tseaiau06.java | 63 + src/model/Tseaicl01.java | 53 + src/model/Tseaicl01PK.java | 68 + src/model/Tseaicm01.java | 154 ++ src/model/Tseaicm02.java | 43 + src/model/Tseaicm03.java | 42 + src/model/Tseaicm03PK.java | 57 + src/model/Tseaicm04.java | 131 ++ src/model/Tseaicm05.java | 228 +++ src/model/Tseaicm06.java | 161 ++ src/model/Tseaicm07.java | 97 ++ src/model/Tseaicm08.java | 76 + src/model/Tseaicm09.java | 140 ++ src/model/Tseaicm10.java | 150 ++ src/model/Tseaicm11.java | 54 + src/model/Tseaicm12.java | 128 ++ src/model/Tseaicm13.java | 104 ++ src/model/Tseaicm14.java | 42 + src/model/Tseaicm15.java | 87 + src/model/Tseaicm19.java | 42 + src/model/Tseaicm20.java | 197 +++ src/model/Tseaicm20PK.java | 57 + src/model/Tseaicm23.java | 65 + src/model/Tseaidc01.java | 43 + src/model/Tseaidc02.java | 65 + src/model/Tseaidc03.java | 53 + src/model/Tseaidc03PK.java | 68 + src/model/Tseaidr01.java | 53 + src/model/Tseaidr01PK.java | 123 ++ src/model/Tseaidr02.java | 54 + src/model/Tseaidr02PK.java | 112 ++ src/model/Tseaifr01.java | 74 + src/model/Tseaifr01PK.java | 68 + src/model/Tseaifr02.java | 76 + src/model/Tseaifr03.java | 86 + src/model/Tseaifr03PK.java | 68 + src/model/Tseaifr04.java | 86 + src/model/Tseaifr04PK.java | 90 + src/model/Tseaifr05.java | 53 + src/model/Tseaifr06.java | 86 + src/model/Tseaifr06PK.java | 57 + src/model/Tseaifr07.java | 53 + src/model/Tseaifr07PK.java | 79 + src/model/Tseaifr08.java | 53 + src/model/Tseaifr09.java | 73 + src/model/Tseaifr09PK.java | 57 + src/model/Tseaifr10.java | 64 + src/model/Tseaifr10PK.java | 57 + src/model/Tseaifr11.java | 95 ++ src/model/Tseaifr11PK.java | 68 + src/model/Tseaihe01.java | 337 ++++ src/model/Tseaihe02.java | 295 ++++ src/model/Tseaihe03.java | 315 ++++ src/model/Tseaihe03PK.java | 57 + src/model/Tseaihe04.java | 315 ++++ src/model/Tseaihe04PK.java | 57 + src/model/Tseaihs02.java | 53 + src/model/Tseaihs02PK.java | 57 + src/model/Tseaihs03.java | 132 ++ src/model/Tseaihs04.java | 108 ++ src/model/Tseaihs05.java | 42 + src/model/Tseaihs05PK.java | 57 + src/model/Tseaiif03.java | 163 ++ src/model/Tseaiif03PK.java | 79 + src/model/Tseaiil01.java | 108 ++ src/model/Tseaiil02.java | 86 + src/model/Tseaiil03.java | 42 + src/model/Tseaiil04.java | 43 + src/model/Tseaimo01.java | 53 + src/model/Tseaimo02.java | 42 + src/model/Tseaimo02PK.java | 68 + src/model/Tseaims01.java | 54 + src/model/Tseaims02.java | 42 + src/model/Tseaims02PK.java | 68 + src/model/Tseaiqm01.java | 98 ++ src/model/Tseaiqm01PK.java | 57 + src/model/Tseaiqm02.java | 131 ++ src/model/Tseairm06.java | 42 + src/model/Tseairm06PK.java | 57 + src/model/Tseairm11.java | 76 + src/model/Tseairm11PK.java | 90 + src/model/Tseairm13.java | 76 + src/model/Tseairm13PK.java | 134 ++ src/model/Tseairm14.java | 53 + src/model/Tseairm14PK.java | 57 + src/model/Tseairm15.java | 54 + src/model/Tseairm15PK.java | 79 + src/model/Tseaise01.java | 97 ++ src/model/Tseaism01.java | 153 ++ src/model/Tseaism02.java | 76 + src/model/Tseaism03.java | 108 ++ src/model/Tseaism04.java | 109 ++ src/model/Tseaism05.java | 109 ++ src/model/Tseaisr01.java | 109 ++ src/model/Tseaisr01PK.java | 101 ++ src/model/Tseaisr02.java | 109 ++ src/model/Tseaisr02PK.java | 112 ++ src/model/Tseaisr03.java | 109 ++ src/model/Tseaisr03PK.java | 112 ++ src/model/Tseaisr04.java | 109 ++ src/model/Tseaisr04PK.java | 112 ++ src/model/Tseaisr05.java | 109 ++ src/model/Tseaisr05PK.java | 79 + src/model/Tseaisr06.java | 65 + src/model/Tseaisr06PK.java | 79 + src/model/Tseaist01.java | 75 + src/model/Tseaist01PK.java | 57 + src/model/Tseaist02.java | 1088 ++++++++++++ src/model/Tseaist02PK.java | 112 ++ src/model/Tseaist03.java | 1055 ++++++++++++ src/model/Tseaist03PK.java | 112 ++ src/model/Tseaist04.java | 428 +++++ src/model/Tseaist04PK.java | 112 ++ src/model/Tseaist05.java | 110 ++ src/model/Tseaist06.java | 95 ++ src/model/Tseaist06PK.java | 101 ++ src/model/Tseaisy01.java | 43 + src/model/Tseaisy02.java | 86 + src/model/Tseaiti01.java | 76 + src/model/Tseaitl01.java | 86 + src/model/Tseaitl01PK.java | 57 + src/model/Tseaitl02.java | 75 + src/model/Tseaitl02PK.java | 68 + .../errorcode/ErrorCodeManagerTest.java | 41 + .../loader/EAIServerEntityServiceTest.java | 42 + .../eai/data/CoreJPATestConfiguration.java | 23 + src/test/resources/application.yml | 20 + .../eai/common/errorcode/init_tseaims01.sql | 11 + src/test/resources/hibernate.cfg.xml | 22 + 252 files changed, 29930 insertions(+) create mode 100644 .gitignore create mode 100644 build.gradle create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100644 gradlew create mode 100644 gradlew.bat create mode 100644 hibernate.properties create mode 100644 readme.md create mode 100644 settings.gradle create mode 100644 src/main/java/com/eactive/eai/agent/command/Command.java create mode 100644 src/main/java/com/eactive/eai/agent/command/CommandException.java create mode 100644 src/main/java/com/eactive/eai/agent/command/CommonCommand.java create mode 100644 src/main/java/com/eactive/eai/common/EAIKeys.java create mode 100644 src/main/java/com/eactive/eai/common/EAITable.java create mode 100644 src/main/java/com/eactive/eai/common/dao/BaseDAO.java create mode 100644 src/main/java/com/eactive/eai/common/dao/DAOException.java create mode 100644 src/main/java/com/eactive/eai/common/dao/DAOFactory.java create mode 100644 src/main/java/com/eactive/eai/common/dao/Keys.java create mode 100644 src/main/java/com/eactive/eai/common/errorcode/ErrorCodeDAO.java create mode 100644 src/main/java/com/eactive/eai/common/errorcode/ErrorCodeHandler.java create mode 100644 src/main/java/com/eactive/eai/common/errorcode/ErrorCodeManager.java create mode 100644 src/main/java/com/eactive/eai/common/errorcode/ErrorCodeVO.java create mode 100644 src/main/java/com/eactive/eai/common/errorcode/mapper/ErrorCodeMapper.java create mode 100644 src/main/java/com/eactive/eai/common/exception/ExceptionHandleService.java create mode 100644 src/main/java/com/eactive/eai/common/exception/ExceptionUtil.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/DefaultLifecycleListener.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/Lifecycle.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleDAO.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleEvent.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleException.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleListener.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleManager.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleSupport.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/LifecycleVO.java create mode 100644 src/main/java/com/eactive/eai/common/lifecycle/mapper/LifeCycleMapper.java create mode 100644 src/main/java/com/eactive/eai/common/logger/Keys.java create mode 100644 src/main/java/com/eactive/eai/common/monitor/MonitorVO.java create mode 100644 src/main/java/com/eactive/eai/common/monitor/StatMonitorLogVO.java create mode 100644 src/main/java/com/eactive/eai/common/monitor/StatMonitorVO.java create mode 100644 src/main/java/com/eactive/eai/common/property/FileLoggerPropertyChangeListener.java create mode 100644 src/main/java/com/eactive/eai/common/property/PropGroupVO.java create mode 100644 src/main/java/com/eactive/eai/common/property/PropManager.java create mode 100644 src/main/java/com/eactive/eai/common/property/PropertyDAO.java create mode 100644 src/main/java/com/eactive/eai/common/property/PropertyLoginKeys.java create mode 100644 src/main/java/com/eactive/eai/common/property/RmsPropPropertyChangeListener.java create mode 100644 src/main/java/com/eactive/eai/common/property/mapper/PropGroupMapper.java create mode 100644 src/main/java/com/eactive/eai/common/seed/AnsiX923Padding.java create mode 100644 src/main/java/com/eactive/eai/common/seed/Base64Coder.java create mode 100644 src/main/java/com/eactive/eai/common/seed/CryptoPaddingImpl.java create mode 100644 src/main/java/com/eactive/eai/common/seed/Seed.java create mode 100644 src/main/java/com/eactive/eai/common/seed/SeedCipher.java create mode 100644 src/main/java/com/eactive/eai/common/server/EAIServerDAO.java create mode 100644 src/main/java/com/eactive/eai/common/server/EAIServerManager.java create mode 100644 src/main/java/com/eactive/eai/common/server/EAIServerVO.java create mode 100644 src/main/java/com/eactive/eai/common/server/Keys.java create mode 100644 src/main/java/com/eactive/eai/common/server/mapper/EAIServerMapper.java create mode 100644 src/main/java/com/eactive/eai/common/util/ApplicationContextProvider.java create mode 100644 src/main/java/com/eactive/eai/common/util/CamelCaseUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/CharsetDecoderUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/CommonHeaderUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/CommonLib.java create mode 100644 src/main/java/com/eactive/eai/common/util/ContainerUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/DatetimeUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/LogKeys.java create mode 100644 src/main/java/com/eactive/eai/common/util/Logger.java create mode 100644 src/main/java/com/eactive/eai/common/util/NullControl.java create mode 100644 src/main/java/com/eactive/eai/common/util/ObjectUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/ScpDbAgentUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/ServiceLocator.java create mode 100644 src/main/java/com/eactive/eai/common/util/ServiceLocatorException.java create mode 100644 src/main/java/com/eactive/eai/common/util/StringUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/SystemUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/TypeConversion.java create mode 100644 src/main/java/com/eactive/eai/common/util/UUID.java create mode 100644 src/main/java/com/eactive/eai/common/util/UUIDGenerator.java create mode 100644 src/main/java/com/eactive/eai/common/util/XSSUtil.java create mode 100644 src/main/java/com/eactive/eai/common/util/logger/CustomClassOfCallerConverter.java create mode 100644 src/main/java/com/eactive/eai/common/util/logger/CustomFileOfCallerConverter.java create mode 100644 src/main/java/com/eactive/eai/common/util/logger/CustomLineOfCallerConverter.java create mode 100644 src/main/java/com/eactive/eai/common/util/logger/CustomMethodOfCallerConverter.java create mode 100644 src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayout.java create mode 100644 src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayoutEncoder.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/AdaptersStatusVO.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/AdaptersVO.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/EAIEngineStatusVo.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/HostStatusVo.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/ItsmVo.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/JmsMonitorVo.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/MonitorDataVo.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/SmsVO.java create mode 100644 src/main/java/com/eactive/eai/rms/onl/vo/TransactionSendVo.java create mode 100644 src/main/java/com/ext/eai/common/stdmessage/STDMessageErrorKeys.java create mode 100644 src/main/java/com/ext/eai/common/stdmessage/STDMessageKeys.java create mode 100644 src/model/StdMsgLout.java create mode 100644 src/model/StdMsgLoutDeploy.java create mode 100644 src/model/StdMsgLoutHist.java create mode 100644 src/model/StdMsgLoutItem.java create mode 100644 src/model/StdMsgLoutItemPK.java create mode 100644 src/model/Tseaiad01.java create mode 100644 src/model/Tseaiad02.java create mode 100644 src/model/Tseaiad02PK.java create mode 100644 src/model/Tseaiad03.java create mode 100644 src/model/Tseaiad04.java create mode 100644 src/model/Tseaiad04PK.java create mode 100644 src/model/Tseaiad05.java create mode 100644 src/model/Tseaiad05PK.java create mode 100644 src/model/Tseaiad06.java create mode 100644 src/model/Tseaiad06PK.java create mode 100644 src/model/Tseaiad07.java create mode 100644 src/model/Tseaiad07PK.java create mode 100644 src/model/Tseaiad13.java create mode 100644 src/model/Tseaiad14.java create mode 100644 src/model/Tseaiad15.java create mode 100644 src/model/Tseaiad15PK.java create mode 100644 src/model/Tseaiad17.java create mode 100644 src/model/Tseaiad18.java create mode 100644 src/model/Tseaiad18PK.java create mode 100644 src/model/Tseaiau01.java create mode 100644 src/model/Tseaiau02.java create mode 100644 src/model/Tseaiau03.java create mode 100644 src/model/Tseaiau04.java create mode 100644 src/model/Tseaiau04PK.java create mode 100644 src/model/Tseaiau05.java create mode 100644 src/model/Tseaiau06.java create mode 100644 src/model/Tseaicl01.java create mode 100644 src/model/Tseaicl01PK.java create mode 100644 src/model/Tseaicm01.java create mode 100644 src/model/Tseaicm02.java create mode 100644 src/model/Tseaicm03.java create mode 100644 src/model/Tseaicm03PK.java create mode 100644 src/model/Tseaicm04.java create mode 100644 src/model/Tseaicm05.java create mode 100644 src/model/Tseaicm06.java create mode 100644 src/model/Tseaicm07.java create mode 100644 src/model/Tseaicm08.java create mode 100644 src/model/Tseaicm09.java create mode 100644 src/model/Tseaicm10.java create mode 100644 src/model/Tseaicm11.java create mode 100644 src/model/Tseaicm12.java create mode 100644 src/model/Tseaicm13.java create mode 100644 src/model/Tseaicm14.java create mode 100644 src/model/Tseaicm15.java create mode 100644 src/model/Tseaicm19.java create mode 100644 src/model/Tseaicm20.java create mode 100644 src/model/Tseaicm20PK.java create mode 100644 src/model/Tseaicm23.java create mode 100644 src/model/Tseaidc01.java create mode 100644 src/model/Tseaidc02.java create mode 100644 src/model/Tseaidc03.java create mode 100644 src/model/Tseaidc03PK.java create mode 100644 src/model/Tseaidr01.java create mode 100644 src/model/Tseaidr01PK.java create mode 100644 src/model/Tseaidr02.java create mode 100644 src/model/Tseaidr02PK.java create mode 100644 src/model/Tseaifr01.java create mode 100644 src/model/Tseaifr01PK.java create mode 100644 src/model/Tseaifr02.java create mode 100644 src/model/Tseaifr03.java create mode 100644 src/model/Tseaifr03PK.java create mode 100644 src/model/Tseaifr04.java create mode 100644 src/model/Tseaifr04PK.java create mode 100644 src/model/Tseaifr05.java create mode 100644 src/model/Tseaifr06.java create mode 100644 src/model/Tseaifr06PK.java create mode 100644 src/model/Tseaifr07.java create mode 100644 src/model/Tseaifr07PK.java create mode 100644 src/model/Tseaifr08.java create mode 100644 src/model/Tseaifr09.java create mode 100644 src/model/Tseaifr09PK.java create mode 100644 src/model/Tseaifr10.java create mode 100644 src/model/Tseaifr10PK.java create mode 100644 src/model/Tseaifr11.java create mode 100644 src/model/Tseaifr11PK.java create mode 100644 src/model/Tseaihe01.java create mode 100644 src/model/Tseaihe02.java create mode 100644 src/model/Tseaihe03.java create mode 100644 src/model/Tseaihe03PK.java create mode 100644 src/model/Tseaihe04.java create mode 100644 src/model/Tseaihe04PK.java create mode 100644 src/model/Tseaihs02.java create mode 100644 src/model/Tseaihs02PK.java create mode 100644 src/model/Tseaihs03.java create mode 100644 src/model/Tseaihs04.java create mode 100644 src/model/Tseaihs05.java create mode 100644 src/model/Tseaihs05PK.java create mode 100644 src/model/Tseaiif03.java create mode 100644 src/model/Tseaiif03PK.java create mode 100644 src/model/Tseaiil01.java create mode 100644 src/model/Tseaiil02.java create mode 100644 src/model/Tseaiil03.java create mode 100644 src/model/Tseaiil04.java create mode 100644 src/model/Tseaimo01.java create mode 100644 src/model/Tseaimo02.java create mode 100644 src/model/Tseaimo02PK.java create mode 100644 src/model/Tseaims01.java create mode 100644 src/model/Tseaims02.java create mode 100644 src/model/Tseaims02PK.java create mode 100644 src/model/Tseaiqm01.java create mode 100644 src/model/Tseaiqm01PK.java create mode 100644 src/model/Tseaiqm02.java create mode 100644 src/model/Tseairm06.java create mode 100644 src/model/Tseairm06PK.java create mode 100644 src/model/Tseairm11.java create mode 100644 src/model/Tseairm11PK.java create mode 100644 src/model/Tseairm13.java create mode 100644 src/model/Tseairm13PK.java create mode 100644 src/model/Tseairm14.java create mode 100644 src/model/Tseairm14PK.java create mode 100644 src/model/Tseairm15.java create mode 100644 src/model/Tseairm15PK.java create mode 100644 src/model/Tseaise01.java create mode 100644 src/model/Tseaism01.java create mode 100644 src/model/Tseaism02.java create mode 100644 src/model/Tseaism03.java create mode 100644 src/model/Tseaism04.java create mode 100644 src/model/Tseaism05.java create mode 100644 src/model/Tseaisr01.java create mode 100644 src/model/Tseaisr01PK.java create mode 100644 src/model/Tseaisr02.java create mode 100644 src/model/Tseaisr02PK.java create mode 100644 src/model/Tseaisr03.java create mode 100644 src/model/Tseaisr03PK.java create mode 100644 src/model/Tseaisr04.java create mode 100644 src/model/Tseaisr04PK.java create mode 100644 src/model/Tseaisr05.java create mode 100644 src/model/Tseaisr05PK.java create mode 100644 src/model/Tseaisr06.java create mode 100644 src/model/Tseaisr06PK.java create mode 100644 src/model/Tseaist01.java create mode 100644 src/model/Tseaist01PK.java create mode 100644 src/model/Tseaist02.java create mode 100644 src/model/Tseaist02PK.java create mode 100644 src/model/Tseaist03.java create mode 100644 src/model/Tseaist03PK.java create mode 100644 src/model/Tseaist04.java create mode 100644 src/model/Tseaist04PK.java create mode 100644 src/model/Tseaist05.java create mode 100644 src/model/Tseaist06.java create mode 100644 src/model/Tseaist06PK.java create mode 100644 src/model/Tseaisy01.java create mode 100644 src/model/Tseaisy02.java create mode 100644 src/model/Tseaiti01.java create mode 100644 src/model/Tseaitl01.java create mode 100644 src/model/Tseaitl01PK.java create mode 100644 src/model/Tseaitl02.java create mode 100644 src/model/Tseaitl02PK.java create mode 100644 src/test/java/com/eactive/eai/common/errorcode/ErrorCodeManagerTest.java create mode 100644 src/test/java/com/eactive/eai/common/server/loader/EAIServerEntityServiceTest.java create mode 100644 src/test/java/com/eactive/eai/data/CoreJPATestConfiguration.java create mode 100644 src/test/resources/application.yml create mode 100644 src/test/resources/com/eactive/eai/common/errorcode/init_tseaims01.sql create mode 100644 src/test/resources/hibernate.cfg.xml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8a5d2d6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,235 @@ +gradle.properties + +# Package Files # +*.war + +src/main/generated + +# Eclipse # +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.settings/ +.loadpath +.recommenders + +.classpath +.project + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# PyDev specific (Python IDE for Eclipse) +*.pydevproject + +# CDT-specific (C/C++ Development Tooling) +.cproject + +# CDT- autotools +.autotools + +# Java annotation processor (APT) +.factorypath + +# PDT-specific (PHP Development Tools) +.buildpath + +# sbteclipse plugin +.target + +# Tern plugin +.tern-project + +# TeXlipse plugin +.texlipse + +# STS (Spring Tool Suite) +.springBeans + +# Code Recommenders +.recommenders/ + +# Annotation Processing +.apt_generated/ +.apt_generated_test/ + +# Scala IDE specific (Scala & Java development for Eclipse) +.cache-main +.scala_dependencies +.worksheet + +# Uncomment this line if you wish to ignore the project description file. +# Typically, this file would be tracked if it contains build/dependency configurations: +#.project + +### Intellij ### +.idea +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### Intellij Patch ### +# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721 + +# *.iml +# modules.xml +# .idea/misc.xml +# *.ipr + +# Sonarlint plugin +.idea/**/sonarlint/ + +# SonarQube Plugin +.idea/**/sonarIssues.xml + +# Markdown Navigator plugin +.idea/**/markdown-navigator.xml +.idea/**/markdown-navigator/ + +### Java ### +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### Gradle ### +.gradle +build/ + +# Ignore Gradle GUI config +gradle-app.setting + +# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) +!gradle-wrapper.jar + +# Cache of project +.gradletasknamecache + +# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898 +# gradle/wrapper/gradle-wrapper.properties + +### Gradle Patch ### +**/build/ + +# End of https://www.gitignore.io/api/java,macos,gradle,intellij +/EAISIMWeb/ +/.apt_generated_tests/ diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..8661322 --- /dev/null +++ b/build.gradle @@ -0,0 +1,149 @@ +plugins { + id 'java-library' + id 'maven-publish' + id 'eclipse-wtp' + id 'idea' + id 'com.diffplug.eclipse.apt' version '3.41.1' +} + +group 'com.eactive' +version '4.5.1-SNAPSHOT' + +def springVersion = "5.3.27" +//def quartzVersion = "2.2.1" +def queryDslVersion = "5.0.0" +def hibernateVersion = "5.6.15.Final" + +def nexusUrl = "https://nexus.eactive.synology.me:8090" +def generatedJavaDir = "$buildDir/generated/java" + +java { + toolchain { + languageVersion = JavaLanguageVersion.of(8) + } +} + +compileJava { + options.encoding = 'UTF-8' + options.compilerArgs += [ + '-Amapstruct.verbose=false' + ] + sourceSets.main.java { srcDir generatedJavaDir } + options.generatedSourceOutputDirectory = project.file(generatedJavaDir) + + aptOptions { + processorArgs = [ 'querydsl.generatedAnnotationClass' : 'com.querydsl.core.annotations.Generated' ] + } +} + +jar { + exclude '**/persistence.xml' +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} + +dependencies { + + // project > properties > Java Compiler > Annoation Processing + annotationProcessor "org.projectlombok:lombok:1.18.28", "org.projectlombok:lombok-mapstruct-binding:0.2.0", "org.mapstruct:mapstruct-processor:1.5.5.Final" + annotationProcessor "com.querydsl:querydsl-apt:${queryDslVersion}:jpa", "jakarta.persistence:jakarta.persistence-api:2.2.3", "jakarta.annotation:jakarta.annotation-api:1.3.5" + + api project(':elink-online-core-jpa') + + api group: 'org.apache.commons', name: 'commons-lang3', version: '3.9' + api group: 'commons-io', name: 'commons-io', version: '2.11.0' + api group: 'commons-beanutils', name: 'commons-beanutils', version: '1.6.1' + api "com.rabbitmq:amqp-client:3.6.6" + + api 'ch.qos.logback:logback-classic:1.2.10' + api 'ch.qos.logback:logback-core:1.2.10' + api 'co.elastic.logging:logback-ecs-encoder:1.5.0' + //api 'com.eactive:json-simple-1.1.1-custom:1.2' + + api "org.springframework:spring-context-support:${springVersion}" + + api 'jakarta.interceptor:jakarta.interceptor-api:2.1.0' + + compileOnly group: 'com.ibm.db2', name: 'jcc', version: '11.5.7.0' + + testRuntimeOnly 'com.h2database:h2:2.1.214' + testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' + testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' + testImplementation 'org.springframework.boot:spring-boot-starter-test:2.6.15' +} + +test { + useJUnitPlatform() +} + +publishing { + repositories { + maven { + name = 'eactiveRepository' + def releasesRepoUrl = "${nexusUrl}/repository/maven-releases/" + def snapshotsRepoUrl = "${nexusUrl}/repository/maven-snapshots/" + url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + credentials(PasswordCredentials) + } + } + + publications { + mavenJava(MavenPublication) { + from components.java + pom { + description = "eLink Core module" + licenses { + license { + name = "Commercial License" + url = "http://eactive.co.kr" + } + } + } + } + } +} + +task sourcesJar(type: Jar, dependsOn: classes) { + archiveClassifier = 'sources' + from sourceSets.main.allSource +} + +artifacts { + archives sourcesJar +} + +task settingEclipseEncoding { + if (project.file('.settings').exists()) { + File f = file('.settings/org.eclipse.core.resources.prefs') + f.write('eclipse.preferences.version=1\n') + f.append('encoding/=utf-8') + } +} + +task initDirs() { + if (!project.file(generatedJavaDir).exists()) { + file(generatedJavaDir).mkdirs() + } +} + +eclipse { + synchronizationTasks settingEclipseEncoding, initDirs + jdt { + apt { + genSrcDir = file(generatedJavaDir) + } + } + project { + natures = ['org.eclipse.buildship.core.gradleprojectnature', + 'org.eclipse.jdt.core.javanature', + 'org.eclipse.wst.common.project.facet.core.nature', + 'org.eclipse.wst.common.modulecore.ModuleCoreNature', + 'org.eclipse.jem.workbench.JavaEMFNature'] + buildCommand 'org.eclipse.buildship.core.gradleprojectbuilder' + buildCommand 'org.eclipse.wst.validation.validationbuilder' + buildCommand 'org.eclipse.wst.common.project.facet.core.builder' + buildCommand 'org.eclipse.jdt.core.javabuilder' + } +} \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..41d9927a4d4fb3f96a785543079b8df6723c946b GIT binary patch literal 59821 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 literal 0 HcmV?d00001 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..54228ea --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +networkTimeout=10000 diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..1b6c787 --- /dev/null +++ b/gradlew @@ -0,0 +1,234 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +APP_NAME="Gradle" +APP_BASE_NAME=${0##*/} + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/hibernate.properties b/hibernate.properties new file mode 100644 index 0000000..e69de29 diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..211b43a --- /dev/null +++ b/readme.md @@ -0,0 +1,12 @@ +# eLink 온라인 코어 모듈 +대부분의 온라인 프로젝트들에서 공통으로 참조하는 핵심 라이브러리 + +### 추후 목표 +로직이 있는 부분은 다른 라이브러리로 전환하고 순수 Object와 Logger 정도만 남기는것을 목표로 한다. + +### nexus password +대상파일 : gradle.properties +```ini +eactiveRepositoryUsername={사용자명} +eactiveRepositoryPassword={비밀번호} +``` \ No newline at end of file diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..85930d5 --- /dev/null +++ b/settings.gradle @@ -0,0 +1,5 @@ +rootProject.name = 'elink-online-core' + +include 'elink-online-core-jpa' + +project (':elink-online-core-jpa').projectDir = new File(settingsDir, "../elink-online-core-jpa") \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/agent/command/Command.java b/src/main/java/com/eactive/eai/agent/command/Command.java new file mode 100644 index 0000000..ccb05e7 --- /dev/null +++ b/src/main/java/com/eactive/eai/agent/command/Command.java @@ -0,0 +1,96 @@ +package com.eactive.eai.agent.command; + +import java.io.Serializable; +import java.util.HashMap; + +/** + * 1. 기능 : Agent에 의해 실행될 Command 를 정의하기 위한 base class + * 2. 처리 개요 : Agent에 의해 실행될 Command 를 정의하기 위한 base class + * 3. 주의사항 + * + * @author + * @version v 1.0.0 + * @see 관련 기능을 참조 + * @since + * + */ +public abstract class Command implements Serializable { + + private static final long serialVersionUID = 1L; + + protected String name; + protected Object args; + + private static HashMap errorCode; + + static { + errorCode = new HashMap<>(); + errorCode.put("RECEAIMCM001", "Command name[{1}] invalid parameter type - {2}"); + errorCode.put("RECEAIMCM002", "Command name[{1}] execute method error - {2}"); + } + + public Command() { + this.name = this.getClass().getName(); + } + + public Command(String name) { + this.name = name; + } + + public void setArgs(Object args) { + this.args = args; + } + + /** + * 1. 기능 : command의 business logic method
+ * 2. 처리 개요 : command의 business logic method
+ * 3. 주의사항 + * + * @exception CommandException + **/ + public abstract Object execute() throws CommandException; + + /** + * 1. 기능 : 에러 Message 생성 + * 2. 처리 개요 : 에러코드와 Exception cause로 에러 메시지 생성 3. 주의사항 + * + * @param rspErrorcode EAI 에러코드 + * @param cause Exception cause + * @return String 에러 메시지 + * @exception CommandException + **/ + protected String makeException(String rspErrorCode, Throwable cause) throws CommandException { + String[] msgArgs = new String[2]; + msgArgs[0] = name; + if (cause == null) { + msgArgs[1] = args.toString(); + } else { + msgArgs[1] = cause.getMessage(); + } + return makeMessage(errorCode.get(rspErrorCode), msgArgs); + } + + private static String makeMessage(String msg, String[] args) { + String keyword = null, head = null, tail = null; + int idx = -1; + for (int i = 0; i < args.length; i++) { + keyword = "{" + (i + 1) + "}"; + idx = msg.indexOf(keyword); + if (idx == -1) { + continue; + } + head = msg.substring(0, idx); + tail = msg.substring(idx + keyword.length()); + msg = head + args[i] + tail; + } + return msg; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} diff --git a/src/main/java/com/eactive/eai/agent/command/CommandException.java b/src/main/java/com/eactive/eai/agent/command/CommandException.java new file mode 100644 index 0000000..ea6707e --- /dev/null +++ b/src/main/java/com/eactive/eai/agent/command/CommandException.java @@ -0,0 +1,35 @@ + +package com.eactive.eai.agent.command; + +/** +* 1. 기능 : Command Logic을 실행하다 발생될 User Define 오류를 처리하기 위한 Exception class
+* 2. 처리 개요 : Command Logic을 실행하다 발생될 User Define 오류를 처리하기 위한 Exception class
+* 3. 주의사항 +* +* @author +* @version v 1.0.0 +* @see 관련 기능을 참조 +* @since +* +*/ +public class CommandException extends Exception { + + private static final long serialVersionUID = 1L; + + + public CommandException() { + super("CommandException is occured."); + } + + /** + * 1. 기능 : Exception message를 초기화하는 Constructor + * 2. 처리 개요 : Exception message를 초기화하는 Constructor + * - + * 3. 주의사항 + * + * @param msg Exception message + **/ + public CommandException(String msg) { + super(msg); + } +} diff --git a/src/main/java/com/eactive/eai/agent/command/CommonCommand.java b/src/main/java/com/eactive/eai/agent/command/CommonCommand.java new file mode 100644 index 0000000..1191c95 --- /dev/null +++ b/src/main/java/com/eactive/eai/agent/command/CommonCommand.java @@ -0,0 +1,63 @@ +package com.eactive.eai.agent.command; + +import java.lang.reflect.Constructor; + +import com.eactive.eai.common.util.Logger; + +/** +* 1. 기능 : 공통 command +* 2. 처리 개요 : +* 3. 주의사항 +* +* @author +* @version v 1.0.0 +* @see 관련 기능을 참조 +* @since +* +*/ +public class CommonCommand extends Command { + + private static final long serialVersionUID = 1L; + + + public CommonCommand(String name,Object args) { + this.name = name; + this.args = args; + } + + public CommonCommand(String name) { + this.name = name; + } + + public Object execute() throws CommandException + { + if(this.name == null) { + String rspErrorCode = "RECEAIMCM001"; + String msg = makeException(rspErrorCode, null); + throw new CommandException(msg); + } + + if (name.indexOf(".") >=0 ){ + try { + this.name = this.name.trim(); + @SuppressWarnings("rawtypes") + Class cl = Class.forName(this.name); + @SuppressWarnings({ "rawtypes", "unchecked" }) + Constructor constructor = cl.getConstructor(); + Object obj = constructor.newInstance(); + Command c = (Command)obj; + c.setArgs(args); + return c.execute(); + + } catch (Exception e) { + Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + logger.error("CommonCommand Exception "+e.getMessage(),e); + throw new CommandException(e.getMessage()); + } + }else{ + String rspErrorCode = "RECEAIMCM001"; + String msg = makeException(rspErrorCode, null); + throw new CommandException(msg); + } + } +} diff --git a/src/main/java/com/eactive/eai/common/EAIKeys.java b/src/main/java/com/eactive/eai/common/EAIKeys.java new file mode 100644 index 0000000..54db36b --- /dev/null +++ b/src/main/java/com/eactive/eai/common/EAIKeys.java @@ -0,0 +1,52 @@ +package com.eactive.eai.common; + +public interface EAIKeys +{ + /* + 거래 요구(0200), + 재요구(0201) + 응답(0210) + + 취소(0420) + 취소응답(0430) + + 통신망 관리 전문(0800) + 집계(8000) + */ + + public static final String TR_REQ = "0200"; // 거래요구 + public static final String TR_RE_REQ = "0201"; // 재요구 + public static final String TR_RES = "0210"; // 응답 + + public static final String TR_CANCEL_REQ = "0420"; // 취소 + public static final String TR_CANCEL_RES = "0430"; // 취소응답 + + //----------------------------------------------------------- + // 2006.01.04 추가됨 + //----------------------------------------------------------- + public static final String TR_NET_REQ = "0800"; // 통신망전문 + public static final String TR_NET_RES = "0810"; // 통신망전문응답 + + public static final String TR_SYSTEMINFO_REQ = "0700"; // 시스템정보 + public static final String TR_SYSTEMINFO_RES = "0710"; // 시스템정보응답 + //----------------------------------------------------------- + + public static final String NET_MGR = "0800"; // 통신망관리 전문 + public static final String TR_STAT = "8000"; // 집계 + + public static final String CALL_MODE_KEY = "mode"; // Process Call Type Key + public static final String CALL_MODE_WARMUP = "warmup"; // Warmup Call Value + public static final String CALL_COMP_KEY = "compensation_type"; // 보상거래호출 Key + public static final String CALL_COMP_VALUE = "compensation_service"; // 보상거래호출 Value + + public static final String CALL_COMP_SVC_SEQ = "compensation_seq"; //보상거래 호출 서비스 처리 번호 + + public static final String BID_SEQ = "bid_seq"; //비드메시지 호출 서비스 처리를 위한 seq + public static final String BID_IS_PUBLISH = "bid_is_publish"; //비드메시지 호출 서비스 처리를 위한 seq + + public static final String PCOMP_CON_FACTORY = "com.eactive.eai.common.ConnectionFactory"; + public static final String PCOMP_RES_QUEUE = "com.eactive.eai.pcomp.PCompResQueue"; + public static final String PCOMP_OUT_RES_QUEUE = "com.eactive.eai.pcomp.PCompOutResQueue"; + + +} diff --git a/src/main/java/com/eactive/eai/common/EAITable.java b/src/main/java/com/eactive/eai/common/EAITable.java new file mode 100644 index 0000000..a923d97 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/EAITable.java @@ -0,0 +1,82 @@ +package com.eactive.eai.common; + +import java.util.HashSet; +import java.util.Set; + +public interface EAITable +{ + public static final String[] ADAPTER_TYPES ={"SOC","EJB","HTT","JMS","IMQ","IMS", "SNA", "WTC", "WCA", "X25"}; + public static final String[] ADAPTER_TYPE_NAMES ={"SocketAdapter","EJBAdapter","HttpAdapter","JMSAdapter","MQAdapter","IMSAdapter", "SNAAdapter", "WTCAdapter", "WCAAdapter", "X25Adapter"}; + + //migration + //public static final String[] EXR_TYPES = {"IN", "OU"}; + public static final String[] EXR_TYPES = {"I", "O"}; + public static final String[] EXR_TYPE_NAMES = {"전문고유번호 추출", "응답메시지구분값 추출"}; + + public static final String[] EXR_CLASS_TYPES = {"AK", "TR"}; + public static final String[] EXR_CLASS_TYPE_NAMES = {"ALT-KEY 추출", "추적관리필드 추출"}; + + public static final String[] MSG_TYPES = {"ASC", "EBC", "JOB", "FML", "F32", "XML"}; + public static final String[] MSG_TYPE_NAMES = {"ASCII 전문", "EBCDIC 전문", "Java Object", "FML", "FML32", "XML"}; + + public static final String ASCII_TYPE = "ASC"; + public static final String EBCDIC_TYPE = "EBC"; + public static final String JAVAOBJECT_TYPE = "JOB"; + public static final String FML_TYPE = "FML"; + public static final String FML32_TYPE = "F32"; + public static final String XML_TYPE = "XML"; +// public static final String UXML_TYPE = "UXL"; + public static final String JSON_TYPE = "JSN"; +// public static final String UJSON_TYPE = "UJN"; + public static final String ISO8583_TYPE = "I83"; +// public static final String ISO8583_H2H_TYPE = "H2H"; + + /** + * EAIMessage의 상수 + */ + public static final String[] SVC_TIME_EXIST = {"0", "1"}; + public static final String[] SVC_TIME_EXIST_VALUE = {"없음", "있음"}; // 서비스시간유무 + public static final String[] SVC_SAME_TIME_TYPE = {"SYNC", "ASYN", "ACKO"}; // 서비스동시사용 + public static final String[] SVC_PROCESS_TYPE = {"SINGLE", "COMPLEX", "PCOMPLEX", "TIMER"}; // 서비스처리유형 + public static final String[] UNIT_TYPE = {"ONLINE", "BATCH", "FTP"}; // 통합유형 + public static final String[] START_SVC_CLASSIFICATION = {"TIMER", "EXCEPTION"}; // 기동서비스구분 + public static final String[] SVC_WHOLE_COL_LOG = {"0", "1"}; + public static final String[] SVC_WHOLE_COL_LOG_VALUE = {"사용안함", "사용함"}; // 서비스전열로그여부 + public static final String[] STANDARD_MSG_USAGE = {"0", "1"}; // 표준메시지사용구분 + public static final String[] STANDARD_MSG_USAGE_VALUE = {"사용안함", "사용함"}; + public static final String[] SERVER_LOG_LEVEL_TYPE = {"WARNING", "INFO", "DEBUG"};// 서버로그레벨 + public static final int[] SERVER_LOG_LEVEL = {0, 1, 2}; + public static final int[] SVC_LOG_LEVEL = {0, 1, 2, 3, 4}; // 서비스로그레벨 + + /** + * ServiceMessage의 상수 + */ + public static final String[] PSV_ITF_TYPE = {"SYNC", "ASYN", "AKON"}; // 수동인터페이스유형 - PassiveInterfaceType + public static final String[] FAIL_OVER_CLS = {"0", "1"}; + public static final String[] FAIL_OVER_CLS_VALUE = {"사용안함", "사용함"}; // FailOver여부 - FailOverClassification + public static final String[] CNV_EXIST_NOT = {"0", "1"}; + public static final String[] CNV_EXIST_NOT_VALUE = {"없음", "있음"}; // 변환유무 - ConversionExistenceOrNot + public static final String[] BS_RSP_CNV_EXIST_NOT = {"0", "1"}; + public static final String[] BS_RSP_CNV_EXIST_NOT_VALUE = {"없음", "있음"}; // 기본응답변환유무 - BasisResponseConversionExistenceOrNot + public static final String[] ERR_RSP_CNV_EXIST_NOT = {"0", "1"}; // 오류응답변환유무 + public static final String[] ERR_RSP_CNV_EXIST_NOT_VALUE = {"없음", "있음"}; + public static final String[] RSPNS_DST_CD = {"0", "1"}; + public static final String[] RSPNS_DST_CD_VALUE = {"오류", "정상"}; // 정상응답(1), 오류응답(0) 여부 + + public static final String ALL = "전체서버"; + /** + * KESAMessage의 상수 + */ + public static final String[] C_HEAD_TYPE ={"KJ", "KB", "KT"}; + + /** + * 플로우라우팅정보 레이어 구분 + */ + public static final String[] LAYER_DSTCD = {"F", "O", "T"}; + + /** + * 어댑터 입출력 구분 코드 + */ + public static final String[] ADPTR_IO_DSTCD = {"I", "O"}; + public static final String[] ADPTR_IO_DSTCD_NAMES = {"INBOUND", "OUTBOUND"}; +} diff --git a/src/main/java/com/eactive/eai/common/dao/BaseDAO.java b/src/main/java/com/eactive/eai/common/dao/BaseDAO.java new file mode 100644 index 0000000..a52904e --- /dev/null +++ b/src/main/java/com/eactive/eai/common/dao/BaseDAO.java @@ -0,0 +1,159 @@ +package com.eactive.eai.common.dao; + +import java.io.InputStream; +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Properties; + +import javax.sql.DataSource; + +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.util.Logger; +import com.eactive.eai.common.util.ServiceLocator; + +public abstract class BaseDAO { + protected Connection conn; + protected PreparedStatement preparedStatement; + protected String jndiName; + static Logger logger; + protected static boolean application; + + static { + application = false; + } + + public BaseDAO() { + this.jndiName = Keys.EAI_DATASOURCE; + } + + protected void setJNDIName(String jndiDataSource) { + this.jndiName = jndiDataSource; + } + + protected void connect(String query) throws DAOException { + DataSource dataSource = null; + try { + if (!application) { + ServiceLocator sl = ServiceLocator.getInstance(); + dataSource = sl.getDataSource(jndiName); + conn = dataSource.getConnection(); + } else { + if (conn == null || conn.isClosed()) + conn = getJDBCConnection(query); + } + preparedStatement = conn.prepareStatement(query); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA101"), e); + } + } + + protected void connect(String providerURL, String query) throws DAOException { + DataSource dataSource = null; + try { + ServiceLocator sl = ServiceLocator.getInstance(); + dataSource = sl.getRemoteDataSource(providerURL, jndiName); + if (dataSource == null) { + throw new Exception("datasource not found : " + jndiName); + } + conn = dataSource.getConnection(); + preparedStatement = conn.prepareStatement(query); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA101"), e); + } + } + + protected ResultSet executeQuery() throws DAOException { + try { + ResultSet rs = preparedStatement.executeQuery(); + return rs; + } catch (SQLException e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA102"), e); + } + } + + protected int executeUpdate() throws DAOException { + try { + int result = preparedStatement.executeUpdate(); + return result; + } catch (SQLException e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA103"), e); + } + } + + protected void prepareStatement(String query) throws DAOException { + try { + closeStatement(); + preparedStatement = conn.prepareStatement(query); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA104"), e); + } + } + + protected void disconnect() throws DAOException { + closeStatement(); + closeConnection(); + } + + protected void closeStatement() throws DAOException { + if (preparedStatement != null) { + try { + preparedStatement.close(); + } catch (Exception e) { + logger.warn("preparedStatement close error"); + } + } + } + + protected void closeConnection() throws DAOException { + try { + if (application) { + return; + } + if ((!application) && (conn != null)) { + conn.close(); + } + } catch (Exception e) { + logger.warn("connection close error"); + } + } + + private Connection getJDBCConnection(String query) throws SQLException { + try { + InputStream in = this.getClass().getClassLoader() + .getResourceAsStream("data/transform/config/config.properties"); + Properties p = new Properties(); + + if (in == null) { + throw new SQLException( + "BaseDAO] Cannot find the jdbc configuration file. - data/transform/config/config.properties"); + } + + p.load(in); + Class.forName(p.getProperty("jdbc.driver")); + + Connection con = DriverManager.getConnection(p.getProperty("jdbc.url"), p.getProperty("jdbc.username"), + p.getProperty("jdbc.password")); + + if (logger.isDebug()) + logger.debug("BaseDAO ] getJDBCConnection - JDBCConnection URL : " + p.getProperty("jdbc.url")); + + return con; + } catch (Exception e) { + throw new SQLException("BaseDAO] Cannot create a JDBC Connection. - " + e.getMessage()); + } + } + + protected int convertInt(Object o) { + if (o instanceof Integer) { + return (Integer) o; + } else if (o instanceof BigDecimal) { + return ((BigDecimal) o).intValue(); + } else { + return 0; + } + } +} diff --git a/src/main/java/com/eactive/eai/common/dao/DAOException.java b/src/main/java/com/eactive/eai/common/dao/DAOException.java new file mode 100644 index 0000000..cbf63cb --- /dev/null +++ b/src/main/java/com/eactive/eai/common/dao/DAOException.java @@ -0,0 +1,92 @@ + +package com.eactive.eai.common.dao; + +/** +* 1. 기능 : Data Access Object 예외 처리를 정의한 Exception 클래스 +* 2. 처리 개요 : DAO 예외 처리 정의를 위한 Exception 클래스 이다. +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public class DAOException extends Exception +{ + String message; + + /** + * 1. 기능 : Default Constructor + * 2. 처리 개요 : Default Constructor + * - + * 3. 주의사항 + * + **/ + public DAOException() { + super("DAOException is occured."); + } + + /** + * 1. 기능 : 오류 메시지를 저장하는 생성자 함수 + * 2. 처리 개요 : 파라미터의 오류 메시지를 저장한다. + * - + * 3. 주의사항 + * + * @param msg 오류 메시지 + **/ + public DAOException(String msg) { + super(msg); + this.message = msg; + } + + + /** + * 1. 기능 : 오류 메시지를 저장하는 생성자 함수 + * 2. 처리 개요 : 파라미터의 오류 메시지를 저장한다. + * - + * 3. 주의사항 + * + * @param Throwable - 에러 + **/ + + public DAOException(String msg, Throwable cause) { + super(msg, cause); + + if (Keys.isDB2Include && cause instanceof com.ibm.db2.jcc.DB2Diagnosable) { + try { + this.message = msg + " | " + ((com.ibm.db2.jcc.DB2Diagnosable) cause).getSqlca().getMessage(); + } catch(Exception e) { + this.message = msg + " | " + cause.getMessage(); + } + } else { + this.message = msg; + } + } + + public DAOException(Throwable cause) { + super(cause); + + if (Keys.isDB2Include && cause instanceof com.ibm.db2.jcc.DB2Diagnosable) { + try { + this.message = ((com.ibm.db2.jcc.DB2Diagnosable) cause).getSqlca().getMessage(); + } catch(Exception e) { + this.message = cause.getMessage(); + } + } else { + this.message = cause.getMessage(); + } + } + + @Override + public String getMessage() { + return this.message; + } + + @Override + public String toString() { + String s = getClass().getName(); + return (this.message != null) ? (s + ": " + this.message) : s; + } +} diff --git a/src/main/java/com/eactive/eai/common/dao/DAOFactory.java b/src/main/java/com/eactive/eai/common/dao/DAOFactory.java new file mode 100644 index 0000000..19afd36 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/dao/DAOFactory.java @@ -0,0 +1,91 @@ +package com.eactive.eai.common.dao; + +import com.eactive.eai.common.exception.ExceptionUtil; + +/** +* 1. 기능 : DAO 객체를 생성하기 위한 Factory 클래스 +* 2. 처리 개요 : DAO 객체를 생성하는 Factory 메서드를 정의한다. +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public class DAOFactory +{ + + /** + * 1. 기능 : Default Contructor + * 2. 처리 개요 : Default Contructor + * - + * 3. 주의사항 + * + **/ + private DAOFactory() { + + } + + /** + * 1. 기능 : DAOFactory 객체를 생성 반환하는 메서드 + * 2. 처리 개요 : DAOFactory 객체를 생성 반환한다. + * - + * 3. 주의사항 + * + * @return DAOFactory + **/ + public static DAOFactory newInstance() { + return new DAOFactory(); + } + + /** + * 1. 기능 : BaseDAO 객체를 생성 반환하는 메서드 + * 2. 처리 개요 : 파라미터의 DAO 객체를 생성 반환한다. + * - + * 3. 주의사항 + * + * @param daoClassName 생성할 DAO 클래스 + * @return BaseDAO Data Access Object + * @exception 클래스를 찾지 못하거나 객체를 생성하지 못할 경우 + **/ + public BaseDAO create(String daoClassName) throws DAOException { + Class daoClass = null; + try { + daoClass = Class.forName(daoClassName); + } catch(Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA111")); + } + + BaseDAO dao = null; + try { + dao = (BaseDAO)daoClass.newInstance(); + } catch(Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA112")); + } + + return dao; + } + + /** + * 1. 기능 : BaseDAO 객체를 생성 반환하는 메서드 + * 2. 처리 개요 : 파라미터의 DAO 객체를 생성 반환한다. + * - + * 3. 주의사항 + * + * @param daoClass 생성할 DAO 클래스 + * @return BaseDAO Data Access Object + * @exception 클래스를 찾지 못하거나 객체를 생성하지 못할 경우 + **/ + public BaseDAO create(Class daoClass) throws DAOException { + BaseDAO dao = null; + try { + dao = (BaseDAO)daoClass.newInstance(); + } catch(Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICDA112")); + } + + return dao; + } +} diff --git a/src/main/java/com/eactive/eai/common/dao/Keys.java b/src/main/java/com/eactive/eai/common/dao/Keys.java new file mode 100644 index 0000000..b90a58f --- /dev/null +++ b/src/main/java/com/eactive/eai/common/dao/Keys.java @@ -0,0 +1,41 @@ +package com.eactive.eai.common.dao; + +/** +* 1. 기능 : DAO에서 사용하는 JDBC DataSource에 대한 JNDI 이름을 정의한 상수 클래스 +* 2. 처리 개요 : DAO에서 사용하는 JDBC DataSource에 대한 JNDI 이름을 정의한다. +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public class Keys +{ + public static boolean isDB2Include = false; + static { + // DB2관련 모듈 유무 판단. + try { + Class clazz = Class.forName("com.ibm.db2.jcc.DB2Diagnosable"); + isDB2Include = true; + } catch (Throwable e) { + } + } + /** + * TABLE 의 OWNER명 + */ + public static final String TABLE_OWNER_KEY = "eai.tableowner"; + public static final String JDBC_NAME_KEY = "eai.jdbc.Name"; + public static final String JDBC_NAME_DEFAULT = "jdbc/ElinkDefaultDataSource"; + + public static final String OWNER = System.getProperty(TABLE_OWNER_KEY); + + public static final String TABLE_OWNER = OWNER+"."; + + /** + * EAI 프레임웍에서 사용하는 기본 DataSource에 대한 JNDI 이름 + */ + public static final String EAI_DATASOURCE = System.getProperty(JDBC_NAME_KEY,JDBC_NAME_DEFAULT); +} diff --git a/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeDAO.java b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeDAO.java new file mode 100644 index 0000000..c5318d9 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeDAO.java @@ -0,0 +1,60 @@ +package com.eactive.eai.common.errorcode; + +import java.util.HashMap; +import java.util.Map; +import java.util.stream.Stream; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.eactive.eai.common.dao.BaseDAO; +import com.eactive.eai.common.dao.DAOException; +import com.eactive.eai.common.errorcode.loader.ErrorCodeLoader; +import com.eactive.eai.common.errorcode.mapper.ErrorCodeMapper; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.util.Logger; +import com.eactive.eai.data.entity.onl.errorcode.ErrorCode; + +@Service +@Transactional +public class ErrorCodeDAO extends BaseDAO { + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + private ErrorCodeLoader errorCodeLoader; + + private ErrorCodeMapper errorCodeMapper; + + @Autowired + public ErrorCodeDAO(ErrorCodeLoader errorCodeLoader, ErrorCodeMapper errorCodeMapper) { + this.errorCodeLoader = errorCodeLoader; + this.errorCodeMapper = errorCodeMapper; + } + + public Map getMessages() throws DAOException { + try (Stream errorCodes = errorCodeLoader.loadAll()) { + Map codeMap = new HashMap<>(); + + logger.info("[ @@ Load ErrorCode Configuration - starting >>>>>>>>>>>>>>>>> ]"); + + errorCodes.forEach(e -> { + ErrorCodeVO vo = errorCodeMapper.toVo(e); + codeMap.put(vo.getMsgKey(), vo); + }); + + logger.info("[>>Load ErrorCode Configuration - ended ]"); + return codeMap; + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICCM101")); + } + } + + public ErrorCodeVO getMessages(String key) throws DAOException { + try { + ErrorCode code = errorCodeLoader.getById(key); + return errorCodeMapper.toVo(code); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICCM101")); + } + } +} diff --git a/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeHandler.java b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeHandler.java new file mode 100644 index 0000000..0d1fa27 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeHandler.java @@ -0,0 +1,37 @@ +package com.eactive.eai.common.errorcode; + +public class ErrorCodeHandler { + + private ErrorCodeHandler() { + } + + public static String getMessage(String code) { + return ErrorCodeManager.getInstance().getMessage(code); + } + + public static String getMessage(String code, String[] args) { + String msg = ErrorCodeManager.getInstance().getMessage(code); + return makeMessage(msg, args); + } + + private static String makeMessage(String msg, String[] args) { + String keyword = null; + String head = null; + String tail = null; + int idx = -1; + + for (int i = 0; i < args.length; i++) { + keyword = "{" + (i + 1) + "}"; + idx = msg.indexOf(keyword); + if (idx == -1) { + continue; + } + + head = msg.substring(0, idx); + tail = msg.substring(idx + keyword.length()); + msg = head + args[i] + tail; + } + + return msg; + } +} diff --git a/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeManager.java b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeManager.java new file mode 100644 index 0000000..1b0b9ff --- /dev/null +++ b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeManager.java @@ -0,0 +1,140 @@ +package com.eactive.eai.common.errorcode; + +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.lifecycle.Lifecycle; +import com.eactive.eai.common.lifecycle.LifecycleException; +import com.eactive.eai.common.lifecycle.LifecycleListener; +import com.eactive.eai.common.lifecycle.LifecycleSupport; +import com.eactive.eai.common.util.ApplicationContextProvider; +import com.eactive.eai.common.util.Logger; + +import java.util.HashMap; +import java.util.Map; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class ErrorCodeManager implements Lifecycle { + + static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + private Map messages = new HashMap<>(); + private LifecycleSupport lifecycle = new LifecycleSupport(this); + private boolean started; + + @Autowired + private ErrorCodeDAO errorCodeDAO; + + public static ErrorCodeManager getInstance() { + return ApplicationContextProvider.getContext().getBean(ErrorCodeManager.class); + } + + public void start() throws LifecycleException { + if (started) + throw new LifecycleException("RECEAICCM201"); + + lifecycle.fireLifecycleEvent(STARTING_EVENT, this); + messages = null; + + try { + init(); + } catch (Exception e) { + throw new LifecycleException(ExceptionUtil.getErrorCode(e, "RECEAICCM202")); + } + + started = true; + lifecycle.fireLifecycleEvent(STARTED_EVENT, this); + } + + private void init() throws Exception { + messages = errorCodeDAO.getMessages(); + } + + public void stop() throws LifecycleException { + if (!started) + throw new LifecycleException("RECEAICCM203"); + + lifecycle.fireLifecycleEvent(STOPING_EVENT, this); + messages.clear(); + started = false; + logger.info("ErrorCodeManager] It is stopped."); + lifecycle.fireLifecycleEvent(STOPPED_EVENT, this); + } + + public boolean isStarted() { + return this.started; + } + + public String getMessage(String code) { + if (code == null) + return null; + ErrorCodeVO vo = messages.get(code); + if (vo == null) { + return "EAI 내부 시스템 오류"; + } + String msg = vo.getMsgTxt(); + return (msg == null) ? "UNDEFINE" : msg; + } + + public String getMessageEtc(String code) { + if (code == null) + return null; + ErrorCodeVO vo = messages.get(code); + if (vo == null) { + return "EAI 내부 시스템 오류"; + } + String msgEtc = vo.getMsgEtc(); + return (msgEtc == null) ? "UNDEFINE" : msgEtc; + } + + public ErrorCodeVO getMessageVO(String code) { + if (code == null) + return null; + return messages.get(code); + } + + public void setMessage(ErrorCodeVO vo) { + if (vo != null) { + messages.put(vo.getMsgKey(), vo); + } + } + + public void removeMessage(String code) { + messages.remove(code); + } + + public String[] getAllCodes() { + return messages.keySet().toArray(new String[0]); + } + + public Map getAllCodeMessages() { + return this.messages; + } + + public synchronized void reload() throws Exception { + init(); + } + + public synchronized void reload(String key) throws Exception { + ErrorCodeVO vo = errorCodeDAO.getMessages(key); + + if (vo != null) { + this.messages.put(key, vo); + } else { + throw new Exception("CodeMessageManager not found in Database : key[" + key + "]"); + } + } + + public void addLifecycleListener(LifecycleListener listener) { + lifecycle.addLifecycleListener(listener); + } + + public LifecycleListener[] findLifecycleListeners() { + return lifecycle.findLifecycleListeners(); + } + + public void removeLifecycleListener(LifecycleListener listener) { + lifecycle.removeLifecycleListener(listener); + } +} diff --git a/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeVO.java b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeVO.java new file mode 100644 index 0000000..c135343 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/errorcode/ErrorCodeVO.java @@ -0,0 +1,51 @@ +package com.eactive.eai.common.errorcode; + +import com.eactive.eai.common.util.NullControl; + +import java.io.Serializable; + +public class ErrorCodeVO implements Serializable{ + + private static final long serialVersionUID = 1L; + + private String msgKey; // 메시지[TSEAIMS01.Msg] + private String msgTxt; // 메시지내용[TSEAIMS01.MsgCtnt] + private String msgEtc; // 조치사항내용[TSEAIMS01.TreatMatrCtnt] + + public ErrorCodeVO() { + this(""); + } + + public ErrorCodeVO(String msgKey) { + this(msgKey, ""); + } + + public ErrorCodeVO(String msgKey, String msgTxt) { + this.msgKey = msgKey; + this.msgTxt = msgTxt; + } + + public void setMsgKey(String msgKey) { + this.msgKey = msgKey; + } + + public String getMsgKey() { + return this.msgKey; + } + + public void setMsgTxt(String msgTxt) { + this.msgTxt = msgTxt; + } + + public String getMsgTxt() { + return this.msgTxt; + } + + public void setMsgEtc(String msgEtc) { + this.msgEtc = msgEtc; + } + + public String getMsgEtc() { + return NullControl.trimSpace(this.msgEtc); + } +} diff --git a/src/main/java/com/eactive/eai/common/errorcode/mapper/ErrorCodeMapper.java b/src/main/java/com/eactive/eai/common/errorcode/mapper/ErrorCodeMapper.java new file mode 100644 index 0000000..70de653 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/errorcode/mapper/ErrorCodeMapper.java @@ -0,0 +1,23 @@ +package com.eactive.eai.common.errorcode.mapper; + +import org.mapstruct.InheritInverseConfiguration; +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.mapstruct.ReportingPolicy; + +import com.eactive.eai.common.errorcode.ErrorCodeVO; +import com.eactive.eai.data.entity.onl.errorcode.ErrorCode; +import com.eactive.eai.data.mapper.GenericMapper; + +@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface ErrorCodeMapper extends GenericMapper { + + @Mapping(source = "msg", target = "msgKey") + @Mapping(source = "msgctnt", target = "msgTxt") + @Mapping(source = "treatmatrctnt", target = "msgEtc") + @Override + ErrorCodeVO toVo(ErrorCode entity); + + @InheritInverseConfiguration + ErrorCode toEntity(ErrorCodeVO vo); +} diff --git a/src/main/java/com/eactive/eai/common/exception/ExceptionHandleService.java b/src/main/java/com/eactive/eai/common/exception/ExceptionHandleService.java new file mode 100644 index 0000000..7a03310 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/exception/ExceptionHandleService.java @@ -0,0 +1,100 @@ +package com.eactive.eai.common.exception; + +public interface ExceptionHandleService { + /** + * 1. 기능 : Exception 발생 시 약속된 메시지 코드를 반환하기 위한 메서드 + * 2. 처리 개요 : Exception 내 메시지가 메시지 코드 체계인지를 판단해서 메시지 체계이면 Excepiton의 메시지를 반환하고, + * 그렇지 않다면 파라미터에 새로 정의한 메시지 코드를 반환한다. + * - + * 3. 주의사항 + * + * @param cause 발생한 오류 + * @param code 새로 정의할 메시지 코드 + * @return 메시지 코드 + **/ + public String getErrorCode(Throwable cause, String code); + + + /** + * 1. 기능 : Error 코드 및 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param errorText 에러 텍스트 + * @return 에러코드와 텍스트 + **/ + public String make(String errorCode, String errorText); + + /** + * 1. 기능 : Error 코드 및 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param causeErrorCode 최초 발생한 오류 코드 + * @param errorText 에러 텍스트 + * @return 에러코드와 텍스트 + **/ + public String make(String errorCode, String causeErrorCode, String errorText); + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param args 에러 텍스트에 셋팅할 인수 리스트 + * @return 에러코드와 텍스트 + **/ + public String make(String errorCode, String[] args); + + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param causeErrorCode 최초 발생한 오류 코드 + * @param args 에러 텍스트에 셋팅할 인수 리스트 + * @return 에러코드와 텍스트 + **/ + public String make(String errorCode, String causeErrorCode, String[] args); + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param cause 발생한 오류 + * @param errorCode 에러 코드 + * @param args 에러 텍스트에 셋팅할 인수 리스트 + * @return 에러코드와 텍스트 + **/ + public String make(Throwable cause, String errorCode, String[] args); + + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param cause 발생한 오류 + * @param errorCode 에러 코드 + * @return 에러코드와 텍스트 + **/ + public String make(Throwable cause, String errorCode); + + + public String formatErrorCode( String code ); + + public String makeExceptionCause(Throwable cause); + +} diff --git a/src/main/java/com/eactive/eai/common/exception/ExceptionUtil.java b/src/main/java/com/eactive/eai/common/exception/ExceptionUtil.java new file mode 100644 index 0000000..8a85128 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/exception/ExceptionUtil.java @@ -0,0 +1,128 @@ +package com.eactive.eai.common.exception; + +public class ExceptionUtil { + private static ExceptionHandleService exceptionHandleService; + + static{ + try { + Class exceptionHandleServiceClass = (Class) Class.forName("com.eactive.eai.common.exception.ExceptionHandlerServiceImpl"); + exceptionHandleService = exceptionHandleServiceClass.newInstance(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + /** + * 1. 기능 : Exception 발생 시 약속된 메시지 코드를 반환하기 위한 메서드 + * 2. 처리 개요 : Exception 내 메시지가 메시지 코드 체계인지를 판단해서 메시지 체계이면 Excepiton의 메시지를 반환하고, + * 그렇지 않다면 파라미터에 새로 정의한 메시지 코드를 반환한다. + * - + * 3. 주의사항 + * + * @param cause 발생한 오류 + * @param code 새로 정의할 메시지 코드 + * @return 메시지 코드 + **/ + public static String getErrorCode(Throwable cause, String code){ + return exceptionHandleService.getErrorCode(cause, code); + } + + + /** + * 1. 기능 : Error 코드 및 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param errorText 에러 텍스트 + * @return 에러코드와 텍스트 + **/ + public static String make(String errorCode, String errorText){ + return exceptionHandleService.make(errorCode, errorText); + } + + /** + * 1. 기능 : Error 코드 및 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param causeErrorCode 최초 발생한 오류 코드 + * @param errorText 에러 텍스트 + * @return 에러코드와 텍스트 + **/ + public static String make(String errorCode, String causeErrorCode, String errorText){ + return exceptionHandleService.make(errorCode, causeErrorCode, errorText); + } + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param args 에러 텍스트에 셋팅할 인수 리스트 + * @return 에러코드와 텍스트 + **/ + public static String make(String errorCode, String... args){ + return exceptionHandleService.make(errorCode, args); + } + + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param errorCode 에러 코드 + * @param causeErrorCode 최초 발생한 오류 코드 + * @param args 에러 텍스트에 셋팅할 인수 리스트 + * @return 에러코드와 텍스트 + **/ + public static String make(String errorCode, String causeErrorCode, String[] args){ + return exceptionHandleService.make(errorCode, causeErrorCode, args); + } + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param cause 발생한 오류 + * @param errorCode 에러 코드 + * @param args 에러 텍스트에 셋팅할 인수 리스트 + * @return 에러코드와 텍스트 + **/ + public static String make(Throwable cause, String errorCode, String[] args){ + return exceptionHandleService.make(cause, errorCode, args); + } + + + /** + * 1. 기능 : Error 코드에 대한 텍스트를 정의된 포맷으로 만드는 메서드 + * 2. 처리 개요 : Error 코드 및 텍스트를 정의된 포맷으로 만들어 반환한다. + * - + * 3. 주의사항 + * + * @param cause 발생한 오류 + * @param errorCode 에러 코드 + * @return 에러코드와 텍스트 + **/ + public static String make(Throwable cause, String errorCode){ + return exceptionHandleService.make(cause, errorCode); + } + + + public static String formatErrorCode( String code ){ + return exceptionHandleService.formatErrorCode(code); + } + + public static String makeExceptionCause(Throwable cause){ + return exceptionHandleService.makeExceptionCause(cause); + } +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/DefaultLifecycleListener.java b/src/main/java/com/eactive/eai/common/lifecycle/DefaultLifecycleListener.java new file mode 100644 index 0000000..7a8a9a6 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/DefaultLifecycleListener.java @@ -0,0 +1,56 @@ +package com.eactive.eai.common.lifecycle; + +//import com.eactive.eai.adapter.AdapterGroupVO; +//import com.eactive.eai.adapter.AdapterVO; +import com.eactive.eai.common.errorcode.ErrorCodeHandler; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.util.Logger; + +/** +* 1. 기능 : LifecyclEvent를 수신 처리하는 기본 리스너 클래스 +* 2. 처리 개요 : LifecycleEvent를 받아 로깅한다. +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public class DefaultLifecycleListener implements LifecycleListener +{ + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + /** + * 1. 기능 : LifecycleEvent를 수신하여 로깅하는 메서드 + * 2. 처리 개요 : LifecycleEvent를 받아 약속된 포맷으로 Logger를 통해 로깅한다. + * - + * 3. 주의사항 + * + * @param event Lifecycle의 start, stop Event 정보를 표현한 Value Object + **/ + public void lifecycleEvent(LifecycleEvent event) + { + Object data = event.getData(); + if(data==null) { + String code = "RWCEAICLC001"; + if (logger.isWarn()) logger.warn(ExceptionUtil.make(code, ErrorCodeHandler.getMessage(code))+"["+event+"]"); + return; + } + + String type = event.getType(); + String name = data.getClass().getName(); + int idx = name.lastIndexOf("."); + StringBuffer sb = new StringBuffer(); + sb.append((idx==-1)? name : name.substring(idx+1)).append("] "); + sb.append("It is ").append(type).append("."); +// if(data instanceof AdapterGroupVO) { +// sb.append(" >> ").append(((AdapterGroupVO)data).getName()); +// } else if(data instanceof AdapterVO) { +// sb.append(" >> ").append(((AdapterVO)data).getName()); +// } + if (logger.isDebug()) logger.debug(sb.toString()); + + } +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/Lifecycle.java b/src/main/java/com/eactive/eai/common/lifecycle/Lifecycle.java new file mode 100644 index 0000000..cebc8a2 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/Lifecycle.java @@ -0,0 +1,109 @@ + + + +package com.eactive.eai.common.lifecycle; + + + +/** +* 1. 기능 : 어플리케이션 기동/종료에 따른 비즈니스 로직 처리를 위해 정의한 인터페이스 +* 2. 처리 개요 : 어플리케이션 기동/종료 및 이벤트 처리를 위한 메서드를 정의한다. +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public interface Lifecycle { + + + + + /** + * The LifecycleEvent type for the "component start" event. + */ + public static final String STARTING_EVENT = "starting"; + + + /** + * The LifecycleEvent type for the "component before start" event. + */ + public static final String STARTED_EVENT = "started"; + + + /** + * The LifecycleEvent type for the "component stop" event. + */ + public static final String STOPING_EVENT = "stoping"; + + + + /** + * The LifecycleEvent type for the "component after stop" event. + */ + public static final String STOPPED_EVENT = "stopped"; + + + + + /** + * 1. 기능 : Add a LifecycleEvent listener to this component. + * + * @param listener The listener to add + */ + public void addLifecycleListener(LifecycleListener listener); + + + /** + * 1. 기능 : Get the lifecycle listeners associated with this lifecycle. If this + * Lifecycle has no listeners registered, a zero-length array is returned. + */ + public LifecycleListener[] findLifecycleListeners(); + + + /** + * 1. 기능 : Remove a LifecycleEvent listener from this component. + * + * @param listener The listener to remove + */ + public void removeLifecycleListener(LifecycleListener listener); + + + /** + * 1. 기능 : Prepare for the beginning of active use of the public methods of this + * component. This method should be called before any of the public + * methods of this component are utilized. It should also send a + * LifecycleEvent of type START_EVENT to any registered listeners. + * + * @exception LifecycleException if this component detects a fatal error + * that prevents this component from being used + */ + public void start() throws LifecycleException; + + + /** + * 1. 기능 : Gracefully terminate the active use of the public methods of this + * component. This method should be the last one called on a given + * instance of this component. It should also send a LifecycleEvent + * of type STOP_EVENT to any registered listeners. + * + * @exception LifecycleException if this component detects a fatal error + * that needs to be reported + */ + public void stop() throws LifecycleException; + + + /** + * 1. 기능 : 기동 여부를 반환하느 메서드 + * 2. 처리 개요 : 기동 여부 변수를 반환한다. + * - + * 3. 주의사항 + * + * @return 기동 여부 + **/ + public boolean isStarted(); + +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleDAO.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleDAO.java new file mode 100644 index 0000000..bab9632 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleDAO.java @@ -0,0 +1,49 @@ +package com.eactive.eai.common.lifecycle; + +import java.util.ArrayList; +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import com.eactive.eai.common.dao.BaseDAO; +import com.eactive.eai.common.dao.DAOException; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.lifecycle.loader.LifeCycleLoader; +import com.eactive.eai.common.lifecycle.mapper.LifeCycleMapper; +import com.eactive.eai.data.entity.onl.lifecycle.LifeCycle; + +@Component +@Transactional +public class LifecycleDAO extends BaseDAO { + + @Autowired + private LifeCycleLoader lifeCycleLoader; + + @Autowired + private LifeCycleMapper lifeCycleMapper; + + public List getAllLifecycles() throws DAOException { + List list = new ArrayList<>(); + try { + List lifeCycles = lifeCycleLoader.findAll(); + + for (LifeCycle lifeCycle : lifeCycles) { + list.add(lifeCycleMapper.toVo(lifeCycle)); + } + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICLC101")); + } + return list; + } + + public LifecycleVO getLifecycle(String lifecycleClass) throws DAOException { + try { + LifeCycle lifeCycle = lifeCycleLoader.getById(lifecycleClass); + return lifeCycleMapper.toVo(lifeCycle); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICLC103")); + } + } +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleEvent.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleEvent.java new file mode 100644 index 0000000..7fb59cc --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleEvent.java @@ -0,0 +1,131 @@ + + +package com.eactive.eai.common.lifecycle; + + +import java.util.EventObject; + +/** +* 1. 기능 : Lifecycle Event 를 정의한 클래스 +* 2. 처리 개요 : Lifecycle Event를 표현한 Event 클래스 +* General event for notifying listeners of significant changes on a component +* that implements the Lifecycle interface. In particular, this will be useful +* on Containers, where these events replace the ContextInterceptor concept in +* Tomcat 3.x. +* 3. 주의사항 +* +* @author : Craig R. McClanahan +* @version : $Revision: 1.1 $ $Date: 2008/04/07 06:43:42 $ +* @see : +* @since : +* : +*/ + +public final class LifecycleEvent + extends EventObject { + + + // ----------------------------------------------------------- Constructors + + + /** + * 1. 기능 : Construct a new LifecycleEvent with the specified parameters. + * 2. 처리 개요 : + * - Construct a new LifecycleEvent with the specified parameters. + * 3. 주의사항 + * + * @param lifecycle Component on which this event occurred + * @param type Event type (required) + **/ + public LifecycleEvent(Lifecycle lifecycle, String type) { + + this(lifecycle, type, null); + + } + + + /** + * 1. 기능 : Construct a new LifecycleEvent with the specified parameters. + * 2. 처리 개요 : + * - Construct a new LifecycleEvent with the specified parameters. + * 3. 주의사항 + * + * @param lifecycle Component on which this event occurred + * @param type Event type (required) + * @param data Event data (if any) + **/ + public LifecycleEvent(Lifecycle lifecycle, String type, Object data) { + + super(lifecycle); + this.lifecycle = lifecycle; + this.type = type; + this.data = data; + + } + + + // ----------------------------------------------------- Instance Variables + + + /** + * The event data associated with this event. + */ + private Object data = null; + + + /** + * The Lifecycle on which this event occurred. + */ + private Lifecycle lifecycle = null; + + + /** + * The event type this instance represents. + */ + private String type = null; + + + // ------------------------------------------------------------- Properties + + + /** + * 1. 기능 : Return the event data of this event. + * 2. 처리 개요 : + * - Return the event data of this event. + * 3. 주의사항 + * + **/ + public Object getData() { + + return (this.data); + + } + + + /** + * 1. 기능 : Return the Lifecycle on which this event occurred. + * 2. 처리 개요 : + * - Return the Lifecycle on which this event occurred. + * 3. 주의사항 + * + **/ + public Lifecycle getLifecycle() { + + return (this.lifecycle); + + } + + /** + * 1. 기능 : Return the event type of this event. + * 2. 처리 개요 : + * - Return the event type of this event. + * 3. 주의사항 + **/ + public String getType() { + + return (this.type); + + } + + +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleException.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleException.java new file mode 100644 index 0000000..081bb93 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleException.java @@ -0,0 +1,147 @@ + +package com.eactive.eai.common.lifecycle; + +/** +* 1. 기능 : Lifecycle 예외 처리를 위한 Exception 클래스 +* 2. 처리 개요 : Lifecycle 예외 처리를 위한 Exception 클래스 +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public final class LifecycleException extends Exception { + + + //------------------------------------------------------------ Constructors + + + /** + * 1. 기능 : Construct a new LifecycleException with no other information. + * 2. 처리 개요 : Default Constructor + * - + * 3. 주의사항 + * + **/ + public LifecycleException() { + + this(null, null); + + } + + + /** + * 1. 기능 : Construct a new LifecycleException for the specified message. + * 2. 처리 개요 : 파라미터의 예외 발생 원인을 초기화한다. + * - + * 3. 주의사항 + * + * @param message Message describing this exception + **/ + public LifecycleException(String message) { + + this(message, null); + + } + + /** + * 1. 기능 : Construct a new LifecycleException for the specified throwable. + * 2. 처리 개요 : 파라미터의 오류(Throwable)을 Wrapper하기 위해 멤버에 초기화 한다. + * - + * 3. 주의사항 + * + * @param cause Throwable that caused this exception + **/ + public LifecycleException(Throwable cause) { + + this(null, cause); + + } + + /** + * 1. 기능 : Construct a new LifecycleException for the specified message and cause. + * 2. 처리 개요 : 파라미터의 값을 멤버 변수에 초기화 한다. + * - + * 3. 주의사항 + * + * @param message Message describing this exception + * @param cause Throwable that caused this exception + **/ + public LifecycleException(String message, Throwable cause) { + + super(message, cause); + this.message = message; + //this.cause = cause; + } + + + //------------------------------------------------------ Instance Variables + + + /** + * The error message passed to our constructor (if any) + */ + protected String message = null; + + + /** + * The underlying exception or error passed to our constructor (if any) + */ + //protected Throwable cause = null; + + + //---------------------------------------------------------- Public Methods + + /** + * 1. 기능 : Returns the message associated with this exception, if any. + * 2. 처리 개요 : 오류 발생 원인을 반환한다. + * - + * 3. 주의사항 + * + * @return Exception 발생 원인 + **/ + /** + * + */ + public String getMessage() { + return (message); + } + + /** + * 1. 기능 : Returns the cause that caused this exception, if any. + * 2. 처리 개요 : 발생한 오류를 표현하는 Throwable + * - + * 3. 주의사항 + * + * @return 발생한 오류를 표현하는 Throwable + **/ + public Throwable getThrowable() { + return getCause(); + } + + /** + * 1. 기능 : Return a formatted string that describes this exception. + * 2. 처리 개요 : + * - + * 3. 주의사항 + * + * @return + **/ +// public String toString() { +// +// StringBuffer sb = new StringBuffer("LifecycleException: "); +// if (message != null) { +// sb.append(message); +// if (getCause() != null) { +// sb.append(": "); +// } +// } +// if (getCause() != null) { +// sb.append(getCause().toString()); +// } +// return (sb.toString()); +// } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleListener.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleListener.java new file mode 100644 index 0000000..55a68c8 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleListener.java @@ -0,0 +1,34 @@ + + +package com.eactive.eai.common.lifecycle; + +/** +* 1. 기능 : LifecyclEvent를 수신하여 비즈니스 로직을 처리하기 위한 Listener 인터페이스 +* 2. 처리 개요 : LifecycleEvent를 수신하기 위한 Listener 인터페이스를 정의한다. +* - Interface defining a listener for significant events (including "component +* start" and "component stop" generated by a component that implements the +* Lifecycle interface. +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ + +public interface LifecycleListener { + + + /** + * 1. 기능 : LifecycleEvent 발생 시 실행된느 메서드 + * 2. 처리 개요 : LifecycleEvent 발생 시 실행되는 메서드이다. + * - Acknowledge the occurrence of the specified event. + * 3. 주의사항 + * + * @param event LifecycleEvent that has occurred + **/ + public void lifecycleEvent(LifecycleEvent event); + + +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleManager.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleManager.java new file mode 100644 index 0000000..9210183 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleManager.java @@ -0,0 +1,173 @@ +package com.eactive.eai.common.lifecycle; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.ApplicationContext; +import org.springframework.stereotype.Component; + +import com.eactive.eai.common.errorcode.ErrorCodeHandler; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.util.Logger; + +@Component +public class LifecycleManager implements Lifecycle { + + static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + private boolean started = false; + private LifecycleSupport lifecycle = new LifecycleSupport(this); + + private List lifecycles; + + private List lifecycleVos; + + private LifecycleListener listener; + + @Autowired + private LifecycleDAO lifecycleDAO; + + @Autowired + private ApplicationContext applicationContext; + + public void start() throws LifecycleException { + + if (started) + throw new LifecycleException("RECEAICLC201"); + + try { + listener = new DefaultLifecycleListener(); + this.addLifecycleListener(listener); + lifecycle.fireLifecycleEvent(STARTING_EVENT, this); + + lifecycles = new ArrayList<>(); + lifecycleVos = lifecycleDAO.getAllLifecycles(); + + Collections.sort(lifecycleVos); + + initalizeLifecycles(); + + lifecycle.fireLifecycleEvent(STARTED_EVENT, this); + } catch (Exception e) { + throw new LifecycleException(ExceptionUtil.getErrorCode(e, "RECEAICLC207")); + } finally { + started = true; + } + } + + private void initalizeLifecycles() { + for (int i = 0; i < lifecycleVos.size(); i++) { + LifecycleVO vo = lifecycleVos.get(i); + try { + if (vo.getLoadSequence() <= 0) { + if (logger.isDebug()) { + logger.debug(ExceptionUtil.make("RDCEAICLC205", vo.toString())); + } + continue; + } + + Lifecycle lf = getLifecycleInstance(vo); + lf.addLifecycleListener(listener); + lf.start(); + lifecycles.add(lf); + + } catch (Exception e) { + String code = "RECEAICLC206"; + if (logger.isError()) + logger.error(ExceptionUtil.make(code, ErrorCodeHandler.getMessage(code)), e); + } + } + } + + private Lifecycle getLifecycleInstance(LifecycleVO vo) + throws ClassNotFoundException, NoSuchMethodException, SecurityException, IllegalAccessException, + IllegalArgumentException, InvocationTargetException, LifecycleException { + if (logger.isInfo()) { + logger.info("LifecycleManager] Start ==> " + vo); + } + Class cl = Class.forName(vo.getLifecycleClass()); + Object obj = null; + try { + obj = applicationContext.getBean(cl); + } catch (Exception e) { + Method m = cl.getDeclaredMethod("getInstance"); + obj = m.invoke(null); + } + + if (obj == null) { + throw new LifecycleException("Fail to start the Lifecycle. - " + vo); + } + + return (Lifecycle) obj; + } + + public void stop() throws LifecycleException { + if (!started) + throw new LifecycleException("RECEAICLC203"); + lifecycle.fireLifecycleEvent(STOPING_EVENT, this); + + Lifecycle lf = null; + for (int i = lifecycles.size() - 1; i >= 0; i--) { + lf = lifecycles.get(i); + if (!lf.isStarted()) + continue; + + String[] msgArgs = new String[1]; + msgArgs[0] = lf.getClass().getName(); + if (logger.isDebug()) + logger.debug(ExceptionUtil.make("RDCEAICLC208", msgArgs)); + + try { + lf.stop(); + lf.removeLifecycleListener(listener); + } catch (Exception e) { + String code = "RECEAICLC209"; + if (logger.isError()) + logger.error(ExceptionUtil.make(code, ErrorCodeHandler.getMessage(code)), e); + } + } + + this.lifecycleVos.clear(); + this.lifecycles.clear(); + + started = false; + lifecycle.fireLifecycleEvent(STOPPED_EVENT, this); + this.removeLifecycleListener(this.listener); + } + + public boolean isStarted() { + return this.started; + } + + public void addLifecycleListener(LifecycleListener listener) { + lifecycle.addLifecycleListener(listener); + } + + public LifecycleListener[] findLifecycleListeners() { + return lifecycle.findLifecycleListeners(); + } + + public void removeLifecycleListener(LifecycleListener listener) { + lifecycle.removeLifecycleListener(listener); + } + + public void addLifecycle(LifecycleVO vo) { + lifecycleVos.add(vo); + } + + public void removeLifecycle(String lifecycleClass) { + if (lifecycleVos == null) { + return; + } + + lifecycleVos.removeIf(lifecycleVo -> lifecycleClass.equalsIgnoreCase(lifecycleVo.getLifecycleClass())); + } + + public List getLifecycleVOList() { + return lifecycleVos; + } +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleSupport.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleSupport.java new file mode 100644 index 0000000..7d78b63 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleSupport.java @@ -0,0 +1,170 @@ + + + +package com.eactive.eai.common.lifecycle; + + + +/** +* 1. 기능 : +* 2. 처리 개요 : +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +import java.io.Serializable; + +/** + * Support class to assist in firing LifecycleEvent notifications to + * registered LifecycleListeners. + * + * @author Craig R. McClanahan + * @version $Id: LifecycleSupport.java,v 1.1 2008/04/07 06:43:41 dhlee Exp $ + */ + +public final class LifecycleSupport implements Serializable { + + + // ----------------------------------------------------------- Constructors + + + /** + * 1. 기능 : + * 2. 처리 개요 : + * - + * 3. 주의사항 + * + * @param + * @return + * @exception + **/ + /** + * Construct a new LifecycleSupport object associated with the specified + * Lifecycle component. + * + * @param lifecycle The Lifecycle component that will be the source + * of events that we fire + */ + public LifecycleSupport(Lifecycle lifecycle) { + + super(); + this.lifecycle = lifecycle; + + } + + + // ----------------------------------------------------- Instance Variables + + + /** + * The source component for lifecycle events that we will fire. + */ + private Lifecycle lifecycle = null; + + + /** + * The set of registered LifecycleListeners for event notifications. + */ + private LifecycleListener listeners[] = new LifecycleListener[0]; + + + // --------------------------------------------------------- Public Methods + + + /** + * 1. 기능 : + * 2. 처리 개요 : Add a lifecycle event listener to this component. + * - + * 3. 주의사항 + * + * @param listener The listener to add + */ + public void addLifecycleListener(LifecycleListener listener) { + + synchronized (listeners) { + LifecycleListener results[] = + new LifecycleListener[listeners.length + 1]; + for (int i = 0; i < listeners.length; i++) + results[i] = listeners[i]; + results[listeners.length] = listener; + listeners = results; + } + + } + + /** + * 1. 기능 : + * 2. 처리 개요 : Get the lifecycle listeners associated with this lifecycle. If this + * Lifecycle has no listeners registered, a zero-length array is returned. + * - + * 3. 주의사항 + * + **/ + public LifecycleListener[] findLifecycleListeners() { + + return listeners; + + } + + /** + * 1. 기능 : + * 2. 처리 개요 : Notify all lifecycle event listeners that a particular event has + * occurred for this Container. The default implementation performs + * this notification synchronously using the calling thread. + * - + * 3. 주의사항 + * + * @param type Event type + * @param data Event data + **/ + public void fireLifecycleEvent(String type, Object data) { + + LifecycleEvent event = new LifecycleEvent(lifecycle, type, data); + LifecycleListener interested[] = null; + synchronized (listeners) { + interested = (LifecycleListener[]) listeners.clone(); + } + for (int i = 0; i < interested.length; i++) + interested[i].lifecycleEvent(event); + + } + + /** + * 1. 기능 : Remove a lifecycle event listener from this component. + * 2. 처리 개요 : Remove a lifecycle event listener from this component. + * - + * 3. 주의사항 + * + * @param listener The listener to remove + **/ + public void removeLifecycleListener(LifecycleListener listener) { + + synchronized (listeners) { + int n = -1; + for (int i = 0; i < listeners.length; i++) { + if (listeners[i] == listener) { + n = i; + break; + } + } + if (n < 0) + return; + LifecycleListener results[] = + new LifecycleListener[listeners.length - 1]; + int j = 0; + for (int i = 0; i < listeners.length; i++) { + if (i != n) + results[j++] = listeners[i]; + } + listeners = results; + } + + } + + +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/LifecycleVO.java b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleVO.java new file mode 100644 index 0000000..011d9c3 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/LifecycleVO.java @@ -0,0 +1,41 @@ +package com.eactive.eai.common.lifecycle; + +import java.io.Serializable; + +import lombok.Data; + +@Data +public class LifecycleVO implements Serializable, Comparable { + + private static final long serialVersionUID = 1L; + + private String lifecycleClass; + + private int loadSequence; + + private String lifeCyclUseDstcd; + + public LifecycleVO() { + this("", -1); + } + + public LifecycleVO(String lifecycleClass, int loadSequence) { + this.lifecycleClass = lifecycleClass; + this.loadSequence = loadSequence; + } + + public LifecycleVO(String lifecycleClass, int loadSequence, String lifeCyclUseDstcd) { + this.lifecycleClass = lifecycleClass; + this.loadSequence = loadSequence; + this.lifeCyclUseDstcd = lifeCyclUseDstcd; + } + + public int compareTo(LifecycleVO obj) { + if (!(obj instanceof LifecycleVO)) { + return -1; + } + LifecycleVO l = obj; + return this.getLoadSequence() - l.getLoadSequence(); + } + +} diff --git a/src/main/java/com/eactive/eai/common/lifecycle/mapper/LifeCycleMapper.java b/src/main/java/com/eactive/eai/common/lifecycle/mapper/LifeCycleMapper.java new file mode 100644 index 0000000..afdf6a6 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/lifecycle/mapper/LifeCycleMapper.java @@ -0,0 +1,19 @@ +package com.eactive.eai.common.lifecycle.mapper; + +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.mapstruct.ReportingPolicy; + +import com.eactive.eai.common.lifecycle.LifecycleVO; +import com.eactive.eai.data.entity.onl.lifecycle.LifeCycle; +import com.eactive.eai.data.mapper.GenericMapper; + +@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface LifeCycleMapper extends GenericMapper { + + @Mapping(source = "lifecyclclsname", target = "lifecycleClass") + @Mapping(source = "lifecyclusedstcd", target = "lifeCyclUseDstcd") + @Mapping(source = "lodinseq", target = "loadSequence") + @Override + LifecycleVO toVo(LifeCycle entity); +} diff --git a/src/main/java/com/eactive/eai/common/logger/Keys.java b/src/main/java/com/eactive/eai/common/logger/Keys.java new file mode 100644 index 0000000..5cca594 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/logger/Keys.java @@ -0,0 +1,73 @@ +package com.eactive.eai.common.logger; + +/** +* 1. 기능 : EAI에서 처리되는 모든 On-Line 거래를 데이터베이스에 로깅하기 위한 +* 운영관리 logger 상수 클래스 +* 2. 처리 개요 : +* * - 거래 logger에 필요한 상수를 정의한다. +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +*/ +public interface Keys +{ + /** + * EAI 운영관리 Log 기본정보 + */ + public static final String EAI_LOGINFO = "EAILogInfo"; + + /** + * EAI 운영관리 Log Connection Factory + */ + public static final String LOG_CONNECTION_FACTORY = "log.connection.factory"; + /** + * EAI 운영관리 Log Queue + */ + public static final String LOG_QUEUE = "log.queue"; + + /** + * EAI 운영관리 Log Listener initial count + */ +// public static final String LOG_LISTENER_INITIAL_COUNT = "log.listener.initial.count"; + /** + * EAI 운영관리 Log Listener maximum count + */ +// public static final String LOG_LISTENER_MAX_COUNT = "log.listener.max.count"; + /** + * EAI 운영관리 Log Listener 체크 주기 + */ +// public static final String LOG_LISTENER_CHECK_PERIOD = "log.listener.check.period"; + + + /** + * 거래로그 sequence + */ + public static final int LOG_SEQ_1 = 100; + public static final int LOG_SEQ_2 = 200; + public static final int LOG_SEQ_3 = 300; + public static final int LOG_SEQ_4 = 400; + + public static final int LOG_SEQ_9 = 900; + + /** + * ALTKEY를 설정하기 위한 Property 키값 + */ + public static final String LOG_ALT_KEY1 = "LOG_ALT_KEY1"; + public static final String LOG_ALT_KEY2 = "LOG_ALT_KEY2"; + public static final String LOG_ALT_KEY3 = "LOG_ALT_KEY3"; + public static final String LOG_ALT_KEY4 = "LOG_ALT_KEY4"; + public static final String LOG_COMPANY_CODE = "LOG_COMPANY_CODE"; + public static final String LOG_MSG_LENGTH = "LOG_MSG_LENGTH"; + + /** + * Outbound에서 정상|오류 메시지에 대한 구분 + */ + public static final String ERROR_MESSAGE = "ERROR_MESSAGE"; + public static final String TRUE = "TRUE"; + public static final String FALSE = "FALSE"; + + +} diff --git a/src/main/java/com/eactive/eai/common/monitor/MonitorVO.java b/src/main/java/com/eactive/eai/common/monitor/MonitorVO.java new file mode 100644 index 0000000..e8daeba --- /dev/null +++ b/src/main/java/com/eactive/eai/common/monitor/MonitorVO.java @@ -0,0 +1,1494 @@ +package com.eactive.eai.common.monitor; + +import java.io.Serializable; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Iterator; + +import com.eactive.eai.common.dao.DAOFactory; +import com.eactive.eai.common.errorcode.ErrorCodeHandler; +import com.eactive.eai.common.exception.ExceptionUtil; +//import com.eactive.eai.common.logger.EAILogDAO; +//import com.eactive.eai.common.logger.Keys; +//import com.eactive.eai.common.message.IFType; +import com.eactive.eai.common.logger.Keys; +import com.eactive.eai.common.server.EAIServerManager; +import com.eactive.eai.common.util.DatetimeUtil; +import com.eactive.eai.common.util.Logger; +/** +* 1. 기능 : 해당 EAI Service Code에 대한 처리내역 통계 +* 2. 처리 개요 : +* * - 해당 EAI Service Code에 대한 처리/에러 누적 건수 +* - 해당 EAI Service Code에 대한 EAI처리시간 합, 수동시스템 처리시간 합 +* +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +*/ +public class MonitorVO implements Serializable +{ + /** + * EAI Framework에서 사용하는 LogSequence의 Array + * Keys.LOG_SEQ_1=100, Keys.LOG_SEQ_2=200, Keys.LOG_SEQ_3=300, Keys.LOG_SEQ_4=400, Keys.LOG_SEQ_9=900 + */ + final static String[] LOG_SEQ = {""+Keys.LOG_SEQ_1, ""+Keys.LOG_SEQ_2, ""+Keys.LOG_SEQ_3, ""+Keys.LOG_SEQ_4,""+Keys.LOG_SEQ_9, + "9300", "9400", "9900", // 타임아웃 키 추가 + "S100", "S200", "S300", "S400", "S900", // 시스템 에러 (에러건수에서 시스템에러건수의 값) + }; + + /** + * EAI Framework에서 사용되는 Default Logger + */ + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + /** + * EAI Service Code + */ + private String eaiServiceCode; + + /** + * 업무구분 코드 + */ + private String bwkCls; + + + /** + * 그룹회사코드 (KB0/KC0) + * 2010.11.08 : 그룹사라우팅 요건 + */ + private String groupCoCd; + + + /** + * EAI 일 처리 시간 누적 (24:00) + * 처리시간 = 메시지처리시각-메시지수신시각 (msgPssTm-msgRcvTm) + */ + private double sumOfprocessTime; + + /** + * 수동 시스템 일 처리 시간 누적 (24:00) + * 처리시간 = 메시지처리시각-메시지수신시각 (msgPssTm-msgRcvTm) + */ + private double psvSumOfPssTime; + + /** + * EAI 최근시간 처리 시간 누적 (24:00) + * 처리시간 = 메시지처리시각-메시지수신시각 (msgPssTm-msgRcvTm) + */ + private double sumOfProcessTimeInPeriod; + + /** + * 수동 시스템 최근시간 처리 시간 누적 (24:00) + * 처리시간 = 메시지처리시각-메시지수신시각 (msgPssTm-msgRcvTm) + */ + private double psvSumOfPssTimeInPeriod; + + /** + * 일일 logSequence별 수신 처리 건수 누적 + */ + private HashMap pssCnt; + + /** + * 일일 logSequence별 에러 건수 누적 + */ + private HashMap errPssCnt; + + /** + * 일일 복합거래의 수동시스템 처리시간 누적 + */ + private HashMap mPsvPssTm; + + /** + * 최근시간 logSequence별 수신 처리 건수 누적 + */ + private HashMap pssCntInPeriod; + + /** + * 최근시간 logSequence별 에러 건수 누적 + */ + private HashMap errPssCntInPeriod; + + /** + * 최근시간 복합거래의 수동시스템 처리시간 누적 + */ + private HashMap mPsvPssTmInPeriod; + + /** + * 복합거래의 211,221,231, .. 시점의 처리시간 + */ + private HashMap mPsvMsgPssTm; + + /** + * 거래 인터페이스 유형 IFType.SS || IFType.SA || IFType.AS || IFType.AA + */ + private String ifType; + + /** + * 거래 유형이 SINGLE 여부인지에 대한 Flag. 거래 유형 SINGLE || COMPLEX || PCOMPLEX + */ + private boolean isSingle; + + /** + * 수동 시스템 처리시간 동기화를 위한 ThreadLocal + */ + private static ThreadLocal local = new ThreadLocal(); + + + // 화면번호별 Count - 20110110 + private transient HashMap mScreenMap; + + // 거래코드별 Count - 20110110 + private transient HashMap mTranCdMap; + + // 어댑터별(기관) Count - 20110110 + private transient HashMap mAdapterMap; + + + public MonitorVO(String eaiServiceCode) { + this.eaiServiceCode = eaiServiceCode; + isSingle = true; + + this.mPsvPssTm = new HashMap(); + this.mPsvPssTmInPeriod = new HashMap(); + + this.createSPssCnt(); + this.createSPssCntInPeriod(); + /* + this.pssCnt = new HashMap(); + this.pssCntInPeriod = new HashMap(); + this.errPssCnt = new HashMap(); + this.errPssCntInPeriod = new HashMap(); + */ + this.mPsvMsgPssTm = new HashMap(); + + this.mScreenMap = new HashMap(); + this.mTranCdMap = new HashMap(); + this.mAdapterMap = new HashMap(); + } + + public String getEaiServiceCode() { + return this.eaiServiceCode; + } + + public void setEaiServiceCode(String eaiSvcCd){ + this.eaiServiceCode = eaiSvcCd; + } + + public String getBwkCls(){ + return this.bwkCls; + } + + public void setBwkCls(String bwkcls){ + this.bwkCls = bwkcls; + } + + public double getSumOfprocessTime(){ + return this.sumOfprocessTime; + } + + public void setSumOfprocessTime(double time){ + this.sumOfprocessTime = time; + } + + public double getSumOfProcessTimeInPeriod(){ + return this.sumOfProcessTimeInPeriod; + } + + public void setSumOfProcessTimeInPeriod(double time){ + this.sumOfProcessTimeInPeriod = time; + } + + public String getIfType(){ + return this.ifType; + } + + public void setIfType(String type){ + this.ifType = type; + } + + public boolean getIsSingle(){ + return this.isSingle; + } + + public void setIsSingle(boolean flag){ + this.isSingle = flag; + } + + public double getPsvSumOfPssTime(){ + return this.psvSumOfPssTime; + } + + public void setPsvSumOfPssTime(double time){ + this.psvSumOfPssTime = time; + } + + public double getPsvSumOfPssTimeInPeriod(){ + return this.psvSumOfPssTimeInPeriod; + } + + public void setPsvSumOfPssTimeInPeriod(double time){ + this.psvSumOfPssTimeInPeriod = time; + } + + /** + * 1. 기능 : logSequence별 처리내역 집계를 위한 메소드 호출 + * 2. 처리 개요 : + * - logSequence별 처리내역 집계를 위한 메소드 호출 + * - EAI 처리시간 : AA - 200, 400구간에서 집계 + * : SA, AS, SS - 400 구간에서 집계 + * - 수동시스템 처리시간 : AA를 제외하고 300구간에서 집계 + * 3. 주의사항 + * + * @param ifTy - 인터페이스 타입 (AA, AS, SA, SS) 스트링 + * @param single - 딘일거래일 경우 true, 복합/병렬거래일 경우 false + * @param logSequence - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태: 0 : 정상, 1 : 에러, 2 : 타임아웃, 3 : 시스템에러 + * @param svcOgNo - UUID를 나타내는 String + **/ + public void onEvent(String ifTy, boolean single, int logSequence, long msgPssTm, long msgRcvTm, int iErrorCode, String svcOgNo, + String screnNo, String intfacSendTranCd, String adapterGroupName) throws Exception{ + + if (logger.isDebug()) { + logger.debug("MonitorVO["+this.eaiServiceCode+"] "+svcOgNo+" - "+logSequence+" ["+iErrorCode+"] : " + +msgRcvTm+" / "+(msgPssTm-msgRcvTm)+" msec"); + } + + try { + this.ifType = ifTy; + this.isSingle = single; + + String logSeq = ""+logSequence; + + //---------------------------------------------------- + // 복합거래의 Outbound LogSequence 처리 + // TEST Code : dhlee 2006.01.31 + //---------------------------------------------------- + if((logSequence > 200) && (logSequence < 300)) { + if( (logSequence % 2) == 1) { + logSeq = "200"; + logSequence = 200; + } + else { + logSeq = "300"; + logSequence = 300; + } + } + else if((logSequence > 300) && (logSequence < 400)) { + if( (logSequence % 2) == 1) { + logSeq = "200"; + logSequence = 200; + } + else { + logSeq = "300"; + logSequence = 300; + } + } + //---------------------------------------------------- + + //if(isSingle == true) { + if(this.pssCnt.size() <= 0 || this.errPssCnt.size() <= 0){ + createSPssCnt(); + } + if(this.pssCntInPeriod.size() <= 0 || this.errPssCntInPeriod.size() <= 0){ + createSPssCntInPeriod(); + } + /* + } else { + if(this.pssCnt.get(logSeq) == null){ + this.createMPssCnt(logSeq); + } + if(this.pssCntInPeriod.get(logSeq) == null){ + this.createMPssCntInPeriod(logSeq); + } + } + */ + + switch(logSequence){ + case Keys.LOG_SEQ_1 : //100 + { + count100(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + break; + } + case Keys.LOG_SEQ_2 : //200 + { + + if("AA".equals(this.ifType)){ + count200AA(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + } + else{ + count200(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + } + break; + } + case Keys.LOG_SEQ_3 : //300 + { + if("AA".equals(this.ifType)){ + count300AA(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + } + else{ + count300(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + } + break; + } + case Keys.LOG_SEQ_4 : //400 + { + count400(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + break; + } + case Keys.LOG_SEQ_9 : //900 + { + count900(logSeq, msgPssTm, msgRcvTm, iErrorCode, screnNo, intfacSendTranCd, adapterGroupName); + break; + } + default : + { + if(this.mPsvPssTm.get(logSeq)==null){ + this.createMPsvTm(logSeq); + } + if(this.mPsvPssTmInPeriod.get(logSeq)==null){ + this.createMPsvTmInPeriod(logSeq); + } + if(this.mPsvMsgPssTm.get(logSeq)==null){ + this.mPsvMsgPssTm = new HashMap(); + } + + if((logSequence%2) == 1){//211, 221, 231, ... + countM01(logSeq, msgPssTm, msgRcvTm, iErrorCode); + } + else{ //212, 222, 232, ... + countM02(logSeq, msgPssTm, msgRcvTm, iErrorCode); + } + break; + } + } + } catch(Exception e) { + //if (logger.isError()) logger.error("MonitorVO["+this.eaiServiceCode+"] "+svcOgNo+" - "+logSequence+" ["+iErrorCode+"] : "+msgRcvTm+" / "+(msgPssTm-msgRcvTm)+" msec",e); + //throw new Exception("RECEAICMT101"); +// String msg = ErrorCodeHandler.getMessage("RECEAICMT101", new String[]{this.eaiServiceCode, svcOgNo, String.valueOf(logSequence), String.valueOf(iErrorCode), String.valueOf(msgRcvTm), String.valueOf(msgPssTm-msgRcvTm)}); + if (logger.isError()) { + logger.error(ExceptionUtil.make(e, "RECEAICMT101"), e); + } + } + } + + /** + * 1. 기능 : 일일 집계를 위한 reset + * 2. 처리 개요 : + * - 일일 집계를 위한 변수 초기화 + * 3. 주의사항 + * + **/ + + public void reset() { + + this.sumOfprocessTime = 0; + this.psvSumOfPssTime = 0; + + resetCount(); + + this.resetPeriod(); + + } + + /** + * 1. 기능 : 최근시간 집계를 위한 reset + * 2. 처리 개요 : + * - 최근시간 집계를 위한 변수 초기화 + * 3. 주의사항 + **/ + public void resetPeriod() { + + this.sumOfProcessTimeInPeriod = 0; + this.psvSumOfPssTimeInPeriod = 0; + + resetCountInPeriod(); + } + + /** + * 1. 기능 : 단일 거래의 처리 집계에 대한 key 값 반환 + * 2. 처리 개요 : + * - 각 로그 구간별 처리 집계를 위한 HashMap key값을 String[] 타입으로 반환 + * 3. 주의사항 + * + * @return key값에 대한 String[] + **/ + public String[] getAllPssCntKey() { + Iterator it = this.pssCnt.keySet().iterator(); + + String[] psskey = new String[this.pssCnt.size()]; + String key = null; + for(int i = 0; it.hasNext(); i++){ + key = (String)it.next(); + if(key == null) key = ""; + psskey[i] = key; + } + + Arrays.sort(psskey); + + return psskey; + } + + + /** + * 1. 기능 : 단일 거래의 에러 처리 집계에 대한 key 값 반환 + * 2. 처리 개요 : + * - 각 로그 구간별 처리 집계를 위한 HashMap key값을 String[] 타입으로 반환 + * 3. 주의사항 + * + * @return key값에 대한 String[] + **/ + public String[] getAllErrPssCntKey() { + Iterator it = this.errPssCnt.keySet().iterator(); + + String[] psskey = new String[this.errPssCnt.size()]; + + String key = null; + for(int i = 0; it.hasNext(); i++){ + key = (String)it.next(); + if(key == null) key = ""; + psskey[i] = key; + } + + Arrays.sort(psskey); + return psskey; + } + + + /** + * 1. 기능 : 복합 거래의 처리 집계에 대한 key 값 반환 + * 2. 처리 개요 : + * - 각 로그 구간별 처리 집계를 위한 HashMap key값을 String[] 타입으로 반환 + * 3. 주의사항 + * + * @return key값에 대한 String[] + **/ + public String[] getAllmPsvCntKey() { + Iterator it = this.mPsvPssTm.keySet().iterator(); + + String[] psskey = new String[this.mPsvPssTm.size()]; + String key = null; + for(int i = 0; it.hasNext(); i++){ + key = (String)it.next(); + if(key == null) key = ""; + psskey[i] = key; + } + Arrays.sort(psskey); + return psskey; + } + + public HashMap getPssCnt(){ + return this.pssCnt; + } + + public void setPssCnt(HashMap map){ + this.pssCnt = map; + } + + public HashMap getPssCntInPeriod(){ + return this.pssCntInPeriod; + } + + public void setPssCntInPeriod(HashMap map){ + this.pssCntInPeriod = map; + } + + public HashMap getErrPssCnt(){ + return this.errPssCnt; + } + + public void setErrPssCnt(HashMap map){ + this.errPssCnt = map; + } + + public HashMap getErrPssCntInPeriod(){ + return this.errPssCntInPeriod; + } + + public void setErrPssCntInPeriod(HashMap map){ + this.errPssCntInPeriod = map; + } + + public String toString() { + StringBuffer sb = new StringBuffer(); + sb.append("eaiServiceCode = ["+eaiServiceCode+"]\n"); + + String key[] = this.getAllPssCntKey(); + String mkey[] = this.getAllmPsvCntKey(); + + if(key !=null){ + for(int i=0; i< key.length; i++){ + sb.append("pssCount [ "+ key[i]+" ] "+ this.pssCnt.get(key[i])+"\n"); + sb.append("errCount [ "+ key[i]+" ] "+ this.errPssCnt.get(key[i])+"\n"); + sb.append("pssCountInPeriod [ " + key[i]+" ] "+this.pssCntInPeriod.get(key[i])+"\n"); + sb.append("errCountInPeriod [ "+ key[i]+" ] "+ this.errPssCntInPeriod.get(key[i])+"\n"); + } + + sb.append("sumOfprocessTime :" +this.sumOfprocessTime+"\n"); + sb.append("sumOfProcessTimeInPeriod : "+this.sumOfProcessTimeInPeriod+"\n"); + sb.append("psvSumOfPssTime : "+this.psvSumOfPssTime+"\n"); + sb.append("psvSumOfPssTimeInPeriod : "+this.psvSumOfPssTimeInPeriod+"\n"); + } + + if(mkey != null) { + for(int i=0; i < mkey.length; i++){ + sb.append("mPsvPssTm [ "+ mkey[i]+" ] "+this.mPsvPssTm.get(mkey[i])+"\n"); + sb.append("mPsvPssTmInPeriod [ "+ mkey[i]+" ] "+this.mPsvPssTmInPeriod.get(mkey[i])+"\n"); + } + } + return sb.toString(); + } + + /** + * 1. 기능 : 로그처리구간 100을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃, 3 : 시스템에러 + * @param screnNo - 화면번호 + * @param intfacSendTranCd - 거래코드 + * @param adapterGroupName - 기관명/어댑터명 + **/ + synchronized private void count100(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName) { + if(iErrorCode == 0){ + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + } + else { + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + } + addStatCount("100", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + + /** + * 1. 기능 : 로그처리구간 200을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * - AA가 아닌 경우 수동시스템 처리시간을 집계하기위해 수동 시스템으로 전송한 시각 저장 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void count200(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName){ + if(iErrorCode == 0) { + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + + local.set(new Long(msgPssTm)); + } + else{ + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + } + + addStatCount("200", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + + /** + * 1. 기능 : AA 요청거래에 대한 로그처리구간 200을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * - EAI 서비스 시간 = 200구간 처리시각 - 메시지 수신시각 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void count200AA(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName){ + if(iErrorCode == 0) { + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + + long tmpPssTm = msgPssTm - msgRcvTm; + this.sumOfprocessTime = this.sumOfprocessTime + tmpPssTm; + this.sumOfProcessTimeInPeriod = this.sumOfProcessTimeInPeriod + tmpPssTm ; + + addStatCount("200", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + tmpPssTm, 0); + + } + else{ + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + + addStatCount("200", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + } + + /** + * 1. 기능 : AA인터페이스를 제외한 인터페이스의 로그처리구간 300을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * - 수동시스템 처리 시간 = 300구간 처리시각 - 200구간 처리시각 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void count300(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName) throws Exception{ + if(iErrorCode == 0) { + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + + Long threadData = (Long)local.get(); + if(threadData==null) { + String errorText = ErrorCodeHandler.getMessage("RECEAICMT102"); + if (logger.isError()) logger.error(ExceptionUtil.make("RECEAICMT102", errorText)); + //throw new Exception("RECEAICMT102"); + } + long msgPssTime = threadData.longValue(); + + if(msgPssTime <= 0){ + if (logger.isDebug()) + logger.debug(">> MonitorVO ] count300() 수동시스템으로 전송된 시각이 없어 수동시스템 처리시간을 계산할 수 없습니다."); + } + else{ + this.psvSumOfPssTime = this.psvSumOfPssTime + (msgPssTm - msgPssTime); + this.psvSumOfPssTimeInPeriod = this.psvSumOfPssTimeInPeriod + (msgPssTm - msgPssTime); + } + addStatCount("300", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, (msgPssTm - msgPssTime)); + } + else { + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + addStatCount("300", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + } + + /** + * 1. 기능 : AA인터페이스의 로그처리구간 300을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void count300AA(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName) throws Exception{ + if(iErrorCode == 0) { + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + } + else { + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + } + addStatCount("300", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + + /** + * 1. 기능 : 모든인터페이스 로그처리구간 400을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * - EAI 서비스 시간 = 400구간 처리시각 - 메시지 수신시각 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void count400(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName){ + if(iErrorCode == 0) { + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + + long tmpPssTm = msgPssTm - msgRcvTm; + this.sumOfprocessTime = this.sumOfprocessTime + tmpPssTm; + this.sumOfProcessTimeInPeriod = this.sumOfProcessTimeInPeriod + tmpPssTm ; + addStatCount("400", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + tmpPssTm, 0); + } + else{ + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + addStatCount("400", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + } + + /** + * 1. 기능 : 로그처리구간 900을 위한 집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 단일거래의 경우 100, 200, 300, 400, 900. 복합거래의 경우 100, 211, 212, 221, 222...., 400 + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void count900(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode, + String screnNo, String intfacSendTranCd, String adapterGroupName){ + if(iErrorCode == 0){ + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + } + else { + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + } + addStatCount("900", iErrorCode, screnNo, intfacSendTranCd, adapterGroupName, + 0, 0); + } + + /** + * 1. 기능 : 복합거래 인터페이스 요청 (211, 221, 231,... )집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * - EAI 서비스 시간 = 400구간 처리시각 - 메시지 수신시각 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 211, 221, 231,... + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + + synchronized private void countM01(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode){ + if(iErrorCode == 0){ + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + + //수동시스템으로 보낸 시각을 저장 + this.mPsvMsgPssTm.put(logSeq, ""+msgPssTm); + + } + else { + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + } + } + + /** + * 1. 기능 : 복합거래 인터페이스 응답 (212, 222, 232,... )집계 메소드 + * 2. 처리 개요 : + * - 에러와 정상의 각 처리건수 누적 + * - 여러 쓰레드가 동시에 사용되지 않도록 synchronized 됨 + * - EAI 서비스 시간 = 400구간 처리시각 - 메시지 수신시각 + * 3. 주의사항 + * + * @param logSeq - 로그처리구간을 나타내는 int. 212, 222, 232,... + * @param msgPssTm - 각 구간 메시지 처리시각 + * @param msgRcvTm - EAI Message 수신시각. EAI 시스템의 최초 수신시각 + * @param iErrorCode - error 상태 - 0 정상, 1 에러, 2 타임아웃 + **/ + synchronized private void countM02(String logSeq, long msgPssTm, long msgRcvTm, int iErrorCode){ + if(iErrorCode == 0){ + long psstmp = Long.parseLong((this.pssCnt.get(logSeq).toString())); + long psstmpIn = Long.parseLong((this.pssCntInPeriod.get(logSeq).toString())); + psstmp++; + psstmpIn++; + + this.pssCnt.put(logSeq,""+psstmp); + this.pssCntInPeriod.put(logSeq,""+psstmpIn); + + long tmpMsgPss = Long.parseLong(this.mPsvMsgPssTm.get(""+(Integer.parseInt(logSeq)-1)).toString()); + long processTm = 0; + + if(tmpMsgPss <= 0){ + if (logger.isDebug()) logger.debug(">> MonitorVO ] countM02() 수동시스템으로 전송된 시각이 없어 수동시스템 처리시간을 계산할 수 없습니다."); + }else{ + processTm = msgPssTm - tmpMsgPss; + } + + double tmpSum = Long.parseLong((this.mPsvPssTm.get(logSeq).toString())); + double tmpSumIn = Long.parseLong((this.mPsvPssTmInPeriod.get(logSeq).toString())); + + tmpSum = tmpSum + processTm; + tmpSumIn = tmpSumIn + processTm; + + this.mPsvPssTm.put(logSeq, ""+tmpSum); + this.mPsvPssTmInPeriod.put(logSeq, ""+tmpSumIn); + + this.mPsvMsgPssTm.put(""+(Integer.parseInt(logSeq)-1), ""+0); + } + else { + if(iErrorCode == 2) { + logSeq = "9" + logSeq; + } + + long errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + errtmp++; + errtmpIn++; + + this.errPssCnt.put(logSeq,""+errtmp); + this.errPssCntInPeriod.put(logSeq,""+errtmpIn); + + if(iErrorCode == 3) { + logSeq = "S" + logSeq; + long s_errtmp = Long.parseLong((this.errPssCnt.get(logSeq).toString())); + long s_errtmpIn = Long.parseLong((this.errPssCntInPeriod.get(logSeq)).toString()); + s_errtmp++; + s_errtmpIn++; + + this.errPssCnt.put(logSeq,""+s_errtmp); + this.errPssCntInPeriod.put(logSeq,""+s_errtmpIn); + } + } + } + + /** + * 1. 기능 : 단일 일 거래 집계를 위한 HashMap 생성 + * 2. 처리 개요 : + * - 단일 일일 거래 집계를 위한 HashMap의 초기화 + * 3. 주의사항 + * + **/ + private void createSPssCnt() { + if(this.pssCnt == null) + this.pssCnt = new HashMap(); + + for(int i=0; i< (LOG_SEQ.length-1); i++){ + this.pssCnt.put(LOG_SEQ[i],""+0); + } + + if(this.errPssCnt == null) + this.errPssCnt = new HashMap(); + + for(int i=0; i< LOG_SEQ.length; i++){ + this.errPssCnt.put(LOG_SEQ[i],""+0); + } + + } + + /** + * 1. 기능 : 단일 최근시간 거래 집계를 위한 HashMap 생성 + * 2. 처리 개요 : + * - 단일 최근시간 거래 집계를 위한 HashMap의 초기화 + * 3. 주의사항 + **/ + private void createSPssCntInPeriod() { + + if(this.pssCntInPeriod == null) + this.pssCntInPeriod = new HashMap(); + if(this.errPssCntInPeriod == null) + this.errPssCntInPeriod = new HashMap(); + + for(int i=0; i< LOG_SEQ.length; i++){ + this.errPssCntInPeriod.put(LOG_SEQ[i],""+0); + } + + for(int i=0; i< (LOG_SEQ.length-1); i++){ + this.pssCntInPeriod.put(LOG_SEQ[i],""+0); + } + } + + /** + * 1. 기능 : 복합 일일 거래 집계를 위한 HashMap 생성 + * 2. 처리 개요 : + * - 복합 일일 거래 집계를 위한 HashMap의 초기화 + * 3. 주의사항 + * + **/ +// private void createMPssCnt(String logSequence) { +// if(this.pssCnt == null) +// this.pssCnt = new HashMap(); +// if(this.errPssCnt == null) +// this.errPssCnt = new HashMap(); +// +// if(this.pssCnt.get(logSequence) == null) +// this.pssCnt.put(logSequence, ""+0); +// if(this.errPssCnt.get(logSequence) == null) +// this.errPssCnt.put(logSequence, ""+0); +// } + + /** + * 1. 기능 : 복합 일일 거래 수동시스템 처리시간 집계를 위한 HashMap 생성 + * 2. 처리 개요 : + * - 복합 일일 거래 수동시스템 처리시간 집계를 위한 HashMap의 초기화 + * 3. 주의사항 + **/ + private void createMPsvTm(String logSequence) { + if(this.mPsvPssTm == null) + this.mPsvPssTm = new HashMap(); + + if(this.mPsvPssTm.get(logSequence) == null) + this.mPsvPssTm.put(logSequence, ""+0); + } + + /** + * 1. 기능 : 복합 최근시간 거래 집계를 위한 HashMap 생성 + * 2. 처리 개요 : + * - 복합 최근시간 거래 집계를 위한 HashMap의 초기화 + * 3. 주의사항 + * + **/ +// private void createMPssCntInPeriod(String logSequence) { +// if(this.pssCntInPeriod == null) +// this.pssCntInPeriod = new HashMap(); +// if(this.errPssCntInPeriod == null) +// this.errPssCntInPeriod = new HashMap(); +// +// if(this.pssCntInPeriod.get(logSequence) == null) +// this.pssCntInPeriod.put(logSequence, ""+0); +// if(this.errPssCntInPeriod.get(logSequence) == null) +// this.errPssCntInPeriod.put(logSequence, ""+0); +// } + + + /** + * 1. 기능 : 복합 최신시각 거래 수동시스템 처리시간 집계를 위한 HashMap 생성 + * 2. 처리 개요 : + * - 복합 최신시각 거래 수동시스템 처리시간 집계를 위한 HashMap의 초기화 + * 3. 주의사항 + **/ + private void createMPsvTmInPeriod(String logSequence) { + if(this.mPsvPssTmInPeriod == null) + this.mPsvPssTmInPeriod = new HashMap(); + + if(this.mPsvPssTmInPeriod.get(logSequence) == null) + this.mPsvPssTmInPeriod.put(logSequence, ""+0); + + } + + /** + * 1. 기능 : 일일 집계를 위한 초기화 + * 2. 처리 개요 : + * - 일일 집계를 위한 HashMap 초기화 + * 3. 주의사항 + * + **/ + synchronized private void resetCount(){ + + String[] key = this.getAllPssCntKey(); + String[] mkey = this.getAllmPsvCntKey(); + String[] ekey = this.getAllErrPssCntKey(); + + int length = key.length; + int mlength = mkey.length; + int elength = ekey.length; + + for(int i=0; i 0) { + sVo.addSumOfprocessTime(sumOfprocessTime); + iVo.addSumOfprocessTime(sumOfprocessTime); + qVo.addSumOfprocessTime(sumOfprocessTime); + } + + if(psvSumOfPssTime > 0) { + sVo.addPsvSumOfPssTime(psvSumOfPssTime); + iVo.addPsvSumOfPssTime(psvSumOfPssTime); + qVo.addPsvSumOfPssTime(psvSumOfPssTime); + } + } + +// private StatMonitorLogVO convertLogVO(StatMonitorLogVO logVo, StatMonitorVO statVo, +// String ifType, char rType) { +// +// long totCnt = 0; +// long errCnt = 0; +// long toCnt = 0; +// long succCnt = 0; +// +// logVo.setPrcssTtmVal((statVo.getSumOfprocessTime() - statVo.getPsvSumOfPssTime())); +// logVo.setPsvPrcssTtmVal(statVo.getPsvSumOfPssTime()); +// logVo.setTotalPrcssTtmVal(statVo.getSumOfprocessTime()); +// +// if("AA".equals(ifType)) { +// if( rType == 'S') { +// totCnt = statVo.getCnt100() + statVo.getErr100(); +// } else { +// totCnt = statVo.getCnt300() + statVo.getErr300(); +// } +// errCnt = statVo.getErr900(); +// toCnt = statVo.getTimeout900(); +// succCnt = totCnt - (errCnt + toCnt); +// } +// // 2011.04.28 이동훈 +// //SA 응답일 경우에는 건수를 0으로 한다. +// else if("SA".equals(ifType) && rType == 'R') { +// totCnt = 0; +// errCnt = 0; +// toCnt = 0; +// succCnt = 0; +// } +// else { +// totCnt =statVo.getCnt100() + statVo.getErr100(); +// errCnt = statVo.getErr400() + statVo.getErr900(); +// toCnt = statVo.getTimeout400(); +// succCnt = totCnt - (errCnt + toCnt); +// } +// logVo.setWholPrcssNoitm(totCnt); +// logVo.setErrzNoitm(errCnt); +// logVo.setToutNoitm(toCnt); +// logVo.setNomalNoitm(succCnt); +// +// return logVo; +// } + + public void clearStatic() { + this.mScreenMap.clear(); + this.mTranCdMap.clear(); + this.mAdapterMap.clear(); + } + + public Iterator iteratorTranCdMap() { + return mTranCdMap.keySet().iterator(); + } + + public StatMonitorVO getTranCdMonitorVo(String key) { + return (StatMonitorVO) mTranCdMap.get(key); + } + + public Iterator iteratorAdapterMap() { + return mAdapterMap.keySet().iterator(); + } + + public StatMonitorVO getAdapterMonitorVo(String key) { + return (StatMonitorVO) mAdapterMap.get(key); + } +} diff --git a/src/main/java/com/eactive/eai/common/monitor/StatMonitorLogVO.java b/src/main/java/com/eactive/eai/common/monitor/StatMonitorLogVO.java new file mode 100644 index 0000000..def18a3 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/monitor/StatMonitorLogVO.java @@ -0,0 +1,168 @@ +package com.eactive.eai.common.monitor; + +import java.io.Serializable; + +/** +* 1. 기능 : 처리내역 통계를 저장 +* 2. 처리 개요 : +* * - MonitorVO에서 해당 키별로 HashMap에 보관 +* - 스커줄러에 의해 reset되고 reset 전에 DB에 저장함 +* +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +*/ +public class StatMonitorLogVO implements Serializable { + + private String ymd; + private String hour; + private String min; + + private String bzwkDstcd; + private String svcName; + private String key; // optional + private String sevrInstncName; + private double prcssTtmVal; + private double psvPrcssTtmVal; + private double totalPrcssTtmVal; + private long wholPrcssNoitm; + private long errzNoitm; + private long toutNoitm; + private long nomalNoitm; + + public String toString() { + StringBuffer sb = new StringBuffer(); + sb.append( "ymd =" + ymd); + sb.append("\nhour =" + hour); + sb.append("\nmin =" + min); + sb.append("\nbzwkDstcd =" + bzwkDstcd); + sb.append("\nsvcName =" + svcName); + sb.append("\nkey =" + key); + sb.append("\nsevrInstncName =" + sevrInstncName); + sb.append("\nprcssTtmVal =" + prcssTtmVal); + sb.append("\npsvPrcssTtmVal =" + psvPrcssTtmVal); + sb.append("\ntotalPrcssTtmVal=" + totalPrcssTtmVal); + sb.append("\nwholPrcssNoitm =" + wholPrcssNoitm); + sb.append("\nerrzNoitm =" + errzNoitm); + sb.append("\ntoutNoitm =" + toutNoitm); + sb.append("\nnomalNoitm =" + nomalNoitm); + + return sb.toString(); + } + + public String getBzwkDstcd() { + return bzwkDstcd; + } + + public void setBzwkDstcd(String bzwkDstcd) { + this.bzwkDstcd = bzwkDstcd; + } + + public long getErrzNoitm() { + return errzNoitm; + } + + public void setErrzNoitm(long errzNoitm) { + this.errzNoitm = errzNoitm; + } + + public String getHour() { + return hour; + } + + public void setHour(String hour) { + this.hour = hour; + } + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public String getMin() { + return min; + } + + public void setMin(String min) { + this.min = min; + } + + public long getNomalNoitm() { + return nomalNoitm; + } + + public void setNomalNoitm(long nomalNoitm) { + this.nomalNoitm = nomalNoitm; + } + + public double getPrcssTtmVal() { + return prcssTtmVal; + } + + public void setPrcssTtmVal(double prcssTtmVal) { + this.prcssTtmVal = prcssTtmVal; + } + + public double getPsvPrcssTtmVal() { + return psvPrcssTtmVal; + } + + public void setPsvPrcssTtmVal(double psvPrcssTtmVal) { + this.psvPrcssTtmVal = psvPrcssTtmVal; + } + + public String getSevrInstncName() { + return sevrInstncName; + } + + public void setSevrInstncName(String sevrInstncName) { + this.sevrInstncName = sevrInstncName; + } + + public String getSvcName() { + return svcName; + } + + public void setSvcName(String svcName) { + this.svcName = svcName; + } + + public double getTotalPrcssTtmVal() { + return totalPrcssTtmVal; + } + + public void setTotalPrcssTtmVal(double totalPrcssTtmVal) { + this.totalPrcssTtmVal = totalPrcssTtmVal; + } + + public long getToutNoitm() { + return toutNoitm; + } + + public void setToutNoitm(long toutNoitm) { + this.toutNoitm = toutNoitm; + } + + public long getWholPrcssNoitm() { + return wholPrcssNoitm; + } + + public void setWholPrcssNoitm(long wholPrcssNoitm) { + this.wholPrcssNoitm = wholPrcssNoitm; + } + + public String getYmd() { + return ymd; + } + + public void setYmd(String ymd) { + this.ymd = ymd; + } + +} diff --git a/src/main/java/com/eactive/eai/common/monitor/StatMonitorVO.java b/src/main/java/com/eactive/eai/common/monitor/StatMonitorVO.java new file mode 100644 index 0000000..45abc1e --- /dev/null +++ b/src/main/java/com/eactive/eai/common/monitor/StatMonitorVO.java @@ -0,0 +1,249 @@ +package com.eactive.eai.common.monitor; + +import java.io.Serializable; + +/** +* 1. 기능 : 처리내역 통계를 저장 +* 2. 처리 개요 : +* * - MonitorVO에서 해당 키별로 HashMap에 보관 +* - 스커줄러에 의해 reset되고 reset 전에 DB에 저장함 +* +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +*/ +public class StatMonitorVO implements Serializable { + // 정상처리 + private long cnt100; + private long cnt200; + private long cnt300; + private long cnt400; + + // 에러 + private long err100; + private long err200; + private long err300; + private long err400; + private long err900; + + // 타임아웃 + private long timeout300; + private long timeout400; + private long timeout900; + + // 시스템에러 (에러에 간수 포함됨, 중복 count) + private long system100; + private long system200; + private long system300; + private long system400; + private long system900; + + private double sumOfprocessTime; // 전체처리시간 + private double psvSumOfPssTime; // 수동처리시간 + + public long getCnt100() { + return cnt100; + } + public void setCnt100(long cnt100) { + this.cnt100 = cnt100; + } + public long getCnt200() { + return cnt200; + } + public void setCnt200(long cnt200) { + this.cnt200 = cnt200; + } + public long getCnt300() { + return cnt300; + } + public void setCnt300(long cnt300) { + this.cnt300 = cnt300; + } + public long getCnt400() { + return cnt400; + } + public void setCnt400(long cnt400) { + this.cnt400 = cnt400; + } + public long getErr100() { + return err100; + } + public void setErr100(long err100) { + this.err100 = err100; + } + public long getErr200() { + return err200; + } + public void setErr200(long err200) { + this.err200 = err200; + } + public long getErr300() { + return err300; + } + public void setErr300(long err300) { + this.err300 = err300; + } + public long getErr400() { + return err400; + } + public void setErr400(long err400) { + this.err400 = err400; + } + public long getErr900() { + return err900; + } + public void setErr900(long err900) { + this.err900 = err900; + } + public long getSystem100() { + return system100; + } + public void setSystem100(long system100) { + this.system100 = system100; + } + public long getSystem200() { + return system200; + } + public void setSystem200(long system200) { + this.system200 = system200; + } + public long getSystem300() { + return system300; + } + public void setSystem300(long system300) { + this.system300 = system300; + } + public long getSystem400() { + return system400; + } + public void setSystem400(long system400) { + this.system400 = system400; + } + public long getSystem900() { + return system900; + } + public void setSystem900(long system900) { + this.system900 = system900; + } + public long getTimeout300() { + return timeout300; + } + public void setTimeout300(long timeout300) { + this.timeout300 = timeout300; + } + public long getTimeout400() { + return timeout400; + } + public void setTimeout400(long timeout400) { + this.timeout400 = timeout400; + } + public long getTimeout900() { + return timeout900; + } + public void setTimeout900(long timeout900) { + this.timeout900 = timeout900; + } + public double getPsvSumOfPssTime() { + return psvSumOfPssTime; + } + public void setPsvSumOfPssTime(double psvSumOfPssTime) { + this.psvSumOfPssTime = psvSumOfPssTime; + } + public double getSumOfprocessTime() { + return sumOfprocessTime; + } + public void setSumOfprocessTime(double sumOfprocessTime) { + this.sumOfprocessTime = sumOfprocessTime; + } + + public void addCount100() { + this.cnt100++; + } + public void addCount200() { + this.cnt200++; + } + public void addCount300() { + this.cnt300++; + } + public void addCount400() { + this.cnt400++; + } + + public void addErr100() { + this.err100++; + } + public void addErr200() { + this.err200++; + } + public void addErr300() { + this.err300++; + } + public void addErr400() { + this.err400++; + } + public void addErr900() { + this.err900++; + } + + public void addTimeout300() { + this.timeout300++; + } + public void addTimeout400() { + this.timeout400++; + } + public void addTimeout900() { + this.timeout900++; + } + + public void addSystem100() { + this.system100++; + } + public void addSystem200() { + this.system200++; + } + public void addSystem300() { + this.system300++; + } + public void addSystem400() { + this.system400++; + } + public void addSystem900() { + this.system900++; + } + + public void addSumOfprocessTime(double sumOfprocessTime) { + this.sumOfprocessTime += sumOfprocessTime; + } + + public void addPsvSumOfPssTime(double psvSumOfPssTime) { + this.psvSumOfPssTime += psvSumOfPssTime; + } + + public String toString() { + StringBuffer sb = new StringBuffer(); + sb.append("100=" + cnt100); + sb.append(",200=" + cnt200); + sb.append(",300=" + cnt300); + sb.append(",400=" + cnt400); + sb.append(",E100=" + err100); + sb.append(",E200=" + err200); + sb.append(",E300=" + err300); + sb.append(",E400=" + err400); + sb.append(",E900=" + err900); + sb.append(",T300=" + timeout300); + sb.append(",T400=" + timeout400); + sb.append(",T900=" + timeout900); + sb.append(",S100=" + system100); + sb.append(",S200=" + system200); + sb.append(",S300=" + system300); + sb.append(",S400=" + system400); + sb.append(",S900=" + system900); + sb.append(",sumOfprocessTime=" + sumOfprocessTime); + sb.append(",psvSumOfPssTime=" + psvSumOfPssTime); + return sb.toString(); + } + +} diff --git a/src/main/java/com/eactive/eai/common/property/FileLoggerPropertyChangeListener.java b/src/main/java/com/eactive/eai/common/property/FileLoggerPropertyChangeListener.java new file mode 100644 index 0000000..b3d4db9 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/FileLoggerPropertyChangeListener.java @@ -0,0 +1,35 @@ +package com.eactive.eai.common.property; + +import com.eactive.eai.common.util.LogKeys; +import com.eactive.eai.common.util.Logger; + +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; + +public class FileLoggerPropertyChangeListener implements PropertyChangeListener { + + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + @Override + public void propertyChange(PropertyChangeEvent evt) { + + PropManager prptManager = PropManager.getInstance(); + PropGroupVO propGroupVO = (PropGroupVO)evt.getSource(); + String loggerNames = prptManager.getProperty(LogKeys.LOGGER_INFO, LogKeys.LOGGER_LIST); + + if ( loggerNames != null && + loggerNames.contains( propGroupVO.getName() ) ) { + + if ( logger.isDebugEnabled() ) { + logger.debug("FileLoggerPropertyChangeListener propertyChange() " + propGroupVO.getName() ); + } + Logger.setLoggerLevel(propGroupVO.getName()); + } + } + + @Override + public boolean equals(Object obj) { + return obj instanceof FileLoggerPropertyChangeListener; + } + +} diff --git a/src/main/java/com/eactive/eai/common/property/PropGroupVO.java b/src/main/java/com/eactive/eai/common/property/PropGroupVO.java new file mode 100644 index 0000000..07dd288 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/PropGroupVO.java @@ -0,0 +1,118 @@ +package com.eactive.eai.common.property; + +import com.eactive.eai.common.util.NullControl; + +import java.io.Serializable; +import java.util.Arrays; +import java.util.Iterator; +import java.util.Properties; + +/** +* 1. 기능 : 프라퍼티 정보를 를 정의한 Java Value Object 클래스 +* 2. 처리 개요 : 프라퍼티 정보를 정의한다. +* * - +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public class PropGroupVO implements Serializable +{ + private String name; //프라퍼티 그룹명[TSEAICM02.PrptyGroupName] + //private String eaiServer; // Migration + private String description; //프라퍼티 그룹설명[TSEAICM02.PrptyGroupDesc] + private Properties props; //프라퍼티 명, 프라퍼티2값[TSEAICM02.PrptyName, TSEAICM02.Prpty2Val] + + public PropGroupVO() { + this(""); + } + + public PropGroupVO(String name) { + this(name,""); + } + + public PropGroupVO(String name, String description) { + this.name = name; + this.description = description; + this.props = new Properties(); + } + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return this.name; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getDescription() { + return NullControl.trimSpace(this.description); + } + + public String getProperty(String key) { + return (String)props.get(key); + } + + public String getProperty(String key, String defaultValue) { + String value = (String)props.get(key); + return (value==null) ? defaultValue : value; + } + + public void addProperty(String key, String value) { + props.put(key, value); + } + + public void setProperty(String key, String value) { + props.put(key,value); + } + + public void removeProperty(String key) { + props.remove(key); + } + + public String[] keys() { + Iterator it = this.props.keySet().iterator(); + String[] propKeys = new String[this.props.size()]; + for(int i = 0; it.hasNext(); i++){ + propKeys[i] = (String)it.next(); + } + Arrays.sort(propKeys); + return propKeys; + } + + public Properties getProperties() { + return props; + } + + public String toString() { + StringBuffer sb = new StringBuffer(); + sb.append("PropGroupVO[ name=").append(name); +// sb.append(", eaiServer=").append(eaiServer); + sb.append(", description=").append(description); + sb.append(", Properties=").append(props); + sb.append(" ]"); + + return sb.toString(); + } + + public void setProperties(Properties prop){ + this.props = prop; + } +// Migration - Start +// public void setEaiServer(String eaiServer) { +// this.eaiServer = eaiServer; +// } +// +// public String getEaiServer() { +// return this.eaiServer; +// } +// Migration - End + +} diff --git a/src/main/java/com/eactive/eai/common/property/PropManager.java b/src/main/java/com/eactive/eai/common/property/PropManager.java new file mode 100644 index 0000000..60f05d2 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/PropManager.java @@ -0,0 +1,197 @@ +package com.eactive.eai.common.property; + +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.beans.PropertyChangeSupport; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.Properties; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import com.eactive.eai.common.dao.DAOException; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.lifecycle.Lifecycle; +import com.eactive.eai.common.lifecycle.LifecycleException; +import com.eactive.eai.common.lifecycle.LifecycleListener; +import com.eactive.eai.common.lifecycle.LifecycleSupport; +import com.eactive.eai.common.util.ApplicationContextProvider; +import com.eactive.eai.common.util.Logger; + +@Component +public class PropManager implements Lifecycle { + static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + private LifecycleSupport lifecycle = new LifecycleSupport(this); + + private PropertyChangeSupport property = new PropertyChangeSupport(this); + + private Map groups = new HashMap<>(); + + private boolean started; + + @Autowired + private PropertyDAO propertyDAO; + + private PropManager() { + } + + public static PropManager getInstance() { + return ApplicationContextProvider.getContext().getBean(PropManager.class); + } + + public void addPropertyChangeListener(PropertyChangeListener listener) { + property.addPropertyChangeListener(listener); + } + + public void removePropertyChangeListener(PropertyChangeListener listener) { + property.removePropertyChangeListener(listener); + } + + private PropertyChangeEvent createEvent(PropGroupVO source, String propertyName, Object oldValue, Object newValue) { + return new PropertyChangeEvent(source, propertyName, oldValue, newValue); + } + + public boolean isStarted() { + return this.started; + } + + public void start() throws LifecycleException { + if (started) + throw new LifecycleException("RECEAICPM201"); + + lifecycle.fireLifecycleEvent(STARTING_EVENT, this); + + try { + init(); + } catch (Exception e) { + throw new LifecycleException(ExceptionUtil.getErrorCode(e, "RECEAICPM201")); + } + + started = true; + logger.info("PropManager] It is started."); + lifecycle.fireLifecycleEvent(STARTED_EVENT, this); + } + + private void init() throws DAOException { + this.groups = propertyDAO.getAllProperties(); + + } + + public synchronized void reload() throws DAOException { + if (logger.isWarn()) { + logger.warn("PropManager] reload all Started ..."); + } + init(); + if (logger.isWarn()) { + logger.warn("PropManager] reload all finished ..."); + } + } + + public synchronized void reload(String keyName) throws Exception { + PropGroupVO vo = propertyDAO.getProperties(keyName); + if (vo != null) { + this.groups.put(keyName, vo); + property.firePropertyChange(createEvent(vo, keyName, null, null)); + } else { + throw new Exception("PropManager not found in Database : key[" + keyName + "]"); + } + } + + public void stop() throws LifecycleException { + if (!started) + throw new LifecycleException("RECEAICPM203"); + + lifecycle.fireLifecycleEvent(STOPING_EVENT, this); + + started = false; + logger.info("PropManager] It is stopped."); + lifecycle.fireLifecycleEvent(STOPPED_EVENT, this); + } + + public void addLifecycleListener(LifecycleListener listener) { + lifecycle.addLifecycleListener(listener); + } + + public LifecycleListener[] findLifecycleListeners() { + return lifecycle.findLifecycleListeners(); + } + + public void removeLifecycleListener(LifecycleListener listener) { + lifecycle.removeLifecycleListener(listener); + } + + public void addPropGroupVO(String name, String description) { + groups.put(name, new PropGroupVO(name, description)); + } + + public PropGroupVO getPropGroupVO(String name) { + return groups.get(name); + } + + public String getProperty(String key) { + + return getProperty(com.eactive.eai.common.server.Keys.DEFAULT_SERVER, key); + } + + public String getProperty(String group, String key) { + PropGroupVO vo = groups.get(group); + if (vo == null) + return null; + return vo.getProperty(key); + } + + public String getProperty(String group, String key, String def) { + PropGroupVO vo = groups.get(group); + if (vo == null) + return def; + return vo.getProperty(key, def); + } + + public Properties getProperties(String group) { + PropGroupVO vo = groups.get(group); + if (vo == null) + throw new RuntimeException("Cannot find the Property Group in PropManager. - " + group); + return vo.getProperties(); + } + + public boolean isContainProperties(String group) { + PropGroupVO vo = groups.get(group); + if (vo == null) + return false; + return true; + } + + public void setProperty(String group, String key, String value) { + PropGroupVO gvo = groups.get(group); + String oldValue = gvo.getProperty(key); + gvo.setProperty(key, value); + + // EVENET 발생!! + if (!oldValue.equals(value)) { + property.firePropertyChange(createEvent(gvo, key, oldValue, value)); + } + } + + public void setPropGroupVO(String group, PropGroupVO vo) { + groups.put(group, vo); + } + + public void removePropGroupVO(String name) { + groups.remove(name); + } + + public String[] getAllPropGroupNames() { + Iterator it = this.groups.keySet().iterator(); + String[] name = new String[this.groups.size()]; + for (int i = 0; it.hasNext(); i++) { + name[i] = (String) it.next(); + } + + Arrays.sort(name); + return name; + } +} diff --git a/src/main/java/com/eactive/eai/common/property/PropertyDAO.java b/src/main/java/com/eactive/eai/common/property/PropertyDAO.java new file mode 100644 index 0000000..4a5648d --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/PropertyDAO.java @@ -0,0 +1,68 @@ +package com.eactive.eai.common.property; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.eactive.eai.common.dao.BaseDAO; +import com.eactive.eai.common.dao.DAOException; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.property.loader.PropGroupLoader; +import com.eactive.eai.common.property.mapper.PropGroupMapper; +import com.eactive.eai.common.util.Logger; +import com.eactive.eai.data.entity.onl.property.PropGroup; + +@Service +@Transactional +public class PropertyDAO extends BaseDAO { + + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + @Autowired + private PropGroupLoader propGroupLoader; + + @Autowired + private PropGroupMapper propGroupMapper; + + public Map getAllProperties() throws DAOException { + try { + List propGroups = propGroupLoader.findAll(); + + Map propGroupVoMap = new HashMap<>(); + + logger.info("[ @@ Load Properties Configuration - starting >>>>>>>>>>>>>>>>> ]"); + for (PropGroup propGroup : propGroups) { + PropGroupVO propGroupVO = propGroupMapper.toVo(propGroup); + propGroupVoMap.put(propGroupVO.getName(), propGroupVO); + logger.info("@ " + propGroupVO.toString()); + } + logger.info("[>>Load Properties Configuration - ended ]"); + + return propGroupVoMap; + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICPM101")); + } + } + + public PropGroupVO getProperties(String grpNm) throws DAOException { + try { + + PropGroup propGroup = propGroupLoader.getById(grpNm); + PropGroupVO propGroupVO = propGroupMapper.toVo(propGroup); + logger.info("@ " + propGroupVO.toString()); + + return propGroupVO; + } catch (Exception e) { + String errorText = ExceptionUtil.make("RECEAICPM103", grpNm); + if (logger.isError()) + logger.error(errorText); + throw new DAOException(errorText); + } + + } + +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/property/PropertyLoginKeys.java b/src/main/java/com/eactive/eai/common/property/PropertyLoginKeys.java new file mode 100644 index 0000000..1d36555 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/PropertyLoginKeys.java @@ -0,0 +1,57 @@ +package com.eactive.eai.common.property; + +/** +* 1. 기능 : Login 에서 사용하는 상수를 정의한 Interface +* 2. 처리 개요 : +* - Login에서 사용하는 상수를 정의한 Interface +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : +* @since :JDK v1.4.2 +*/ +public interface PropertyLoginKeys +{ + //로그인 및 로그아웃 + public static String LOGIN = "LOGIN"; + public static String LOGIN_SERVICE_ID = "LOGIN_SERVICE_ID"; + public static String LOGOUT_SERVICE_ID = "LOGOUT_SERVICE_ID"; + public static String SKIP_SERVICE_ID = "SKIP_SERVICE_ID"; + public static String LOGIN_VALIDATION_YN = "LOGIN_VALIDATION_YN"; + public static String LOGIN_DUP_CHECK_YN = "LOGIN_DUP_CHECK_YN"; + public static String UUID_VALIDATION_YN = "UUID_VALIDATION_YN"; + + //메시지 및 코드 + public static String DUPLICATE_LOGIN_CODE = "DUPLICATE_LOGIN_CODE"; + public static String DUPLICATE_LOGIN_MSG = "DUPLICATE_LOGIN_MSG"; + public static String VALIDATION_LOGIN_CODE = "VALIDATION_LOGIN_CODE"; + public static String VALIDATION_LOGIN_MSG = "VALIDATION_LOGIN_MSG"; + + //결과추출항목 + public static String LOGIN_USER_NM = "LOGIN_USER_NM"; + public static String LOGIN_BRN_CD = "LOGIN_BRN_CD"; // 소속국 + public static String LOGIN_BRN_NM = "LOGIN_BRN_NM"; + public static String LOGIN_ROFC_CD = "LOGIN_ROFC_CD"; //소속청 + public static String LOGIN_TERMINAL_ID = "LOGIN_TERMINAL_ID"; //터미널ID + + //로그인 로그 + public static String LOGIN_LOGGING_YN = "LOGIN_LOGGING_YN"; + + + //thread 관련 + public static String LOGOUT_MAX_THREAD = "LOGOUT_MAX_THREAD"; + public static String LOGOUT_MAX_QUEUE = "LOGOUT_MAX_QUEUE"; + + //개시거래 + public static String BEGIN = "BEGIN"; + public static String BEGIN_SERVICE_ID_ATM = "BEGIN_SERVICE_ID_ATM";//자동화기기 + public static String BEGIN_SERVICE_ID_UNMANNED = "BEGIN_SERVICE_ID_UNMANNED";//공과금무인수납기 + + //결과추출항목(표준전문) + public static String BEGIN_BRN_CD = "BEGIN_BRN_CD"; // 소속국 + public static String BEGIN_ROFC_CD = "BEGIN_ROFC_CD"; //소속청 + + + +} diff --git a/src/main/java/com/eactive/eai/common/property/RmsPropPropertyChangeListener.java b/src/main/java/com/eactive/eai/common/property/RmsPropPropertyChangeListener.java new file mode 100644 index 0000000..c71628b --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/RmsPropPropertyChangeListener.java @@ -0,0 +1,43 @@ +package com.eactive.eai.common.property; + +import com.eactive.eai.common.util.Logger; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.lang.reflect.Method; + +public class RmsPropPropertyChangeListener implements PropertyChangeListener { + + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + @Override + public void propertyChange(PropertyChangeEvent evt) { + + PropManager prptManager = PropManager.getInstance(); + PropGroupVO propGroupVO = (PropGroupVO)evt.getSource(); + + if ( propGroupVO != null && "RMS_PROPS".equals(propGroupVO.getName()) ) { + + if ( logger.isDebugEnabled() ) { + logger.debug("RmsPropPropertyChangeListener propertyChange() " + propGroupVO.getName() ); + } + try{ + Class clazz = Class.forName("com.eactive.eai.rms.client.context.RmsContext"); + //Object factory = clazz.newInstance(); + Method method = clazz.getMethod("getInstance"); + //ClassPathXmlApplicationContext context = (ClassPathXmlApplicationContext)method.invoke(null,null); + ClassPathXmlApplicationContext context = (ClassPathXmlApplicationContext)method.invoke(null); + context.refresh(); + }catch(Exception e){ + logger.error("RmsPropPropertyChangeListener propertyChange() error " + propGroupVO.getName() , e ); + } + } + } + + @Override + public boolean equals(Object obj) { + return obj instanceof RmsPropPropertyChangeListener; + } + +} diff --git a/src/main/java/com/eactive/eai/common/property/mapper/PropGroupMapper.java b/src/main/java/com/eactive/eai/common/property/mapper/PropGroupMapper.java new file mode 100644 index 0000000..f04f4d3 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/property/mapper/PropGroupMapper.java @@ -0,0 +1,31 @@ +package com.eactive.eai.common.property.mapper; + +import java.util.List; +import java.util.Properties; + +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; + +import com.eactive.eai.common.property.PropGroupVO; +import com.eactive.eai.common.util.NullControl; +import com.eactive.eai.data.entity.onl.property.Prop; +import com.eactive.eai.data.entity.onl.property.PropGroup; +import com.eactive.eai.data.mapper.BaseMapperConfig; +import com.eactive.eai.data.mapper.GenericMapper; + +@Mapper(config = BaseMapperConfig.class) +public interface PropGroupMapper extends GenericMapper { + + @Mapping(source = "prptygroupname", target = "name") + @Mapping(source = "prptygroupdesc", target = "description") + @Mapping(source = "props", target = "properties") + @Override + PropGroupVO toVo(PropGroup entity); + + default Properties map(List props) { + Properties properties = new Properties(); + props.stream().forEach(p -> properties.put(p.getId().getPrptyname(), NullControl.trimSpace(p.getPrpty2val()))); + return properties; + } + +} diff --git a/src/main/java/com/eactive/eai/common/seed/AnsiX923Padding.java b/src/main/java/com/eactive/eai/common/seed/AnsiX923Padding.java new file mode 100644 index 0000000..ce28d9a --- /dev/null +++ b/src/main/java/com/eactive/eai/common/seed/AnsiX923Padding.java @@ -0,0 +1,91 @@ +package com.eactive.eai.common.seed; + +/** + * + */ +public class AnsiX923Padding implements CryptoPaddingImpl { + + /** 패딩 규칙 이름 */ + private String name = "ANSI-X.923-Padding"; + + private final byte PADDING_VALUE = 0x00; + + /** + * 요청한 Block Size를 맞추기 위해 Padding을 추가한다. + * + * @param source + * byte[] 패딩을 추가할 bytes + * @param blockSize + * int block size + * @return byte[] 패딩이 추가 된 결과 bytes + */ + public byte[] addPadding(byte[] source, int blockSize) { + int paddingCnt = source.length % blockSize; + byte[] paddingResult = null; + + if(paddingCnt != 0) { + paddingResult = new byte[source.length + (blockSize - paddingCnt)]; + + System.arraycopy(source, 0, paddingResult, 0, source.length); + + // 패딩해야 할 갯수 - 1 (마지막을 제외)까지 0x00 값을 추가한다. + int addPaddingCnt = blockSize - paddingCnt; + for(int i=0;i +* This class is used to encode and decode data in Base64 format as described in RFC 1521. +* +*

+* This is "Open Source" software and released under the GNU/LGPL license.
+* It is provided "as is" without warranty of any kind.
+* Copyright 2003: Christian d'Heureuse, Inventec Informatik AG, Switzerland.
+* Home page: www.source-code.biz
+* +*

+* Version history:
+* 2003-07-22 Christian d'Heureuse (chdh): Module created.
+* 2005-08-11 chdh: Lincense changed from GPL to LGPL.
+* 2006-11-21 chdh:
+*   Method encode(String) renamed to encodeString(String).
+*   Method decode(String) renamed to decodeString(String).
+*   New method encode(byte[],int) added.
+*   New method decode(String) added.
+*/ + +public class Base64Coder { + +// Mapping table from 6-bit nibbles to Base64 characters. +private static char[] map1 = new char[64]; + static { + int i=0; + for (char c='A'; c<='Z'; c++) map1[i++] = c; + for (char c='a'; c<='z'; c++) map1[i++] = c; + for (char c='0'; c<='9'; c++) map1[i++] = c; + map1[i++] = '+'; map1[i++] = '/'; } + +// Mapping table from Base64 characters to 6-bit nibbles. +private static byte[] map2 = new byte[128]; + static { + for (int i=0; iin. +* @return A character array with the Base64 encoded data. +*/ +public static char[] encode (byte[] in, int iLen) { + int oDataLen = (iLen*4+2)/3; // output length without padding + int oLen = ((iLen+2)/3)*4; // output length including padding + char[] out = new char[oLen]; + int ip = 0; + int op = 0; + while (ip < iLen) { + int i0 = in[ip++] & 0xff; + int i1 = ip < iLen ? in[ip++] & 0xff : 0; + int i2 = ip < iLen ? in[ip++] & 0xff : 0; + int o0 = i0 >>> 2; + int o1 = ((i0 & 3) << 4) | (i1 >>> 4); + int o2 = ((i1 & 0xf) << 2) | (i2 >>> 6); + int o3 = i2 & 0x3F; + out[op++] = map1[o0]; + out[op++] = map1[o1]; + out[op] = op < oDataLen ? map1[o2] : '='; op++; + out[op] = op < oDataLen ? map1[o3] : '='; op++; } + return out; } + +/** +* Decodes a string from Base64 format. +* @param s a Base64 String to be decoded. +* @return A String containing the decoded data. +* @throws IllegalArgumentException if the input is not valid Base64 encoded data. +*/ +public static String decodeString (String s) { + return new String(decode(s)); } + +/** +* Decodes a byte array from Base64 format. +* @param s a Base64 String to be decoded. +* @return An array containing the decoded data bytes. +* @throws IllegalArgumentException if the input is not valid Base64 encoded data. +*/ +public static byte[] decode (String s) { + return decode(s.toCharArray()); } + +/** +* Decodes a byte array from Base64 format. +* No blanks or line breaks are allowed within the Base64 encoded data. +* @param in a character array containing the Base64 encoded data. +* @return An array containing the decoded data bytes. +* @throws IllegalArgumentException if the input is not valid Base64 encoded data. +*/ +public static byte[] decode (char[] in) { + int iLen = in.length; + if (iLen%4 != 0) throw new IllegalArgumentException ("Length of Base64 encoded input string is not a multiple of 4."); + while (iLen > 0 && in[iLen-1] == '=') iLen--; + int oLen = (iLen*3) / 4; + byte[] out = new byte[oLen]; + int ip = 0; + int op = 0; + while (ip < iLen) { + int i0 = in[ip++]; + int i1 = in[ip++]; + int i2 = ip < iLen ? in[ip++] : 'A'; + int i3 = ip < iLen ? in[ip++] : 'A'; + if (i0 > 127 || i1 > 127 || i2 > 127 || i3 > 127) + throw new IllegalArgumentException ("Illegal character in Base64 encoded data."); + int b0 = map2[i0]; + int b1 = map2[i1]; + int b2 = map2[i2]; + int b3 = map2[i3]; + if (b0 < 0 || b1 < 0 || b2 < 0 || b3 < 0) + throw new IllegalArgumentException ("Illegal character in Base64 encoded data."); + int o0 = ( b0 <<2) | (b1>>>4); + int o1 = ((b1 & 0xf)<<4) | (b2>>>2); + int o2 = ((b2 & 3)<<6) | b3; + out[op++] = (byte)o0; + if (op + * 한국정보보호진흥원에서 제공하는 Java API를 조금 수정 함.
+ * Padding은 ANSI X.923을 사용 함. + * + */ + +public class SeedCipher { + + private int SS0[] = { 0x2989a1a8, 0x5858184, 0x16c6d2d4, 0x13c3d3d0, + 0x14445054, 0x1d0d111c, 0x2c8ca0ac, 0x25052124, 0x1d4d515c, + 0x3434340, 0x18081018, 0x1e0e121c, 0x11415150, 0x3cccf0fc, + 0xacac2c8, 0x23436360, 0x28082028, 0x4444044, 0x20002020, + 0x1d8d919c, 0x20c0e0e0, 0x22c2e2e0, 0x8c8c0c8, 0x17071314, + 0x2585a1a4, 0xf8f838c, 0x3030300, 0x3b4b7378, 0x3b8bb3b8, + 0x13031310, 0x12c2d2d0, 0x2ecee2ec, 0x30407070, 0xc8c808c, + 0x3f0f333c, 0x2888a0a8, 0x32023230, 0x1dcdd1dc, 0x36c6f2f4, + 0x34447074, 0x2ccce0ec, 0x15859194, 0xb0b0308, 0x17475354, + 0x1c4c505c, 0x1b4b5358, 0x3d8db1bc, 0x1010100, 0x24042024, + 0x1c0c101c, 0x33437370, 0x18889098, 0x10001010, 0xcccc0cc, + 0x32c2f2f0, 0x19c9d1d8, 0x2c0c202c, 0x27c7e3e4, 0x32427270, + 0x3838380, 0x1b8b9398, 0x11c1d1d0, 0x6868284, 0x9c9c1c8, + 0x20406060, 0x10405050, 0x2383a3a0, 0x2bcbe3e8, 0xd0d010c, + 0x3686b2b4, 0x1e8e929c, 0xf4f434c, 0x3787b3b4, 0x1a4a5258, + 0x6c6c2c4, 0x38487078, 0x2686a2a4, 0x12021210, 0x2f8fa3ac, + 0x15c5d1d4, 0x21416160, 0x3c3c3c0, 0x3484b0b4, 0x1414140, + 0x12425250, 0x3d4d717c, 0xd8d818c, 0x8080008, 0x1f0f131c, + 0x19899198, 0, 0x19091118, 0x4040004, 0x13435350, 0x37c7f3f4, + 0x21c1e1e0, 0x3dcdf1fc, 0x36467274, 0x2f0f232c, 0x27072324, + 0x3080b0b0, 0xb8b8388, 0xe0e020c, 0x2b8ba3a8, 0x2282a2a0, + 0x2e4e626c, 0x13839390, 0xd4d414c, 0x29496168, 0x3c4c707c, + 0x9090108, 0xa0a0208, 0x3f8fb3bc, 0x2fcfe3ec, 0x33c3f3f0, + 0x5c5c1c4, 0x7878384, 0x14041014, 0x3ecef2fc, 0x24446064, + 0x1eced2dc, 0x2e0e222c, 0xb4b4348, 0x1a0a1218, 0x6060204, + 0x21012120, 0x2b4b6368, 0x26466264, 0x2020200, 0x35c5f1f4, + 0x12829290, 0xa8a8288, 0xc0c000c, 0x3383b3b0, 0x3e4e727c, + 0x10c0d0d0, 0x3a4a7278, 0x7474344, 0x16869294, 0x25c5e1e4, + 0x26062224, 0x808080, 0x2d8da1ac, 0x1fcfd3dc, 0x2181a1a0, + 0x30003030, 0x37073334, 0x2e8ea2ac, 0x36063234, 0x15051114, + 0x22022220, 0x38083038, 0x34c4f0f4, 0x2787a3a4, 0x5454144, + 0xc4c404c, 0x1818180, 0x29c9e1e8, 0x4848084, 0x17879394, + 0x35053134, 0xbcbc3c8, 0xecec2cc, 0x3c0c303c, 0x31417170, + 0x11011110, 0x7c7c3c4, 0x9898188, 0x35457174, 0x3bcbf3f8, + 0x1acad2d8, 0x38c8f0f8, 0x14849094, 0x19495158, 0x2828280, + 0x4c4c0c4, 0x3fcff3fc, 0x9494148, 0x39093138, 0x27476364, 0xc0c0c0, + 0xfcfc3cc, 0x17c7d3d4, 0x3888b0b8, 0xf0f030c, 0xe8e828c, 0x2424240, + 0x23032320, 0x11819190, 0x2c4c606c, 0x1bcbd3d8, 0x2484a0a4, + 0x34043034, 0x31c1f1f0, 0x8484048, 0x2c2c2c0, 0x2f4f636c, + 0x3d0d313c, 0x2d0d212c, 0x404040, 0x3e8eb2bc, 0x3e0e323c, + 0x3c8cb0bc, 0x1c1c1c0, 0x2a8aa2a8, 0x3a8ab2b8, 0xe4e424c, + 0x15455154, 0x3b0b3338, 0x1cccd0dc, 0x28486068, 0x3f4f737c, + 0x1c8c909c, 0x18c8d0d8, 0xa4a4248, 0x16465254, 0x37477374, + 0x2080a0a0, 0x2dcde1ec, 0x6464244, 0x3585b1b4, 0x2b0b2328, + 0x25456164, 0x3acaf2f8, 0x23c3e3e0, 0x3989b1b8, 0x3181b1b0, + 0x1f8f939c, 0x1e4e525c, 0x39c9f1f8, 0x26c6e2e4, 0x3282b2b0, + 0x31013130, 0x2acae2e8, 0x2d4d616c, 0x1f4f535c, 0x24c4e0e4, + 0x30c0f0f0, 0xdcdc1cc, 0x8888088, 0x16061214, 0x3a0a3238, + 0x18485058, 0x14c4d0d4, 0x22426260, 0x29092128, 0x7070304, + 0x33033330, 0x28c8e0e8, 0x1b0b1318, 0x5050104, 0x39497178, + 0x10809090, 0x2a4a6268, 0x2a0a2228, 0x1a8a9298 }; + + private int SS1[] = { 0x38380830, 0xe828c8e0, 0x2c2d0d21, 0xa42686a2, + 0xcc0fcfc3, 0xdc1eced2, 0xb03383b3, 0xb83888b0, 0xac2f8fa3, + 0x60204060, 0x54154551, 0xc407c7c3, 0x44044440, 0x6c2f4f63, + 0x682b4b63, 0x581b4b53, 0xc003c3c3, 0x60224262, 0x30330333, + 0xb43585b1, 0x28290921, 0xa02080a0, 0xe022c2e2, 0xa42787a3, + 0xd013c3d3, 0x90118191, 0x10110111, 0x4060602, 0x1c1c0c10, + 0xbc3c8cb0, 0x34360632, 0x480b4b43, 0xec2fcfe3, 0x88088880, + 0x6c2c4c60, 0xa82888a0, 0x14170713, 0xc404c4c0, 0x14160612, + 0xf434c4f0, 0xc002c2c2, 0x44054541, 0xe021c1e1, 0xd416c6d2, + 0x3c3f0f33, 0x3c3d0d31, 0x8c0e8e82, 0x98188890, 0x28280820, + 0x4c0e4e42, 0xf436c6f2, 0x3c3e0e32, 0xa42585a1, 0xf839c9f1, + 0xc0d0d01, 0xdc1fcfd3, 0xd818c8d0, 0x282b0b23, 0x64264662, + 0x783a4a72, 0x24270723, 0x2c2f0f23, 0xf031c1f1, 0x70324272, + 0x40024242, 0xd414c4d0, 0x40014141, 0xc000c0c0, 0x70334373, + 0x64274763, 0xac2c8ca0, 0x880b8b83, 0xf437c7f3, 0xac2d8da1, + 0x80008080, 0x1c1f0f13, 0xc80acac2, 0x2c2c0c20, 0xa82a8aa2, + 0x34340430, 0xd012c2d2, 0x80b0b03, 0xec2ecee2, 0xe829c9e1, + 0x5c1d4d51, 0x94148490, 0x18180810, 0xf838c8f0, 0x54174753, + 0xac2e8ea2, 0x8080800, 0xc405c5c1, 0x10130313, 0xcc0dcdc1, + 0x84068682, 0xb83989b1, 0xfc3fcff3, 0x7c3d4d71, 0xc001c1c1, + 0x30310131, 0xf435c5f1, 0x880a8a82, 0x682a4a62, 0xb03181b1, + 0xd011c1d1, 0x20200020, 0xd417c7d3, 0x20202, 0x20220222, 0x4040400, + 0x68284860, 0x70314171, 0x4070703, 0xd81bcbd3, 0x9c1d8d91, + 0x98198991, 0x60214161, 0xbc3e8eb2, 0xe426c6e2, 0x58194951, + 0xdc1dcdd1, 0x50114151, 0x90108090, 0xdc1cccd0, 0x981a8a92, + 0xa02383a3, 0xa82b8ba3, 0xd010c0d0, 0x80018181, 0xc0f0f03, + 0x44074743, 0x181a0a12, 0xe023c3e3, 0xec2ccce0, 0x8c0d8d81, + 0xbc3f8fb3, 0x94168692, 0x783b4b73, 0x5c1c4c50, 0xa02282a2, + 0xa02181a1, 0x60234363, 0x20230323, 0x4c0d4d41, 0xc808c8c0, + 0x9c1e8e92, 0x9c1c8c90, 0x383a0a32, 0xc0c0c00, 0x2c2e0e22, + 0xb83a8ab2, 0x6c2e4e62, 0x9c1f8f93, 0x581a4a52, 0xf032c2f2, + 0x90128292, 0xf033c3f3, 0x48094941, 0x78384870, 0xcc0cccc0, + 0x14150511, 0xf83bcbf3, 0x70304070, 0x74354571, 0x7c3f4f73, + 0x34350531, 0x10100010, 0x30303, 0x64244460, 0x6c2d4d61, + 0xc406c6c2, 0x74344470, 0xd415c5d1, 0xb43484b0, 0xe82acae2, + 0x8090901, 0x74364672, 0x18190911, 0xfc3ecef2, 0x40004040, + 0x10120212, 0xe020c0e0, 0xbc3d8db1, 0x4050501, 0xf83acaf2, 0x10101, + 0xf030c0f0, 0x282a0a22, 0x5c1e4e52, 0xa82989a1, 0x54164652, + 0x40034343, 0x84058581, 0x14140410, 0x88098981, 0x981b8b93, + 0xb03080b0, 0xe425c5e1, 0x48084840, 0x78394971, 0x94178793, + 0xfc3cccf0, 0x1c1e0e12, 0x80028282, 0x20210121, 0x8c0c8c80, + 0x181b0b13, 0x5c1f4f53, 0x74374773, 0x54144450, 0xb03282b2, + 0x1c1d0d11, 0x24250521, 0x4c0f4f43, 0, 0x44064642, 0xec2dcde1, + 0x58184850, 0x50124252, 0xe82bcbe3, 0x7c3e4e72, 0xd81acad2, + 0xc809c9c1, 0xfc3dcdf1, 0x30300030, 0x94158591, 0x64254561, + 0x3c3c0c30, 0xb43686b2, 0xe424c4e0, 0xb83b8bb3, 0x7c3c4c70, + 0xc0e0e02, 0x50104050, 0x38390931, 0x24260622, 0x30320232, + 0x84048480, 0x68294961, 0x90138393, 0x34370733, 0xe427c7e3, + 0x24240420, 0xa42484a0, 0xc80bcbc3, 0x50134353, 0x80a0a02, + 0x84078783, 0xd819c9d1, 0x4c0c4c40, 0x80038383, 0x8c0f8f83, + 0xcc0ecec2, 0x383b0b33, 0x480a4a42, 0xb43787b3 }; + + private int SS2[] = { 0xa1a82989, 0x81840585, 0xd2d416c6, 0xd3d013c3, + 0x50541444, 0x111c1d0d, 0xa0ac2c8c, 0x21242505, 0x515c1d4d, + 0x43400343, 0x10181808, 0x121c1e0e, 0x51501141, 0xf0fc3ccc, + 0xc2c80aca, 0x63602343, 0x20282808, 0x40440444, 0x20202000, + 0x919c1d8d, 0xe0e020c0, 0xe2e022c2, 0xc0c808c8, 0x13141707, + 0xa1a42585, 0x838c0f8f, 0x3000303, 0x73783b4b, 0xb3b83b8b, + 0x13101303, 0xd2d012c2, 0xe2ec2ece, 0x70703040, 0x808c0c8c, + 0x333c3f0f, 0xa0a82888, 0x32303202, 0xd1dc1dcd, 0xf2f436c6, + 0x70743444, 0xe0ec2ccc, 0x91941585, 0x3080b0b, 0x53541747, + 0x505c1c4c, 0x53581b4b, 0xb1bc3d8d, 0x1000101, 0x20242404, + 0x101c1c0c, 0x73703343, 0x90981888, 0x10101000, 0xc0cc0ccc, + 0xf2f032c2, 0xd1d819c9, 0x202c2c0c, 0xe3e427c7, 0x72703242, + 0x83800383, 0x93981b8b, 0xd1d011c1, 0x82840686, 0xc1c809c9, + 0x60602040, 0x50501040, 0xa3a02383, 0xe3e82bcb, 0x10c0d0d, + 0xb2b43686, 0x929c1e8e, 0x434c0f4f, 0xb3b43787, 0x52581a4a, + 0xc2c406c6, 0x70783848, 0xa2a42686, 0x12101202, 0xa3ac2f8f, + 0xd1d415c5, 0x61602141, 0xc3c003c3, 0xb0b43484, 0x41400141, + 0x52501242, 0x717c3d4d, 0x818c0d8d, 0x80808, 0x131c1f0f, + 0x91981989, 0, 0x11181909, 0x40404, 0x53501343, 0xf3f437c7, + 0xe1e021c1, 0xf1fc3dcd, 0x72743646, 0x232c2f0f, 0x23242707, + 0xb0b03080, 0x83880b8b, 0x20c0e0e, 0xa3a82b8b, 0xa2a02282, + 0x626c2e4e, 0x93901383, 0x414c0d4d, 0x61682949, 0x707c3c4c, + 0x1080909, 0x2080a0a, 0xb3bc3f8f, 0xe3ec2fcf, 0xf3f033c3, + 0xc1c405c5, 0x83840787, 0x10141404, 0xf2fc3ece, 0x60642444, + 0xd2dc1ece, 0x222c2e0e, 0x43480b4b, 0x12181a0a, 0x2040606, + 0x21202101, 0x63682b4b, 0x62642646, 0x2000202, 0xf1f435c5, + 0x92901282, 0x82880a8a, 0xc0c0c, 0xb3b03383, 0x727c3e4e, + 0xd0d010c0, 0x72783a4a, 0x43440747, 0x92941686, 0xe1e425c5, + 0x22242606, 0x80800080, 0xa1ac2d8d, 0xd3dc1fcf, 0xa1a02181, + 0x30303000, 0x33343707, 0xa2ac2e8e, 0x32343606, 0x11141505, + 0x22202202, 0x30383808, 0xf0f434c4, 0xa3a42787, 0x41440545, + 0x404c0c4c, 0x81800181, 0xe1e829c9, 0x80840484, 0x93941787, + 0x31343505, 0xc3c80bcb, 0xc2cc0ece, 0x303c3c0c, 0x71703141, + 0x11101101, 0xc3c407c7, 0x81880989, 0x71743545, 0xf3f83bcb, + 0xd2d81aca, 0xf0f838c8, 0x90941484, 0x51581949, 0x82800282, + 0xc0c404c4, 0xf3fc3fcf, 0x41480949, 0x31383909, 0x63642747, + 0xc0c000c0, 0xc3cc0fcf, 0xd3d417c7, 0xb0b83888, 0x30c0f0f, + 0x828c0e8e, 0x42400242, 0x23202303, 0x91901181, 0x606c2c4c, + 0xd3d81bcb, 0xa0a42484, 0x30343404, 0xf1f031c1, 0x40480848, + 0xc2c002c2, 0x636c2f4f, 0x313c3d0d, 0x212c2d0d, 0x40400040, + 0xb2bc3e8e, 0x323c3e0e, 0xb0bc3c8c, 0xc1c001c1, 0xa2a82a8a, + 0xb2b83a8a, 0x424c0e4e, 0x51541545, 0x33383b0b, 0xd0dc1ccc, + 0x60682848, 0x737c3f4f, 0x909c1c8c, 0xd0d818c8, 0x42480a4a, + 0x52541646, 0x73743747, 0xa0a02080, 0xe1ec2dcd, 0x42440646, + 0xb1b43585, 0x23282b0b, 0x61642545, 0xf2f83aca, 0xe3e023c3, + 0xb1b83989, 0xb1b03181, 0x939c1f8f, 0x525c1e4e, 0xf1f839c9, + 0xe2e426c6, 0xb2b03282, 0x31303101, 0xe2e82aca, 0x616c2d4d, + 0x535c1f4f, 0xe0e424c4, 0xf0f030c0, 0xc1cc0dcd, 0x80880888, + 0x12141606, 0x32383a0a, 0x50581848, 0xd0d414c4, 0x62602242, + 0x21282909, 0x3040707, 0x33303303, 0xe0e828c8, 0x13181b0b, + 0x1040505, 0x71783949, 0x90901080, 0x62682a4a, 0x22282a0a, + 0x92981a8a }; + + private int SS3[] = { 0x8303838, 0xc8e0e828, 0xd212c2d, 0x86a2a426, + 0xcfc3cc0f, 0xced2dc1e, 0x83b3b033, 0x88b0b838, 0x8fa3ac2f, + 0x40606020, 0x45515415, 0xc7c3c407, 0x44404404, 0x4f636c2f, + 0x4b63682b, 0x4b53581b, 0xc3c3c003, 0x42626022, 0x3333033, + 0x85b1b435, 0x9212829, 0x80a0a020, 0xc2e2e022, 0x87a3a427, + 0xc3d3d013, 0x81919011, 0x1111011, 0x6020406, 0xc101c1c, + 0x8cb0bc3c, 0x6323436, 0x4b43480b, 0xcfe3ec2f, 0x88808808, + 0x4c606c2c, 0x88a0a828, 0x7131417, 0xc4c0c404, 0x6121416, + 0xc4f0f434, 0xc2c2c002, 0x45414405, 0xc1e1e021, 0xc6d2d416, + 0xf333c3f, 0xd313c3d, 0x8e828c0e, 0x88909818, 0x8202828, + 0x4e424c0e, 0xc6f2f436, 0xe323c3e, 0x85a1a425, 0xc9f1f839, + 0xd010c0d, 0xcfd3dc1f, 0xc8d0d818, 0xb23282b, 0x46626426, + 0x4a72783a, 0x7232427, 0xf232c2f, 0xc1f1f031, 0x42727032, + 0x42424002, 0xc4d0d414, 0x41414001, 0xc0c0c000, 0x43737033, + 0x47636427, 0x8ca0ac2c, 0x8b83880b, 0xc7f3f437, 0x8da1ac2d, + 0x80808000, 0xf131c1f, 0xcac2c80a, 0xc202c2c, 0x8aa2a82a, + 0x4303434, 0xc2d2d012, 0xb03080b, 0xcee2ec2e, 0xc9e1e829, + 0x4d515c1d, 0x84909414, 0x8101818, 0xc8f0f838, 0x47535417, + 0x8ea2ac2e, 0x8000808, 0xc5c1c405, 0x3131013, 0xcdc1cc0d, + 0x86828406, 0x89b1b839, 0xcff3fc3f, 0x4d717c3d, 0xc1c1c001, + 0x1313031, 0xc5f1f435, 0x8a82880a, 0x4a62682a, 0x81b1b031, + 0xc1d1d011, 0x202020, 0xc7d3d417, 0x2020002, 0x2222022, 0x4000404, + 0x48606828, 0x41717031, 0x7030407, 0xcbd3d81b, 0x8d919c1d, + 0x89919819, 0x41616021, 0x8eb2bc3e, 0xc6e2e426, 0x49515819, + 0xcdd1dc1d, 0x41515011, 0x80909010, 0xccd0dc1c, 0x8a92981a, + 0x83a3a023, 0x8ba3a82b, 0xc0d0d010, 0x81818001, 0xf030c0f, + 0x47434407, 0xa12181a, 0xc3e3e023, 0xcce0ec2c, 0x8d818c0d, + 0x8fb3bc3f, 0x86929416, 0x4b73783b, 0x4c505c1c, 0x82a2a022, + 0x81a1a021, 0x43636023, 0x3232023, 0x4d414c0d, 0xc8c0c808, + 0x8e929c1e, 0x8c909c1c, 0xa32383a, 0xc000c0c, 0xe222c2e, + 0x8ab2b83a, 0x4e626c2e, 0x8f939c1f, 0x4a52581a, 0xc2f2f032, + 0x82929012, 0xc3f3f033, 0x49414809, 0x48707838, 0xccc0cc0c, + 0x5111415, 0xcbf3f83b, 0x40707030, 0x45717435, 0x4f737c3f, + 0x5313435, 0x101010, 0x3030003, 0x44606424, 0x4d616c2d, 0xc6c2c406, + 0x44707434, 0xc5d1d415, 0x84b0b434, 0xcae2e82a, 0x9010809, + 0x46727436, 0x9111819, 0xcef2fc3e, 0x40404000, 0x2121012, + 0xc0e0e020, 0x8db1bc3d, 0x5010405, 0xcaf2f83a, 0x1010001, + 0xc0f0f030, 0xa22282a, 0x4e525c1e, 0x89a1a829, 0x46525416, + 0x43434003, 0x85818405, 0x4101414, 0x89818809, 0x8b93981b, + 0x80b0b030, 0xc5e1e425, 0x48404808, 0x49717839, 0x87939417, + 0xccf0fc3c, 0xe121c1e, 0x82828002, 0x1212021, 0x8c808c0c, + 0xb13181b, 0x4f535c1f, 0x47737437, 0x44505414, 0x82b2b032, + 0xd111c1d, 0x5212425, 0x4f434c0f, 0, 0x46424406, 0xcde1ec2d, + 0x48505818, 0x42525012, 0xcbe3e82b, 0x4e727c3e, 0xcad2d81a, + 0xc9c1c809, 0xcdf1fc3d, 0x303030, 0x85919415, 0x45616425, + 0xc303c3c, 0x86b2b436, 0xc4e0e424, 0x8bb3b83b, 0x4c707c3c, + 0xe020c0e, 0x40505010, 0x9313839, 0x6222426, 0x2323032, 0x84808404, + 0x49616829, 0x83939013, 0x7333437, 0xc7e3e427, 0x4202424, + 0x84a0a424, 0xcbc3c80b, 0x43535013, 0xa02080a, 0x87838407, + 0xc9d1d819, 0x4c404c0c, 0x83838003, 0x8f838c0f, 0xcec2cc0e, + 0xb33383b, 0x4a42480a, 0x87b3b437 }; + + private int KC[] = { 0x9e3779b9, 0x3c6ef373, 0x78dde6e6, 0xf1bbcdcc, + 0xe3779b99, 0xc6ef3733, 0x8dde6e67, 0x1bbcdccf, 0x3779b99e, + 0x6ef3733c, 0xdde6e678, 0xbbcdccf1, 0x779b99e3, 0xef3733c6, + 0xde6e678d, 0xbcdccf1b }; + + private boolean LITTLE = false; + private boolean ENDIAN = LITTLE; + private final int NO_ROUNDS = 16; + + /** Seed Block Size (16byte) */ + private final int SEED_BLOCK_SIZE = 16; + + /** Padding Object */ + private CryptoPaddingImpl padding = null; + + public SeedCipher() { + padding = new AnsiX923Padding(); + } + + private int getB0(int A) { + return 0xff & A; + } + + private int getB1(int A) { + return 0xff & A >>> 8; + } + + private int getB2(int A) { + return 0xff & A >>> 16; + } + + private int getB3(int A) { + return 0xff & A >>> 24; + } + + private void EndianChange(int dws[]) { + dws[0] = dws[0] >>> 24 | dws[0] << 24 | dws[0] << 8 & 0xff0000 + | dws[0] >>> 8 & 0xff00; + } + + private int EndianChange(int dws) { + return dws >>> 24 | dws << 24 | dws << 8 & 0xff0000 | dws >>> 8 + & 0xff00; + } + + private void seedRound(int L0[], int L1[], int R0[], int R1[], int K[]) { + long T00 = 0L; + long T11 = 0L; + int T0 = R0[0] ^ K[0]; + int T1 = R1[0] ^ K[1]; + T1 ^= T0; + T00 = T0 >= 0 ? T0 : (T0 & 0x7fffffff) | 0xffffffff80000000L; + T1 = SS0[getB0(T1)] ^ SS1[getB1(T1)] ^ SS2[getB2(T1)] ^ SS3[getB3(T1)]; + T11 = T1 >= 0 ? T1 : (T1 & 0x7fffffff) | 0xffffffff80000000L; + T00 += T11; + T0 = SS0[getB0((int) T00)] ^ SS1[getB1((int) T00)] + ^ SS2[getB2((int) T00)] ^ SS3[getB3((int) T00)]; + T00 = T0 >= 0 ? T0 : (T0 & 0x7fffffff) | 0xffffffff80000000L; + T11 += T00; + T1 = SS0[getB0((int) T11)] ^ SS1[getB1((int) T11)] + ^ SS2[getB2((int) T11)] ^ SS3[getB3((int) T11)]; + T11 = T1 >= 0 ? T1 : (T1 & 0x7fffffff) | 0xffffffff80000000L; + T00 += T11; + L0[0] ^= (int) T00; + L1[0] ^= (int) T11; + } + + private void seedEncrypt(byte pbData[], int pdwRoundKey[], byte outData[]) { + int L0[] = new int[1]; + int L1[] = new int[1]; + int R0[] = new int[1]; + int R1[] = new int[1]; + L0[0] = 0; + L1[0] = 0; + R0[0] = 0; + R1[0] = 0; + int K[] = new int[2]; + int nCount = 0; + L0[0] = pbData[0] & 0xff; + L0[0] = L0[0] << 8 ^ pbData[1] & 0xff; + L0[0] = L0[0] << 8 ^ pbData[2] & 0xff; + L0[0] = L0[0] << 8 ^ pbData[3] & 0xff; + L1[0] = pbData[4] & 0xff; + L1[0] = L1[0] << 8 ^ pbData[5] & 0xff; + L1[0] = L1[0] << 8 ^ pbData[6] & 0xff; + L1[0] = L1[0] << 8 ^ pbData[7] & 0xff; + R0[0] = pbData[8] & 0xff; + R0[0] = R0[0] << 8 ^ pbData[9] & 0xff; + R0[0] = R0[0] << 8 ^ pbData[10] & 0xff; + R0[0] = R0[0] << 8 ^ pbData[11] & 0xff; + R1[0] = pbData[12] & 0xff; + R1[0] = R1[0] << 8 ^ pbData[13] & 0xff; + R1[0] = R1[0] << 8 ^ pbData[14] & 0xff; + R1[0] = R1[0] << 8 ^ pbData[15] & 0xff; + if (!ENDIAN) { + EndianChange(L0); + EndianChange(L1); + EndianChange(R0); + EndianChange(R1); + } + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + + if (NO_ROUNDS == 16) { + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(L0, L1, R0, R1, K); + K[0] = pdwRoundKey[nCount++]; + K[1] = pdwRoundKey[nCount++]; + seedRound(R0, R1, L0, L1, K); + } + + if (!ENDIAN) { + EndianChange(L0); + EndianChange(L1); + EndianChange(R0); + EndianChange(R1); + } + + for (int i = 0; i < 4; i++) { + outData[i] = (byte) (R0[0] >>> 8 * (3 - i) & 0xff); + outData[4 + i] = (byte) (R1[0] >>> 8 * (3 - i) & 0xff); + outData[8 + i] = (byte) (L0[0] >>> 8 * (3 - i) & 0xff); + outData[12 + i] = (byte) (L1[0] >>> 8 * (3 - i) & 0xff); + } + + } + + private void seedDecrypt(byte pbData[], int pdwRoundKey[], byte outData[]) { + int L0[] = new int[1]; + int L1[] = new int[1]; + int R0[] = new int[1]; + int R1[] = new int[1]; + int K[] = new int[2]; + L0[0] = 0; + L1[0] = 0; + R0[0] = 0; + R1[0] = 0; + int nCount = 31; + L0[0] = pbData[0] & 0xff; + L0[0] = L0[0] << 8 ^ pbData[1] & 0xff; + L0[0] = L0[0] << 8 ^ pbData[2] & 0xff; + L0[0] = L0[0] << 8 ^ pbData[3] & 0xff; + L1[0] = pbData[4] & 0xff; + L1[0] = L1[0] << 8 ^ pbData[5] & 0xff; + L1[0] = L1[0] << 8 ^ pbData[6] & 0xff; + L1[0] = L1[0] << 8 ^ pbData[7] & 0xff; + R0[0] = pbData[8] & 0xff; + R0[0] = R0[0] << 8 ^ pbData[9] & 0xff; + R0[0] = R0[0] << 8 ^ pbData[10] & 0xff; + R0[0] = R0[0] << 8 ^ pbData[11] & 0xff; + R1[0] = pbData[12] & 0xff; + R1[0] = R1[0] << 8 ^ pbData[13] & 0xff; + R1[0] = R1[0] << 8 ^ pbData[14] & 0xff; + R1[0] = R1[0] << 8 ^ pbData[15] & 0xff; + + if (!ENDIAN) { + EndianChange(L0); + EndianChange(L1); + EndianChange(R0); + EndianChange(R1); + } + + if (NO_ROUNDS == 16) { + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + } + + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(R0, R1, L0, L1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount--]; + seedRound(L0, L1, R0, R1, K); + K[1] = pdwRoundKey[nCount--]; + K[0] = pdwRoundKey[nCount]; + seedRound(R0, R1, L0, L1, K); + + if (!ENDIAN) { + EndianChange(L0); + EndianChange(L1); + EndianChange(R0); + EndianChange(R1); + } + + for (int i = 0; i < 4; i++) { + outData[i] = (byte) (R0[0] >>> 8 * (3 - i) & 0xff); + outData[4 + i] = (byte) (R1[0] >>> 8 * (3 - i) & 0xff); + outData[8 + i] = (byte) (L0[0] >>> 8 * (3 - i) & 0xff); + outData[12 + i] = (byte) (L1[0] >>> 8 * (3 - i) & 0xff); + } + + } + + private void EncRoundKeyUpdate0(int K[], int A[], int B[], int C[], + int D[], int Z) { + + int T0 = A[0]; + A[0] = A[0] >>> 8 ^ B[0] << 24; + B[0] = B[0] >>> 8 ^ T0 << 24; + int T00 = (A[0] + C[0]) - KC[Z]; + int T11 = (B[0] + KC[Z]) - D[0]; + K[0] = SS0[getB0(T00)] ^ SS1[getB1(T00)] ^ SS2[getB2(T00)] ^ SS3[getB3(T00)]; + K[1] = SS0[getB0(T11)] ^ SS1[getB1(T11)] ^ SS2[getB2(T11)] ^ SS3[getB3(T11)]; + } + + private void EncRoundKeyUpdate1(int K[], int A[], int B[], int C[], + int D[], int Z) { + + int T0 = C[0]; + C[0] = C[0] << 8 ^ D[0] >>> 24; + D[0] = D[0] << 8 ^ T0 >>> 24; + int T00 = (A[0] + C[0]) - KC[Z]; + int T11 = (B[0] + KC[Z]) - D[0]; + K[0] = SS0[getB0(T00)] ^ SS1[getB1(T00)] ^ SS2[getB2(T00)] ^ SS3[getB3(T00)]; + K[1] = SS0[getB0(T11)] ^ SS1[getB1(T11)] ^ SS2[getB2(T11)] ^ SS3[getB3(T11)]; + } + + private void seedEncRoundKey(int pdwRoundKey[], byte pbUserKey[]) { + int A[] = new int[1]; + int B[] = new int[1]; + int C[] = new int[1]; + int D[] = new int[1]; + int K[] = new int[2]; + int nCount = 2; + A[0] = pbUserKey[0] & 0xff; + A[0] = A[0] << 8 ^ pbUserKey[1] & 0xff; + A[0] = A[0] << 8 ^ pbUserKey[2] & 0xff; + A[0] = A[0] << 8 ^ pbUserKey[3] & 0xff; + B[0] = pbUserKey[4] & 0xff; + B[0] = B[0] << 8 ^ pbUserKey[5] & 0xff; + B[0] = B[0] << 8 ^ pbUserKey[6] & 0xff; + B[0] = B[0] << 8 ^ pbUserKey[7] & 0xff; + C[0] = pbUserKey[8] & 0xff; + C[0] = C[0] << 8 ^ pbUserKey[9] & 0xff; + C[0] = C[0] << 8 ^ pbUserKey[10] & 0xff; + C[0] = C[0] << 8 ^ pbUserKey[11] & 0xff; + D[0] = pbUserKey[12] & 0xff; + D[0] = D[0] << 8 ^ pbUserKey[13] & 0xff; + D[0] = D[0] << 8 ^ pbUserKey[14] & 0xff; + D[0] = D[0] << 8 ^ pbUserKey[15] & 0xff; + if (!ENDIAN) { + A[0] = EndianChange(A[0]); + B[0] = EndianChange(B[0]); + C[0] = EndianChange(C[0]); + D[0] = EndianChange(D[0]); + } + int T0 = (A[0] + C[0]) - KC[0]; + int T1 = (B[0] - D[0]) + KC[0]; + pdwRoundKey[0] = SS0[getB0(T0)] ^ SS1[getB1(T0)] ^ SS2[getB2(T0)] ^ SS3[getB3(T0)]; + pdwRoundKey[1] = SS0[getB0(T1)] ^ SS1[getB1(T1)] ^ SS2[getB2(T1)] ^ SS3[getB3(T1)]; + EncRoundKeyUpdate0(K, A, B, C, D, 1); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate1(K, A, B, C, D, 2); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 3); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate1(K, A, B, C, D, 4); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 5); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate1(K, A, B, C, D, 6); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 7); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate1(K, A, B, C, D, 8); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 9); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate1(K, A, B, C, D, 10); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 11); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + if (NO_ROUNDS == 16) { + EncRoundKeyUpdate1(K, A, B, C, D, 12); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 13); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate1(K, A, B, C, D, 14); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + EncRoundKeyUpdate0(K, A, B, C, D, 15); + pdwRoundKey[nCount++] = K[0]; + pdwRoundKey[nCount++] = K[1]; + } + } + + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 입력 받은 바이트 데이터를 암호화 하여 리턴한다. + * + * @param sbuffer + * String 평문 + * @param szKey + * byte[] key + * @return byte[] 암호화 된 데이터 + */ + public byte[] encrypt(byte[] sbuffer, byte szKey[]) { + int sRoundKey[] = new int[32]; + seedEncRoundKey(sRoundKey, szKey); + + byte[] inDataBuffer = padding.addPadding(sbuffer, SEED_BLOCK_SIZE); + byte[] encryptBytes = new byte[inDataBuffer.length]; + + int rt = inDataBuffer.length / SEED_BLOCK_SIZE; + for (int j = 0; j < rt; j++) { + byte sSource[] = new byte[SEED_BLOCK_SIZE]; + byte sTarget[] = new byte[SEED_BLOCK_SIZE]; + + System.arraycopy(inDataBuffer, (j * SEED_BLOCK_SIZE), sSource, 0, + SEED_BLOCK_SIZE); + seedEncrypt(sSource, sRoundKey, sTarget); + + System.arraycopy(sTarget, 0, encryptBytes, (j * SEED_BLOCK_SIZE), + sTarget.length); + } + + return encryptBytes; + } + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 입력 받은 바이트 데이터를 암호화 하여 리턴한다. + * + * @param sbuffer + * String 평문 + * @param szKey + * byte[] key + * @return byte[] 암호화 된 데이터 + */ + public byte[] encryptForLog(byte[] buffer, byte szKey[]) { + byte[] sbuffer = new byte[SEED_BLOCK_SIZE+buffer.length]; + //길이 byte settting + System.arraycopy(getFormatString(buffer.length,SEED_BLOCK_SIZE).getBytes(), 0, sbuffer, 0,SEED_BLOCK_SIZE); + //업무데이타 setting + System.arraycopy(buffer, 0, sbuffer, SEED_BLOCK_SIZE,buffer.length); + + int sRoundKey[] = new int[32]; + seedEncRoundKey(sRoundKey, szKey); + + byte[] inDataBuffer = padding.addPadding(sbuffer, SEED_BLOCK_SIZE); + byte[] encryptBytes = new byte[inDataBuffer.length]; + + int rt = inDataBuffer.length / SEED_BLOCK_SIZE; + for (int j = 0; j < rt; j++) { + byte sSource[] = new byte[SEED_BLOCK_SIZE]; + byte sTarget[] = new byte[SEED_BLOCK_SIZE]; + + System.arraycopy(inDataBuffer, (j * SEED_BLOCK_SIZE), sSource, 0, + SEED_BLOCK_SIZE); + seedEncrypt(sSource, sRoundKey, sTarget); + + System.arraycopy(sTarget, 0, encryptBytes, (j * SEED_BLOCK_SIZE), + sTarget.length); + } + + return encryptBytes; + } + + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 입력 받은 문자열을 암호화 하여 리턴한다. + * + * @param inData + * String 평문 + * @param szKey + * byte[] key + * @return byte[] 암호화 된 데이터 + */ + public byte[] encrypt(String inData, byte szKey[]) { + return encrypt(inData.getBytes(), szKey); + } + + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 입력 받은 문자열을 특정 Charset으로 변환하여 암호화 하여 리턴한다. + * + * @param inData + * String 평문 + * @param szKey + * byte[] key + * @param charset + * String String을 byte 데이터로 변환할때 사용할 charset + * @return byte[] 암호화 된 데이터 + */ + public byte[] encrypt(String inData, byte szKey[], String charset) + throws UnsupportedEncodingException { + + return encrypt(inData.getBytes(charset), szKey); + } + + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 암호화 된 바이트 데이터를 받아서 복호화한다. + * + * @param encryptBytes + * byte[] 암호화 된 바이트 데이터 + * @param szKey + * byte[] key + * @return byte[] 복호화 된 바이트 데이터 + */ + public byte[] decrypt(byte[] encryptBytes, byte[] szKey) { + int sRoundKey[] = new int[32]; + byte[] decryptBytes = new byte[encryptBytes.length]; + seedEncRoundKey(sRoundKey, szKey); + int rt = encryptBytes.length / SEED_BLOCK_SIZE; + + byte sSource[] = new byte[SEED_BLOCK_SIZE]; + byte sTarget[] = new byte[SEED_BLOCK_SIZE]; + for (int j = 0; j < rt; j++) { + System.arraycopy(encryptBytes, (j * SEED_BLOCK_SIZE), sSource, 0 ,SEED_BLOCK_SIZE); + seedDecrypt(sSource, sRoundKey, sTarget); + System.arraycopy(sTarget, 0, decryptBytes, (j * SEED_BLOCK_SIZE), SEED_BLOCK_SIZE); + } + + return padding.removePadding(decryptBytes, SEED_BLOCK_SIZE); + } + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 암호화 된 바이트 데이터를 받아서 복호화한다. + * + * @param encryptBytes + * byte[] 암호화 된 바이트 데이터 + * @param szKey + * byte[] key + * @return byte[] 복호화 된 바이트 데이터 + */ + public byte[] decryptForLog(byte[] encryptBytes, byte[] szKey) { + int sRoundKey[] = new int[32]; + byte[] decryptBytes = new byte[encryptBytes.length]; + seedEncRoundKey(sRoundKey, szKey); + int rt = encryptBytes.length / SEED_BLOCK_SIZE; + + byte sSource[] = new byte[SEED_BLOCK_SIZE]; + byte sTarget[] = new byte[SEED_BLOCK_SIZE]; + for (int j = 0; j < rt; j++) { + System.arraycopy(encryptBytes, (j * SEED_BLOCK_SIZE), sSource, 0 ,SEED_BLOCK_SIZE); + seedDecrypt(sSource, sRoundKey, sTarget); + System.arraycopy(sTarget, 0, decryptBytes, (j * SEED_BLOCK_SIZE), SEED_BLOCK_SIZE); + } + byte[] length = new byte[SEED_BLOCK_SIZE]; + System.arraycopy(decryptBytes,0 , length, 0 ,SEED_BLOCK_SIZE); + + try{ + int ilength = Integer.parseInt(new String(length)); + byte[] result = new byte[ilength]; + System.arraycopy(decryptBytes,SEED_BLOCK_SIZE , result, 0 ,ilength); + return result; + }catch(NumberFormatException e){ + return padding.removePadding(decryptBytes, SEED_BLOCK_SIZE); + } + } + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 암호화 된 바이트 데이터를 받아서 복호화하여 문자열로 반환한다. + * + * @param encryptBytes + * byte[] 암호화 된 바이트 데이터 + * @param szKey + * byte[] key + * @return String 복호화 문자열 + */ + public String decryptAsString(byte[] encryptBytes, byte[] szKey) { + return new String(decrypt(encryptBytes, szKey)); + } + + /** + * 한국정보보호진흥원 소스에 없는 추가 된 함수로 암호화 된 바이트 데이터를 받아서 복호화하여 지정한 charset으로 문자열로 + * 반환한다. + * + * @param encryptBytes + * byte[] 암호화 된 바이트 데이터 + * @param szKey + * byte[] key + * @param charset + * String 복호화 된 바이트 데이터를 문자열로 변환할 때 사용할 Charset + * @return String 복호화 문자열 + */ + public String decryptAsString(byte[] encryptBytes, byte[] szKey, + String charset) throws UnsupportedEncodingException { + + return new String(decrypt(encryptBytes, szKey), charset); + } + + public static java.lang.String getFormatString(int value, int length) + { + DecimalFormat df = new DecimalFormat("000000000000000000"); + String fs = df.format((long)value); + return fs.substring(fs.length() - length); + } + +} diff --git a/src/main/java/com/eactive/eai/common/server/EAIServerDAO.java b/src/main/java/com/eactive/eai/common/server/EAIServerDAO.java new file mode 100644 index 0000000..00b8d73 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/server/EAIServerDAO.java @@ -0,0 +1,98 @@ +package com.eactive.eai.common.server; + +import java.util.HashMap; +import java.util.Map; +import java.util.stream.Stream; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.eactive.eai.common.dao.BaseDAO; +import com.eactive.eai.common.dao.DAOException; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.server.loader.EAIServerLoader; +import com.eactive.eai.common.server.mapper.EAIServerMapper; +import com.eactive.eai.common.util.Logger; +import com.eactive.eai.data.entity.onl.server.EAIServer; + +@Service +@Transactional +public class EAIServerDAO extends BaseDAO { + + private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + @Autowired + private EAIServerLoader eaiServerEntityService; + + @Autowired + private EAIServerMapper eaiServerMapper; + + public Map getAllServers() throws DAOException { + Map map = new HashMap<>(); + + try (Stream eaiServers = eaiServerEntityService.loadAll()){ + logger.info("[ @@ Load EAIServers Configuration - starting >>>>>>>>>>>>>>>>> ]"); + + eaiServers.forEach(e -> { + EAIServerVO vo = eaiServerMapper.toVo(e); + map.put(vo.getName(), vo); + logger.info("@ " + vo.toString()); + }); + + logger.info("[>>Load EAIServers Configuration - ended ]"); + + return map; + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICSM101")); + } + } + + public EAIServerVO getServer(String name) throws DAOException { + try { + EAIServer eaiServer = eaiServerEntityService.getById(name); + return eaiServerMapper.toVo(eaiServer); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICSM105")); + } + } + + public void addServer(EAIServerVO vo) throws DAOException { + try { + boolean serverExist = eaiServerEntityService.existsById(vo.getName()); + + if (serverExist) { + updateServer(vo); + } else { + EAIServer entity = eaiServerMapper.toEntity(vo); + eaiServerEntityService.save(entity); + } + + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICSM103")); + } + } + + public void updateServer(EAIServerVO vo) throws DAOException { + try { + EAIServer eaiServer = eaiServerEntityService.getById(vo.getName()); + + eaiServer.setCloudrouterurl(vo.getRouterUrl()); + eaiServer.setEaisevrip(vo.getAddress()); + eaiServer.setFlovrsevrname(vo.getFailoverSvr()); + eaiServer.setHostname(vo.getHostName()); + eaiServer.setSevrlsnportname(vo.getPort()); + + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICSM106")); + } + } + + public void removeServer(String name) throws DAOException { + try { + eaiServerEntityService.deleteById(name); + } catch (Exception e) { + throw new DAOException(ExceptionUtil.getErrorCode(e, "RECEAICSM107")); + } + } +} diff --git a/src/main/java/com/eactive/eai/common/server/EAIServerManager.java b/src/main/java/com/eactive/eai/common/server/EAIServerManager.java new file mode 100644 index 0000000..477be4a --- /dev/null +++ b/src/main/java/com/eactive/eai/common/server/EAIServerManager.java @@ -0,0 +1,377 @@ +package com.eactive.eai.common.server; + +import java.net.InetAddress; +import java.net.NetworkInterface; +import java.net.SocketException; +import java.net.UnknownHostException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import com.eactive.eai.common.dao.DAOException; +import com.eactive.eai.common.exception.ExceptionUtil; +import com.eactive.eai.common.lifecycle.Lifecycle; +import com.eactive.eai.common.lifecycle.LifecycleException; +import com.eactive.eai.common.lifecycle.LifecycleListener; +import com.eactive.eai.common.lifecycle.LifecycleSupport; +import com.eactive.eai.common.util.ApplicationContextProvider; +import com.ext.eai.common.stdmessage.STDMessageKeys; + +@Component +public class EAIServerManager implements Lifecycle { + // logger 를 쓰면 상호 참조해서 안됨---중요 + // private static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + private LifecycleSupport lifecycle = new LifecycleSupport(this); + + private boolean started; + + private Map servers; + + private boolean isPEAIServer = false; + private boolean isDEAIServer = false; + private boolean isSEAIServer = false; + + private String serverType = ""; + private String serverMappingType = ""; + private String serverName = ""; + private String systemType = ""; + private String serverIp = ""; + private String serverMac = ""; + + @Autowired + private EAIServerDAO eaiServerDAO; + + private EAIServerManager() { + servers = new HashMap<>(); + + String sysOperEvirnDstcd = System.getProperty(Keys.EAI_SYSTEMMODE); + + if (sysOperEvirnDstcd == null) { + isDEAIServer = true; + } else if (sysOperEvirnDstcd.equals(Keys.EAI_PRODUCT)) { + isPEAIServer = true; + } else if (sysOperEvirnDstcd.equals(Keys.EAI_DEVELOP)) { + isDEAIServer = true; + } else if (sysOperEvirnDstcd.equals(Keys.EAI_STAGING)) { + isSEAIServer = true; + } + + InetAddress inetAddress; + try { + inetAddress = InetAddress.getLocalHost(); + serverIp = inetAddress.getHostAddress(); + NetworkInterface network = NetworkInterface.getByInetAddress(inetAddress); + serverMac = new String(network.getHardwareAddress()); + } catch (UnknownHostException ue) { + System.out.println("UnknownHostException = " + ue.getMessage()); + } catch (SocketException e) { + System.out.println("SocketException = " + e.getMessage()); + } catch (Exception e) { + System.out.println("Exception = " + e.getMessage()); + } + } + + public static EAIServerManager getInstance() { + return ApplicationContextProvider.getContext().getBean(EAIServerManager.class); + } + + public String getLocalServerName() { + if (this.serverName == null || "".equals(this.serverName)) { + this.serverName = System.getProperty(Keys.SERVER_KEY); + } + return serverName; + } + + public String getLocalServerHostName() throws java.net.UnknownHostException { + + return java.net.InetAddress.getLocalHost().getHostName(); + } + + public String getServerIp() { + return serverIp; + } + + public void setServerIp(String serverIp) { + this.serverIp = serverIp; + } + + public String getServerMac() { + return serverMac; + } + + public void setServerMac(String serverMac) { + this.serverMac = serverMac; + } + + public EAIServerVO getLocalServer() { + return null; + } + + public void start() throws LifecycleException { + if (started) + throw new LifecycleException("RECEAICSM201"); + + lifecycle.fireLifecycleEvent(STARTING_EVENT, this); + + try { + + this.servers = eaiServerDAO.getAllServers(); + } catch (DAOException e) { + throw new LifecycleException(ExceptionUtil.getErrorCode(e, "RECEAICSM202"), e); + } + started = true; + lifecycle.fireLifecycleEvent(STARTED_EVENT, this); + } + + public void stop() throws LifecycleException { + if (!started) + throw new LifecycleException("RECEAICSM203"); + + lifecycle.fireLifecycleEvent(STOPING_EVENT, this); + + started = false; + lifecycle.fireLifecycleEvent(STOPPED_EVENT, this); + } + + public void addLifecycleListener(LifecycleListener listener) { + lifecycle.addLifecycleListener(listener); + } + + public LifecycleListener[] findLifecycleListeners() { + return lifecycle.findLifecycleListeners(); + } + + public void removeLifecycleListener(LifecycleListener listener) { + lifecycle.removeLifecycleListener(listener); + } + + public EAIServerVO getEAIServer(String name) { + return this.servers.get(name); + } + + public boolean isStarted() { + return this.started; + } + + public void addEAIServer(EAIServerVO vo) { + this.servers.put(vo.getName(), vo); + } + + public void removeEAIServer(String name) { + this.servers.remove(name); + } + + public void setEAIServer(EAIServerVO vo) { + this.servers.put(vo.getName(), vo); + } + + public Map getAllServer() { + return this.servers; + } + + public String[] getAllEaiSvrInstNm() { + String[] eaiIns = this.servers.keySet().toArray(new String[0]); + Arrays.sort(eaiIns); + return eaiIns; + } + + public void reloadEAIServer(String name) throws Exception { + try { + EAIServerVO vo = eaiServerDAO.getServer(name); + this.servers.put(vo.getName(), vo); + } catch (DAOException e) { + throw new LifecycleException(ExceptionUtil.getErrorCode(e, "RECEAICSM202")); + } + } + + public boolean isPEAIServer() { + return isPEAIServer; + } + + public boolean isTASEnabledEAIServer() { + // 영태를 위해 임시로 모두 가능하게 함 (2020-06-16) + // 운영반영을 위해 정상로직으로 변경 (2020-09-18) +// return true; + return !isPEAIServer; + } + + public boolean isDEAIServer() { + return isDEAIServer; + } + + public boolean isSEAIServer() { + return isSEAIServer; + } + + /** + * 서버명에서 인스턴스를 추출 + */ + public String getInstId() { + String serverName = getLocalServerName(); + if (serverName != null) { + //return serverName.substring(6); + return substrRule(serverName,System.getProperty("eai.server.extractor",""),2); + } + return null; + } + + /** + * 서버명에서 그룹명 + 인스턴스를 추출 ex)ieaiserver11 : 결과eai11 eaiSvr11 : 결과eai11 + */ + public String getGroupInstId() { + String serverName = getLocalServerName(); + if (serverName != null) { + return getServerType() + getInstId(); + } + return null; + } + + public boolean isMCI() { + return Keys.EAI_SYSTEM_TYPE_MCI.equals(getSystemType()); + } + + public boolean isFEP() { + return Keys.EAI_SYSTEM_TYPE_FEP.equals(getSystemType()); + } + + public boolean isEAI() { + return Keys.EAI_SYSTEM_TYPE_EAI.equals(getSystemType()); + } + + /** + * 서버명에서 추출한 type "ieaiserver11".substring(1,4); : 결과 eai + * "eaiSvr11".substring(0,3); : 결과 eai + */ + public String getServerType() { + if (this.serverType == null || "".equals(this.serverType)) { + String serverName = getLocalServerName(); + //this.serverType = serverName.substring(0, 3); + this.serverType = substrRule(serverName,System.getProperty("eai.server.extractor",""),0); + } + return this.serverType; + } + + /** + * 서버명에서 추출한 type "ieaiserver11".substring(1,4); : 결과 eai + * "eaiSvr11".substring(0,3); : 결과 eai + * + * 우체국때문에 추가됨 mcc 인스턴스가 mcd/mci 로 분리 mcu 인스턴스가 mud/mui 로 분리 + */ + public String getServerMappingType() { + if (this.serverMappingType == null || "".equals(this.serverMappingType)) { + String serverName = getLocalServerName(); + //String data = serverName.substring(0, 3); + String data = substrRule(serverName,System.getProperty("eai.server.extractor",""),1); + if ("mcd".equals(data)) + data = "mcc"; + else if ("mci".equals(data)) + data = "mcc"; + else if ("mud".equals(data)) + data = "mcu"; + else if ("mui".equals(data)) + data = "mcu"; + this.serverMappingType = data; + } + return this.serverMappingType; + } + + /** + * 엔진 성격에 따라 추출한 type -D옵션에 설정된값 MCI/EAI/FEP + */ + public String getSystemType() { + if (this.systemType == null || "".equals(this.systemType)) { + this.systemType = System.getProperty(Keys.EAI_SYSTEM_TYPE); + } + return this.systemType; + } + + /** + * 사이트에 따른 값으로 conversion한값 D/T/P + */ + public String getSystemEnvTypeConvert() { + String systemEnvType = ""; + if (EAIServerManager.getInstance().isPEAIServer()) { + systemEnvType = STDMessageKeys.OPERATION_ENV_PRODUCT; + } else if (EAIServerManager.getInstance().isSEAIServer()) { + systemEnvType = STDMessageKeys.OPERATION_ENV_TESTSTAGE; + } else if (EAIServerManager.getInstance().isDEAIServer()) { + systemEnvType = STDMessageKeys.OPERATION_ENV_DEV; + } + return systemEnvType; + } + + /** + * 하나캐피탈 표준전문에서 사용(시스템구분) + */ + public String getSystemGubun() { +// if (EAIServerManager.getInstance().isMCI()) { +// return "00"; +// } else if (EAIServerManager.getInstance().isEAI()) { +// return "02"; +// } else { +// return ""; +// } + return getServerType(); + } + + public Map getAllServer(boolean cache) throws DAOException { + if (cache) { + return this.servers; + } else { + return eaiServerDAO.getAllServers(); + } + } + + public void updateServer(EAIServerVO vo) throws DAOException { + eaiServerDAO.updateServer(vo); + } + + public void addServer(EAIServerVO vo) throws DAOException { + eaiServerDAO.addServer(vo); + + } + public void removeServer(String name) throws DAOException { + eaiServerDAO.removeServer(name); + + } + public static String substrRule(String data, String rule, int index) { + // [serverType],[serverMappingType],[instanceId] + if ("".equals(rule)) { + rule = "[0,3],[0,3],[6]"; + } + ArrayList d = new ArrayList(); + + Matcher matcher = Pattern.compile("\\[[ ]*([\\-,0-9]*)[ ]*\\]").matcher(rule); + while (matcher.find()) { + d.add(matcher.group(1).trim()); + } + String[] values = d.get(index).split(","); + if (values.length == 2) { + int offset = Integer.parseInt(values[0]); + int length = Integer.parseInt(values[1]); + return data.substring(offset, offset + length); + } else { + if (values[0].startsWith("-")) { + int offset = Integer.parseInt(values[0]); + return data.substring(data.length() + offset); + } else { + int offset = Integer.parseInt(values[0]); + return data.substring(offset); + } + } + } + public static void main(String[] args) throws Exception{ + System.out.println(substrRule("card-internal-runtime-568fd58554-b2cnk","[5,2],[5,2],[-2]",0)); + System.out.println(substrRule("card-internal-runtime-568fd58554-b2cnk","[5,2],[5,2],[-2]",1)); + System.out.println(substrRule("card-internal-runtime-568fd58554-b2cnk","[0,2],[0,2],[-2]",2)); + } + +} diff --git a/src/main/java/com/eactive/eai/common/server/EAIServerVO.java b/src/main/java/com/eactive/eai/common/server/EAIServerVO.java new file mode 100644 index 0000000..0fd2815 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/server/EAIServerVO.java @@ -0,0 +1,154 @@ +package com.eactive.eai.common.server; + +import java.io.Serializable; + +public class EAIServerVO implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * EAI 서버 리슨 포트 + */ + private String port; //서버리슨포트명[TSEAISY02.SevrLsnPortName] + + /** + * EAI 서버 RMI Port + */ + private String rmiPort; + + /** + * rmi RegistryPort 를 만들기 위해서 더해 주는 값 + * + * EAI 서버 리슨 port + plusRmiPort = rmiPort + * rmiPort는 rmi RegistryPort 임 + * 리모트 호출 url ==> rmi://{ip}:{rmi RegistryPort}/xxxxx + * 사이트마다 다를수 있음. + */ + private int plusRmiPort = 1; + + /** + * sessionManager에서 쓰기위해 + * ehcache + * localport , remoteport + * + * ignite + * localport : communication port + * remoteport : discovery port + */ + private int plusLocalPort = 4; + private int plusRemotePort = 5; + + /** + * EAI 서버 장애 시 FAILOVER 서버 + */ + private String failoverSvr; //장애극복서버명[TSEAISY02.FlovrSevrName] + + private String name; // EAI서버인스탄스명[TSEAISY02.EAISevrInstncName] + private String address; // EAI서버IP주소[TSEAISY02.EAISevrIP] + private String hostNm; // 호스트명[TSEAISY02.HostName] + private String routerUrl; // 호스트명[TSEAISY02.routerurl] + + public static final String T3_PROTOCOL = "t3"; + public static final String HTTP_PROTOCOL = "http"; + public static final String IIOP_PROTOCOL = "rmi"; // iiop + + public EAIServerVO() { + } + + public EAIServerVO(String name) { + this.name = name; + } + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return this.name; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAddress() { + return this.address; + } + + public void setPort(String port) { + this.port = port; + if (!"*".equals(port)) { + try { + setRmiPort("" + (Integer.parseInt(port) + plusRmiPort)); + } catch (Exception ex) { + } + } + } + + public String getPort() { + return this.port; + } + + public void setRmiPort(String port) { + this.rmiPort = port; + } + + public String getRmiPort() { + if (this.rmiPort == null) { + this.rmiPort = "" + (Integer.parseInt(this.port) + plusRmiPort); + } + return this.rmiPort; + } + + public void setFailoverSvr(String failoverSvr) { + this.failoverSvr = failoverSvr; + } + + public String getFailoverSvr() { + return this.failoverSvr; + } + + public String toURL(String protocol) { + StringBuffer sb = new StringBuffer(); + sb.append(protocol).append(":").append("//"); + sb.append(address).append(":").append(port); + + return sb.toString(); + } + + public String toString() { + StringBuffer sb = new StringBuffer(); + sb.append("EAIServerVO[ name=").append(name); + sb.append(", address=").append(address); + sb.append(", port=").append(port); + sb.append(", failoverSvr=").append(failoverSvr); + sb.append(", routerUrl=").append(routerUrl); + sb.append(" ]"); + + return sb.toString(); + } + + public void setHostName(String hostNm) { + this.hostNm = hostNm; + } + + public String getHostName() { + return this.hostNm; + } + + public String getRouterUrl() { + return routerUrl; + } + + public void setRouterUrl(String routerUrl) { + this.routerUrl = routerUrl; + } + + public int getCacheLocalPort(){ + if(this.port == null) return 0; + return Integer.parseInt(this.port) + plusLocalPort; + } + public int getCacheRemotePort(){ + if(this.port == null) return 0; + return Integer.parseInt(this.port) + plusRemotePort; + } +} diff --git a/src/main/java/com/eactive/eai/common/server/Keys.java b/src/main/java/com/eactive/eai/common/server/Keys.java new file mode 100644 index 0000000..6b0a3df --- /dev/null +++ b/src/main/java/com/eactive/eai/common/server/Keys.java @@ -0,0 +1,38 @@ +package com.eactive.eai.common.server; + +public class Keys +{ + public static final String DEFAULT_SERVER = "ALL"; + + // 운영 서버 이름에 대한 Property Key + public static final String SERVER_KEY = "inst.Name"; + public static final String SERVER_PORT = "inst.Port"; + + // 운영 서버 이름에 대한 운영/DR(P), 개발(D), 스테이징(S) Property Key + public static final String EAI_SYSTEMMODE = "eai.systemmode"; + public static final String EAI_PRODUCT = "P"; + public static final String EAI_DEVELOP = "D"; + public static final String EAI_STAGING = "S"; + public static final String EAI_LOCAL = "L"; //mci 로컬거래때문에 생성됨 + + // 엔진 성격에 따른 type MCI/FEP/EAI + public static final String EAI_SYSTEM_TYPE = "eai.systemtype"; + + public static final String EAI_SYSTEM_TYPE_MCI = "MCI"; + public static final String EAI_SYSTEM_TYPE_EAI = "EAI"; + public static final String EAI_SYSTEM_TYPE_FEP = "FEP"; + public static final String EAI_SYSTEM_TYPE_GW = "GW"; + + // 내부표준전문 - 채넬공통부여부 (정의하지 않은 경우에는 사용하지 않음) +// public static final String USE_CHANNELCONNOM_HEADER = "use.channelheader"; + + // EAI 개발 서버 PREFIX Key +// public static final String EAI_DSVR = "EAI_DSVR"; + + //EAI 스테이징 서버 PREFIX Key +// public static final String EAI_TSVR = "EAI_SSVR"; + + // EAI 운영 서버 PREFIX Key +// public static final String EAI_PSVR = "EAI_PSVR"; + +} diff --git a/src/main/java/com/eactive/eai/common/server/mapper/EAIServerMapper.java b/src/main/java/com/eactive/eai/common/server/mapper/EAIServerMapper.java new file mode 100644 index 0000000..689d826 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/server/mapper/EAIServerMapper.java @@ -0,0 +1,28 @@ +package com.eactive.eai.common.server.mapper; + +import org.mapstruct.InheritInverseConfiguration; +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.mapstruct.ReportingPolicy; + +import com.eactive.eai.common.server.EAIServerVO; +import com.eactive.eai.data.entity.onl.server.EAIServer; +import com.eactive.eai.data.mapper.GenericMapper; + +@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface EAIServerMapper extends GenericMapper { + + @Mapping(source = "eaisevrinstncname", target = "name") + @Mapping(source = "eaisevrip", target = "address") + @Mapping(source = "sevrlsnportname", target = "port") + @Mapping(source = "flovrsevrname", target = "failoverSvr") + @Mapping(source = "hostname", target = "hostName") + @Mapping(source = "cloudrouterurl", target = "routerUrl") + @Override + EAIServerVO toVo(EAIServer entity); + + @InheritInverseConfiguration + @Override + EAIServer toEntity(EAIServerVO vo); + +} diff --git a/src/main/java/com/eactive/eai/common/util/ApplicationContextProvider.java b/src/main/java/com/eactive/eai/common/util/ApplicationContextProvider.java new file mode 100644 index 0000000..d416f91 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/ApplicationContextProvider.java @@ -0,0 +1,22 @@ +package com.eactive.eai.common.util; + +import org.springframework.beans.BeansException; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.stereotype.Component; + +@Component +public class ApplicationContextProvider implements ApplicationContextAware{ + + private static ApplicationContext context; + + public static ApplicationContext getContext() { + return context; + } + + @Override + public void setApplicationContext(ApplicationContext ac) + throws BeansException { + context = ac; + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/CamelCaseUtil.java b/src/main/java/com/eactive/eai/common/util/CamelCaseUtil.java new file mode 100644 index 0000000..75a1bf3 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/CamelCaseUtil.java @@ -0,0 +1,52 @@ +package com.eactive.eai.common.util; + +import java.util.StringTokenizer; + +public class CamelCaseUtil { + + public static String converCamelCase(String strdata, String token) { + StringBuffer strbufCamelCase = new StringBuffer(); + StringTokenizer st = new StringTokenizer(strdata); + if (null == strdata || strdata.length() == 0) { + return ""; + } + while (st.hasMoreTokens()) { + String strWord = st.nextToken(token); + strbufCamelCase.append(strWord.substring(0, 1).toUpperCase()); + if (strWord.length() > 1) { + strbufCamelCase.append(strWord.substring(1).toLowerCase()); + } + strbufCamelCase.append(""); + } + return strbufCamelCase.toString(); + } + + public static String converCamelCaseWithBrace(String strdata, String token) { + strdata = strdata.replaceAll("\\{", token); + strdata = strdata.replaceAll("\\}", ""); + + StringBuilder strbufCamelCase = new StringBuilder(); + StringTokenizer st = new StringTokenizer(strdata); + if (null == strdata || strdata.length() == 0) { + return ""; + } + while (st.hasMoreTokens()) { + String strWord = st.nextToken(token); + strbufCamelCase.append(strWord.substring(0, 1).toUpperCase()); + if (strWord.length() > 1) { + strbufCamelCase.append(strWord.substring(1).toLowerCase()); + } + strbufCamelCase.append(""); + } + return strbufCamelCase.toString(); + } + +// public static void main(String args[]) throws Exception { +// test(); +// } +// +// private static void test() throws Exception { +// String data = "_CBS_IN_HTT_SyS{BAT}"; +// System.out.println(converCamelCaseWithBrace(data, "_")); +// } +} diff --git a/src/main/java/com/eactive/eai/common/util/CharsetDecoderUtil.java b/src/main/java/com/eactive/eai/common/util/CharsetDecoderUtil.java new file mode 100644 index 0000000..b0f3f22 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/CharsetDecoderUtil.java @@ -0,0 +1,101 @@ +package com.eactive.eai.common.util; + +import java.nio.ByteBuffer; +import java.nio.charset.CharacterCodingException; +import java.nio.charset.Charset; +import java.nio.charset.CharsetDecoder; + +/** + *

+ * 1. 기능 : 해당 Charset으로 Buffer를 decode해 준다.
+ * 2. 처리 개요 : 
+ *     - Util 클래스로서 필요에 의해서 호출 한다. 
+ * 3. 주의사항 :
+ * 
+ * @author : 박기섭 + * @version : $Revision: 1.1 $ + * @since : rts 1.0 + */ +public class CharsetDecoderUtil { + /** nio charset */ + private Charset charset = null; + + /** nio decoder */ + private CharsetDecoder decoder = null; + + /** + * @param encoding + * @spring.constructor-arg value="EUC-KR" + */ + public CharsetDecoderUtil(String encoding) { + this.charset = Charset.forName(encoding); + this.decoder = charset.newDecoder(); + } + + /** + * 1. 기능 : 8859_1을 한글코드 (KSC5601)로 변환 + * @param s 변환을 원하는 문자열 + * @return 캐릭터 셋이 변환된 문자열 + */ + public static String toKor(String s) { + if (s != null) { + return changeCode(s, "iso_8859-1", "KSC5601"); + } else { + return null; + } + } // end of toKor + + /** + * 1. 기능 : charater set 체계를 바꿔주는 메쏘드 + * ex) ChatSet.changeCode(string, "KSC5601", "iso_8859_1"); + * @param s 변환을 원하는 문자열 + * @param s1 현재 캐릭터 셋 + * @param s2 바뀔 캐릿터 셋 + * @return 캐릭터 셋이 변환된 문자열 + */ + public static String changeCode(String s, String s1, String s2) { + String convString = null; + if (s != null) { + try { + convString = new String(s.getBytes(s1), s2); + } catch (Exception exception) { + convString = s; + } + } + return convString; + } // end of changeCode + + /** + *
+     * 1. 기능 : ByteBuffer를 decode한다. 
+     * 2. 처리 개요 : 
+     *     - 
+     * 3. 주의사항 : 
+     * 
+ * @author : 박기섭 + * @version : $Revision: 1.1 $ + * @since : rts 1.0 + * @param byteBuffer ByteBuffer + * @return string ByteBuffer에 담겨진 값을 문자열로 decode한 값 + */ + public String decode(ByteBuffer buffer) { + + String string = null; + // buffer가 null일 경우 return한다. + if (buffer == null) { + return ""; + } + try { + // buffer를 decode한다. + string = decoder.decode(buffer).toString(); + } catch (CharacterCodingException e) { + string = ""; + } + // decode한 값이 null일 경우 ""를 리턴 한다. + if (string == null) { + return ""; + } else { + return string; + } + } +} diff --git a/src/main/java/com/eactive/eai/common/util/CommonHeaderUtil.java b/src/main/java/com/eactive/eai/common/util/CommonHeaderUtil.java new file mode 100644 index 0000000..11467a5 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/CommonHeaderUtil.java @@ -0,0 +1,129 @@ +package com.eactive.eai.common.util; + +/** +* 1. 기능 : 공통부 Header를 EAI에서 생성하거나 삭제해야하는 경우를 위한 Utility Class +* 2. 처리 개요 : +* - 메시지종류에 따라 헤더를 생성하거나 삭제하는 API를 제공 +* 3. 주의사항 +* - AD 의 경우는 S는 ADD, R 는 DELETE +* - DA 의 경우는 S는 DELETE, R 는 ADD +* @author : +* @version : v 1.0.0 +* @see : +* @since : +*/ +public class CommonHeaderUtil +{ + private static final String ADD_DELETE_HEADER = "AD"; + private static final String DELETE_ADD_HEADER = "DA"; + + private static final String MESSAGE_SEND = "S"; +// private static final String MESSAGE_RECV = "R"; + + private static final String HEADER_CYU = "CYU1"; // 연계 - 기관간의 헤더타입 + private static final int HEADER_CYU_LENGTH = 30; // 연계 - 기관간의 헤더타입 + /** + * Private 생성자 + * Instance를 생성하지 못함 + */ + private CommonHeaderUtil() + { + } + + /** + * 1. 기능 : ASCII Bytes에서 특정길이의 값을 추출하는 Method + * 2. 처리 개요 : + * - byte[] 타입의 메시지에서 툭정위치의 값을 요청길이만큼 얻어낸다. + * 3. 주의사항 + * + * @param message 변환대상 Byte[] + * @param sendRecv Message Type (S/R) + * @param commandType Command Type (AD/DA) + * @param headerType 헤더정보 + * @return 결과 String 값 + */ + public static byte[] executeHeaderCommand(byte[] message, String sendRecv, String commandType, String headerType) + throws Exception { + if(ADD_DELETE_HEADER.equals(commandType)) { + // Header Type에 맞는 add command 를 실행한다. + if( HEADER_CYU.equals(headerType) ) { + if(MESSAGE_SEND.equals(sendRecv)) { + return addCYUHeaderCommand(message); + } + else { + return deleteHeader(message, HEADER_CYU_LENGTH); + } + } + else { + return message; + } + } + else if(DELETE_ADD_HEADER.equals(commandType)) { + // Header Type에 맞는 delete command 를 실행한다. + if( HEADER_CYU.equals(headerType) ) { + if(MESSAGE_SEND.equals(sendRecv)) { + return deleteHeader(message, HEADER_CYU_LENGTH); + } + else { + return addCYUHeaderCommand(message); + } + } + else { + return message; + } + } + else { + // Invalid Command + throw new Exception("Invald Command - "+ commandType); + } + } + + public static byte[] deleteHeader(byte[] message, int headerLength) { + int msgLength = message.length - headerLength; + if(msgLength > 0) { + byte[] retHeader = new byte[msgLength]; + System.arraycopy(message, headerLength, retHeader, 0, retHeader.length); + return retHeader; + } + else { + return message; + } + } + + public static byte[] addCYUHeaderCommand(byte[] message) { + + String tranOccurPath = "E"; // 거래발생 경로(1) + String serverName = "EAISVR1"; // 서버이름(7) + String sysMinHMSUnit = ""; // 거래시간(12) + String tranSysDstcd = "1"; // 거래처리시스템 구분(1) + String tranLogRecrdEonot = "2"; // 거래log Dump 기록유무(1) + String Blnk0 = " "; // Filler (8) + + int msgLength = message.length + HEADER_CYU_LENGTH; + + sysMinHMSUnit = StringUtil.stringFormat(DatetimeUtil.getFormattedDate("HHmmssSSS"), false, ' ', 12); + + StringBuffer sb = new StringBuffer(30); + sb.append(tranOccurPath); + sb.append(serverName); + sb.append(sysMinHMSUnit); + sb.append(tranSysDstcd); + sb.append(tranLogRecrdEonot); + sb.append(Blnk0); + + byte[] retHeader = new byte[msgLength]; + + System.arraycopy(sb.toString().getBytes(), 0, retHeader, 0, HEADER_CYU_LENGTH); + System.arraycopy(message, 0, retHeader, HEADER_CYU_LENGTH, retHeader.length-HEADER_CYU_LENGTH); + return retHeader; + } + +// public static void main(String args[]) throws Exception { +// byte[] msgBytes = "1234567890".getBytes(); +// +// byte[] headerMsg = executeHeaderCommand(msgBytes, "S", ADD_DELETE_HEADER, HEADER_CYU); +// +// System.out.println("HEADER MSG["+ new String(headerMsg) +"]"); +// System.out.println("HEADER MSG["+ new String(executeHeaderCommand(headerMsg, "S", DELETE_ADD_HEADER, HEADER_CYU)) +"]"); +// } +} diff --git a/src/main/java/com/eactive/eai/common/util/CommonLib.java b/src/main/java/com/eactive/eai/common/util/CommonLib.java new file mode 100644 index 0000000..432190d --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/CommonLib.java @@ -0,0 +1,288 @@ +/* + * Created on 2005. 2. 26. + * + */ +package com.eactive.eai.common.util; + +import java.text.DecimalFormat; + +import com.eactive.eai.common.errorcode.ErrorCodeHandler; + +/** + * @author + * 송수신 메시지 SPEC. + * llzz + syncFlag + user data(전문포맷전체를 사용자 DATA로 본다.) + * - llzz(2BYTE/4BYTE) UNSIGNED INTEGER로 처리한다. -- ConfigurationContext에 저장 + * default는 4byte로 한다. + * - syncFlag - 'S' - R/R, 'A' - ASYNC, 'K' - ACK ONLY(이 경우, SEVER의 ACK를 받는다. + * - llzz+K[ACK|NACK] + * - user data,... + * + */ +public class CommonLib { + + public static final char SPACE = ' '; + + public static final char ZERO = '0'; + + public static final String EMPTY_STRING = ""; + + public static final String EMPTY_STRING_ARRAY[] = new String[0]; + + public static final int NEGOTIATING_PROTOCOL = 1; + + public static final int PROCESSING_PROTOCOL = 2; + + public static final byte[] SYNC_PROTOCOL_MESSAGE = "SYNC".getBytes(); + + public static final byte[] ASYNC_PROTOCOL_MESSAGE = "ASYN".getBytes(); + + public static final byte[] NACK_MESSAGE = "NACK PROTOCOL VIOLATION".getBytes(); + + public static final byte[] ACK_MESSAGE = "ACK".getBytes(); + + private static final char[] HEX_CHAR_ARRAY = { '0', '1', '2', '3', '4', + '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; + + /** + * BYTE ARRAY값을 HEXA STRING으로 변환하여 String을 리턴한다. + * @param abyte + * @return + */ + public static String byte2Hex(byte[] abyte) { + /* + StringBuffer s = new StringBuffer(); + if (abyte == null) + return s.toString(); + for (int i = 0; i < abyte.length; i++) + s.append( Integer.toHexString((abyte[i] & 0xf0) >> 4).toUpperCase() ).append( Integer.toHexString(abyte[i] & 0xf).toUpperCase() ); + return s.toString(); + */ + + //------------------------------------------------- + // New Logic from cjw + //------------------------------------------------- + StringBuffer buf = new StringBuffer(); + int len = abyte.length; + + int high = 0; + int low = 0; + for (int i = 0; i < len; i++) { + high = ((abyte[i] & 0xf0) >> 4); + low = (abyte[i] & 0x0f); + buf.append(HEX_CHAR_ARRAY[high]); + buf.append(HEX_CHAR_ARRAY[low]); + } + return buf.toString(); + //------------------------------------------------- + + } + + /** + * HEXA String값을 BYTE ARRAY로 변환한다. + * @param s + * @return + */ + public static byte[] hex2Bytes(String s) { + byte abyte[] = new byte[s.length() / 2]; + for (int j = 0; j < abyte.length; j++) + abyte[j] = (byte) Integer.parseInt(s.substring(2 * j, 2 * j + 2), 16); + return abyte; + } + + /** + * 주어진 String값을 주어진 길이많큼 Padding/Trim한다. + * @param svalue - 입력스트링 + * @param isRightJustify - true이면 RIGHT JUSTIFY, false이면 LEFT JUSTIFY + * @param padding - Padding 문자 + * @param length - 리턴할 스트링의 바이트수 + * @return 포맷팅된 String결과 + */ + public static String stringFormat(String svalue, boolean isRightJustify, char padding, int length) { + if ( svalue == null ) return svalue; + + StringBuffer mpad = new StringBuffer(); + StringBuffer fmtStr = new StringBuffer(); + + String tvalue = svalue; + int pLength = 0; + + pLength = length - svalue.getBytes().length; + + if (pLength == 0) + return svalue; + else if ( pLength < 0) { + byte[] abytes = null; + if (isRightJustify) { + abytes = (new String( svalue.getBytes(), -(pLength), length)).getBytes(); + } else { + abytes = (new String( svalue.getBytes(), 0, length)).getBytes(); + } + + if ( abytes.length == length ) { + return new String( abytes ); + } else { + tvalue = new String( abytes ); + pLength = length - tvalue.length(); + } + } + + for(int i =0; i < pLength ; i++) { + mpad.append( padding ); + } + + if ( isRightJustify ) { + return fmtStr.append(mpad).append(tvalue).toString(); + } else { + return fmtStr.append(tvalue).append(mpad).toString(); + } + } + + public static java.lang.String getFormatString(long value, int length) + { + DecimalFormat df = new DecimalFormat("000000000000000000"); + String fs = df.format( value ); + return fs.substring(fs.length() - length); + } + + public static java.lang.String getFormatString(int value, int length) + { + DecimalFormat df = new DecimalFormat("000000000000000000"); + String fs = df.format((long)value); + return fs.substring(fs.length() - length); + } + + /** + * 메시지 비교 + */ + public static boolean compare(byte[] source, byte[] target) { + if ( source.length != target.length ) return false; + + for ( int i=0; i < source.length; i++ ) { + if ( source[i] != target[i] ) return false; + } + return true; + } + + /** + * 송수신전문에 대한 DUMP를 프린트할 수 있는 포맷으로 변환하여 String Array로 리턴한다. + * @param bytes + * @return + */ + public static String[] makeDumpFormat(byte[] bytes) { + if (bytes == null || bytes.length == 0) + return CommonLib.EMPTY_STRING_ARRAY; + + String[] dumps = new String[bytes.length / 16 + ((bytes.length % 16) == 0 ? 4 : 5)]; + dumps[0] = "/==========.========================================..==================."; + dumps[1] = "| Offset | 0 1 2 3 4 5 6 7 8 9 A B C D E F || U S E R D A T A |"; + dumps[2] = "|----------+----------------------------------------||------------------|"; + dumps[dumps.length - 1] = "'=========='========================================''==================/"; + + int len = 0; + byte PERIOD = 0x2E; + char aChar = ' '; + boolean isDBCS = false; + boolean isHalfDBCS = false; + + + for (int i = 3; i < dumps.length - 1; i++) { + + len = ( ((bytes.length - (i - 2) * 16) >= 0) ? 16 : (bytes.length - (i - 3)*16) ); + byte[] buf = new byte[len]; + System.arraycopy( bytes, (i-3)*16, buf, 0, len ); + StringBuffer strBuf = new StringBuffer(); + //dumps[i] = EMPTY_STRING; + + // 2010.01.12 remove toUpperCase + //strBuf.append("| ").append( stringFormat( new String( Integer.toHexString((i-3)*16) ).toUpperCase(), true, ZERO, 8) ).append(" | "); + strBuf.append("| ").append( stringFormat( new String( Integer.toHexString((i-3)*16) ), true, ZERO, 8) ).append(" | "); + + String hexStr = byte2Hex( buf ); + StringBuffer fmtStr = new StringBuffer(); + + int k = hexStr.length()/8 + ((hexStr.length() % 8) == 0 ? 0 : 1); + for (int j=0; j < k ; j++) { + int l = ((hexStr.length() - (j+1)*8 ) >= 0 ? 8 : (hexStr.length() - j*8 )); + fmtStr.append( hexStr.substring(j*8, j*8 + l ) ).append(" "); + } + + strBuf.append( stringFormat(fmtStr.toString(), false, SPACE, 39) ).append("|| "); + + k = 0; + // 한글 및 특수문자가 깨지게 표시되는 것 을 방지한다. + for ( int j=0; j < len; j++) { + if ( buf[j] >> 7 == 0 ) { + // Single Byte Character + if ( isDBCS ) { + isDBCS = false; + if ( k != 0 && ((k % 2) == 1 )) { + buf[j - 1] = PERIOD; + } + } + aChar = (char)buf[j]; + if ( Character.isWhitespace( aChar ) || Character.isISOControl( aChar ) || buf[j] == 0 ) { + buf[j] = PERIOD; + } + continue; + } + // Double Bytes Character. + if ( !isDBCS ) isDBCS = true; + if ( j == 0 && isHalfDBCS ) { + buf[j] = PERIOD; + isDBCS = false; + continue; + } + // To check the DBCS pairwise + k++; + } + if ( isDBCS && ((k%2)==1) ) { + buf[ len -1 ] = PERIOD; + isHalfDBCS = true; + } else { + isHalfDBCS = false; + } + + dumps[i] = strBuf.append( stringFormat(new String(buf), false, SPACE, 16) ).append(" |").toString(); + } + return dumps; + + } + + public static String getDumpMessage( Object obj ) { + byte[] message = null; + if(obj instanceof byte[]) { + message = (byte[])obj; + } + else if(obj instanceof String) { + message = ((String)obj).getBytes(); + } + String[] dumpMsg = makeDumpFormat( message ); + StringBuffer dump = new StringBuffer(); + dump.append("\n"); + for(int i=0; i < dumpMsg.length; i++) { + dump.append( dumpMsg[i] ).append("\n"); + } + + return dump.toString(); + } + + public static String getMessage(String msgCode, String[] params) { + StringBuffer strBuff = new StringBuffer(); + strBuff.append("[").append(msgCode).append("] ").append( ErrorCodeHandler.getMessage( msgCode, params ) ); + return strBuff.toString(); + } + + public static String getMessage(String msgCode) { + StringBuffer strBuff = new StringBuffer(); + strBuff.append("[").append(msgCode).append("] ").append( ErrorCodeHandler.getMessage( msgCode ) ); + return strBuff.toString(); + } + + public static String getDebugMessage(String msgCode, String[] params) { + StringBuffer strBuff = new StringBuffer(); + strBuff.append( ErrorCodeHandler.getMessage( msgCode, params ) ); + return ErrorCodeHandler.getMessage( msgCode, params ); + } + +} diff --git a/src/main/java/com/eactive/eai/common/util/ContainerUtil.java b/src/main/java/com/eactive/eai/common/util/ContainerUtil.java new file mode 100644 index 0000000..1ec40e3 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/ContainerUtil.java @@ -0,0 +1,150 @@ +package com.eactive.eai.common.util; + +import java.util.HashMap; +import java.util.Map; + +import com.eactive.eai.common.server.Keys; + +/** + * The Class ContainerUtil. + *
    + *
  • 1. Function :현재 기동되는 컨테이너를 식별 합니다.
  • + *
  • 2. Summary :
  • + *
  • 3. Notification :
  • + *
+ * + * @author : $Author: 박기섭 $ + * @version : $Revision: 1.2 $ + */ +public class ContainerUtil { + + /** The Constant UNKNOWN. */ + public static final int UNKNOWN = 0; + + /** The Constant TOMCAT. */ + public static final int TOMCAT = 1; + + /** The Constant RESIN. */ + public static final int RESIN = 2; + + /** The Constant ORION. */ + public static final int ORION = 3; + + /** The Constant OC4J. */ + public static final int OC4J = 3; + + /** The Constant ORACLE_AS. */ + public static final int ORACLE_AS = 3; + + /** The Constant WEBLOGIC. */ + public static final int WEBLOGIC = 4; + + /** The Constant HPAS. */ + public static final int HPAS = 5; + + /** The Constant JRUN. */ + public static final int JRUN = 6; + + /** The Constant WEBSPHERE. */ + public static final int WEBSPHERE = 7; + + /** The Constant JEUS. */ + public static final int JEUS = 8; + + /** The Constant JBOSS. */ + public static final int JBOSS = 9; + + /** The result. */ + private static int result; + + /** The Constant containerString. */ + private static final Map containerString = new HashMap(); + + static { + + initServerString(); + + String weblogic = System.getProperty("weblogic.Name"); + String tomcat = System.getProperty("catalina.home"); + String jeus = System.getProperty("jeus.home"); + String jboss = System.getProperty("program.name"); + String websphere = System.getProperty("ibm.websphere.internalClassAccessMode"); + + if (tomcat != null && !tomcat.trim().equals("")) { + result = TOMCAT; + } else if (weblogic != null && !weblogic.trim().equals("")) { + result = WEBLOGIC; + } else if (jeus != null && !jeus.trim().equals("")) { + result = JEUS; + } else if (jboss != null && jboss.startsWith("JBossTools")) { + result = JBOSS; + } else if (websphere != null && !websphere.trim().equals("")) { + result = WEBSPHERE; + } else { + result = 0; + } + } + + /** + * Inits the server string. + */ + private static void initServerString() { + containerString.put(String.valueOf(TOMCAT), "TOMCAT"); + containerString.put(String.valueOf(WEBLOGIC), "WEBLOGIC"); + containerString.put(String.valueOf(JEUS), "JEUS"); + containerString.put(String.valueOf(ORACLE_AS), "ORACLE_AS"); + containerString.put(String.valueOf(WEBSPHERE), "WEBSPHERE"); + containerString.put(String.valueOf(JBOSS), "JBOSS"); + containerString.put(String.valueOf(UNKNOWN), "UNKNOWN"); + } + + /** + * Gets the string. + * + * @param container the container + * + * @return the string + */ + public static String getString(int container) { + return (String) containerString.get(String.valueOf(container)); + } + + /** + * Gets the string. + * + * @return the string + */ + public static String getString() { + return getString(get()); + } + + /** + * Gets the Container. + * + * 다음과 같은 형태로 사용 합니다. {@code + * if (ContainerUtil.get() == ContainerUtil.WEBLOGIC) { + * ... + * } + * } + * + * @return int Container + */ + public static int get() { + return result; + } + public static String getInstanceName(){ + switch(result) { + case TOMCAT : + case WEBLOGIC : + case JEUS : + case WEBSPHERE : + case JBOSS : + case UNKNOWN : + return System.getProperty(Keys.SERVER_KEY); + default : + return ""; + } + + + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/DatetimeUtil.java b/src/main/java/com/eactive/eai/common/util/DatetimeUtil.java new file mode 100644 index 0000000..ae8d165 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/DatetimeUtil.java @@ -0,0 +1,355 @@ +package com.eactive.eai.common.util; + +import java.time.Instant; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.OffsetDateTime; +import java.time.ZoneId; +import java.time.ZonedDateTime; +import java.time.format.DateTimeFormatter; +import java.time.temporal.TemporalField; +import java.time.temporal.WeekFields; +import java.util.Date; +import java.util.Locale; + + +/** + * 1. 기능 : Date, Time 관련 Utility Method 정의 + * 2. 처리 개요 : + * + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : + * @since : + */ +public final class DatetimeUtil { + + + private static final DateTimeFormatter SDF_YYMMDDHHMMSS = DateTimeFormatter.ofPattern( "yyMMddHHmmss"); +// private static final DateTimeFormatter SDF_YYYY = DateTimeFormatter.ofPattern( "yyyy"); +// private static final DateTimeFormatter SDF_YYYYMM = DateTimeFormatter.ofPattern( "yyyyMM"); + private static final DateTimeFormatter SDF_YYYYMMDD = DateTimeFormatter.ofPattern( "yyyyMMdd"); +// private static final DateTimeFormatter SDF_YYYYMMDD_DASH = DateTimeFormatter.ofPattern( "yyyy-MM-dd"); +// private static final DateTimeFormatter SDF_YYYYMMDD_SLASH = DateTimeFormatter.ofPattern( "yyyy/MM/dd"); +// private static final DateTimeFormatter SDF_YYYYMMDD_DOT = DateTimeFormatter.ofPattern( "yyyy.MM.dd"); +// private static final DateTimeFormatter SDF_YYYYMMDDHHMM = DateTimeFormatter.ofPattern( "yyyyMMddHHmm"); + private static final DateTimeFormatter SDF_YYYYMMDDHHMMSS = DateTimeFormatter.ofPattern( "yyyyMMddHHmmss"); +// private static final DateTimeFormatter SDF_YYYYMMDDHHMMM_DASH_DOT = DateTimeFormatter.ofPattern( "yyyy-MM-dd hh:mm a"); +// private static final DateTimeFormatter SDF_YYYYMMDDHHMMSS_NO_MARK = DateTimeFormatter.ofPattern( "yyyyMMddHHmmss"); +// private static final DateTimeFormatter SDF_YYYYMMDDHHMMSSM_DASH_DOT = DateTimeFormatter.ofPattern( "yyyy-MM-dd hh:mm:ss a"); + private static final DateTimeFormatter SDF_YYYYMMDDHHMMSSM_DASH = DateTimeFormatter.ofPattern( "yyyy-MM-dd HH:mm:ss"); + private static final DateTimeFormatter SDF_YYYYMMDDHHMMSSMS_NO_MARK = DateTimeFormatter.ofPattern( "yyyyMMddHHmmssSSS" ); + private static final DateTimeFormatter SDF_HHMMSS_NO_MARK = DateTimeFormatter.ofPattern( "HHmmss" ); +// private static final DateTimeFormatter SDF_HHMMSSMS_CEMI_COL = DateTimeFormatter.ofPattern( "HH:mm:ss.SSS" ); + private static final DateTimeFormatter SDF_YYYYMMDDHHMMSSMS_DASH_CEMI_COL = DateTimeFormatter.ofPattern( "yyyy-MM-dd HH:mm:ss.SSS" ); + private static final DateTimeFormatter SDF_YYYYMMDDHHMMSSSS_NO_MARK = DateTimeFormatter.ofPattern( "yyyyMMddHHmmssSSS" ); + private static final DateTimeFormatter SDF_HHMMSSSS_NO_MARK = DateTimeFormatter.ofPattern( "HHmmssSSS" ); + + + + + /** + * Private 생성자 + * Instance를 생성하지 못함 + */ + private DatetimeUtil() + { + + } + private static ZonedDateTime get(){ + return ZonedDateTime.now(); + } + + private static ZonedDateTime get(long time){ + Instant instant = Instant.ofEpochMilli(time); + return ZonedDateTime.ofInstant(instant, ZoneId.systemDefault()); + } + private static ZonedDateTime get(Date date){ + return ZonedDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault()); + } + /** + * 1. 기능 : 현재시간을 yyyyMMddHHmmssSS 형태로 변환 + * 2. 처리 개요 : + * - currentmilisec 를 입력받아 yyyyMMddHHmmssSS 형태로 변환한다. + * 3. 주의사항 + * + * @param timeLong 현재시간 Long + * @return String + * @exception + **/ + + public static String getCurrentTime(long timeLong) + { + return SDF_YYYYMMDDHHMMSSMS_NO_MARK.format(get(timeLong)); + } + + + /** + * 1. 기능 : 현재시간 스트링을 YYYYMMDDHHMMSSsss 형식으로 1/1000초까지 얻을 수 있는 Method + * 2. 처리 개요 : + * - 현재시간을 yyyyMMddHHmmssSS 형태로 변환한다. + * 3. 주의사항 + * + * @return 1/1000까지 표시한 현재 시간 스트링(예: 20040920162110999) + * @exception + **/ + + public static java.lang.String getCurrentTimeMillis() { // 1/1000 sec. + return (SDF_YYYYMMDDHHMMSSMS_NO_MARK).format(get()); + } + + + /** + * 1. 기능 : 현재날짜 스트링을 YYYYMMDD 형식으로 얻는 Method + * 2. 처리 개요 : + * - 현재시간을 yyyyMMddHHmmssSS 형태로 변환한다. + * 3. 주의사항 + * + * @return 년월만 표시한 현재 날짜 스트링(예: 20040920) + * @exception + **/ + public static java.lang.String getCurrentDate() { + return (SDF_YYYYMMDD).format(get()); + } + + /** + * 1. 기능 : 현재시간을 시분초 형식의 스트링으로 얻는 Method + * 2. 처리 개요 : + * - 현재시간을 yyyyMMddHHmmssSS 형태로 변환한다. + * 3. 주의사항 + * + * @return 시분초만 표시한 현재 시간 스트링(예: 162027) + * @exception + **/ + public static java.lang.String getCurrentTime() { + return (SDF_HHMMSS_NO_MARK).format(get()); + } + + /** + * 1. 기능 : 현재 날짜시간 스트링을 년월일시분초로 가져오는 Method + * 2. 처리 개요 : + * - 현재 날짜시간 스트링을 년월일시분초로 가져오는 Method + * 3. 주의사항 + * + * @return 년월일시분초 시간 스트링(예: 20040921194425) + * @exception + **/ + public static java.lang.String getCurrentDateTime() { + return (SDF_YYYYMMDDHHMMSS).format(get()); + } + + /** + * 1. 기능 : 형식화된 Date 문자열 리턴하는 메서드 + * 2. 처리 개요 : + * - format은 "YYYYMMDD" 등 자바에서 지원하는 date format을 사용.format의 길이만큼 잘라서 리턴함. + * 3. 주의사항 + * + * @param format "YYYY-MM-DD HH:mm:ss.SSS", SSS는 밀리세컨드 단위 + * @param day 변환 대상 일자 + * @return 형식화된 date 문자열 + * @exception + **/ + public static String getFormattedDate( String format, java.util.Date day ) + { + if ( day == null || format == null ) + return ""; + DateTimeFormatter formatter = DateTimeFormatter.ofPattern(format); + + String result = formatter.format(get(day)); + if ( result.length() > format.length() ) + result = result.substring( 0, format.length() ); + return result; + } + public static String getFormattedDate( String format ) + { + if ( format == null ) + return ""; + DateTimeFormatter formatter = DateTimeFormatter.ofPattern(format); + + String result = formatter.format(get()); + if ( result.length() > format.length() ) + result = result.substring( 0, format.length() ); + return result; + } + + /** + * 1. 기능 : 현재 요일을 숫자로 리턴하는 Method + * 2. 처리 개요 : + * - 현재 요일을 숫자로 리턴하는 Method + * 3. 주의사항 + * Calander dayofweek + * 일(1),월(2),화(3),수(4),목(5),금(6),토(7) + * + * + * @return 현재 요일 숫자 + * @exception + **/ + public static int getDayOfWeekNum() { + TemporalField filedISO = WeekFields.of(Locale.KOREA).dayOfWeek(); + return get().getDayOfWeek().get(filedISO); + } + + /** + * 1. 기능 : 현재 요일을 숫자로 리턴하는 Method + * 2. 처리 개요 : + * - 현재 요일을 숫자로 리턴하는 Method + * 3. 주의사항 + * + * @return 현재 요일 숫자 + * @exception + **/ + public static int getDayOfWeekNum(long time) { + ZonedDateTime zdt = get(time); + TemporalField filedISO = WeekFields.of(Locale.KOREA).dayOfWeek(); + return zdt.getDayOfWeek().get(filedISO); + } + + public static String getCurrentTime12() + { + return SDF_YYMMDDHHMMSS.format(get()); + } + + public static String getDate8() + { + return SDF_YYYYMMDD.format(get()); + } + + public static String getTime6() + { + return SDF_HHMMSS_NO_MARK.format(get()); + } + public static String getTime8() + { + return SDF_HHMMSSSS_NO_MARK.format(get()).substring(0,8); + } + public static String getDate(int ai_day) { + return SDF_YYYYMMDD.format(get().plusDays(ai_day)); + } + public static String getTimeStampString() { + return SDF_YYYYMMDDHHMMSSM_DASH.format(get()); + } + public static boolean isDateValue(String srcValue) { + try { + SDF_YYYYMMDD.parse(srcValue); + } catch (Exception e) { + return false; + } + return true; + } + + public static boolean isTimeValue(String srcValue) { + try { + SDF_HHMMSS_NO_MARK.parse(srcValue); + } catch (Exception e) { + return false; + } + return true; + } + + public static long getLongTime(String yyyyMMddHHmmssSSS){ + LocalDateTime zdt = LocalDateTime.parse(yyyyMMddHHmmssSSS, SDF_YYYYMMDDHHMMSSMS_NO_MARK); + return zdt.toInstant(OffsetDateTime.now().getOffset()).toEpochMilli(); + } + public static long getLongTimeFormat(String format, String dateString ){ + LocalDateTime zdt = LocalDateTime.parse(dateString, DateTimeFormatter.ofPattern( format)); + return zdt.toInstant(OffsetDateTime.now().getOffset()).toEpochMilli(); + } +// private static long getTimeMiliDiff(String inptMsgWritYms, long logTime) { +// +// long milisecsDiff = 0; +// String dateStr = ""; +// +// DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"); +// +// try { +// if(inptMsgWritYms!= null && inptMsgWritYms.length() >= 17) { +// dateStr = inptMsgWritYms.substring(0,17); +// } +// else { +// return 0; +// } +// +// LocalDateTime zdt = LocalDateTime.parse(dateStr,fmt); +// long time = zdt.toInstant(OffsetDateTime.now().getOffset()).toEpochMilli(); +// +// milisecsDiff = (logTime - time); +// } +// catch(Exception e) { +// return 0; +// } +// +// return milisecsDiff; +// } + public static String getDate(String startDate, int days) throws Exception { + + DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyyMMdd"); + ZonedDateTime zdt = LocalDate.parse(startDate, fmt).plusDays(days).atStartOfDay(ZoneId.systemDefault()); + return fmt.format(zdt); + } + + public static String getCurrentTimeDash(long timeLong){ + Instant instant = Instant.ofEpochMilli(timeLong); + ZonedDateTime zdt = ZonedDateTime.ofInstant(instant, ZoneId.systemDefault()); + return SDF_YYYYMMDDHHMMSSM_DASH.format(zdt); + } + + public static String getCurrentTimeMs(long timeLong){ + Instant instant = Instant.ofEpochMilli(timeLong); + ZonedDateTime zdt = ZonedDateTime.ofInstant(instant, ZoneId.systemDefault()); + return SDF_YYYYMMDDHHMMSSMS_DASH_CEMI_COL.format(zdt); + } + + public static String getCurrentTimeMsNoMark(long timeLong){ + Instant instant = Instant.ofEpochMilli(timeLong); + ZonedDateTime zdt = ZonedDateTime.ofInstant(instant, ZoneId.systemDefault()); + return SDF_YYYYMMDDHHMMSSSS_NO_MARK.format(zdt); + } + + // public static void main(String args[]) throws Exception { +// test(String args[]); +//} + +//private static void test(String args[]) throws Exception { +// +// +// System.out.println("getCurrentTime = " + getCurrentTime(new Date().getTime())); +// System.out.println("getCurrentTimeMillis = "+ getCurrentTimeMillis()); +// System.out.println("getCurrentDate = " + getCurrentDate()); +// System.out.println("getCurrentTime = " + getCurrentTime()); +// System.out.println("getCurrentDateTime = " + getCurrentDateTime()); +// System.out.println("getDayOfWeekNum = " + getDayOfWeekNum()); +// System.out.println("getDayOfWeekNum = " + getDayOfWeekNum(new Date().getTime())); +// System.out.println("getFormattedDate = " + getFormattedDate("yyyyMMddHHmmssSSS",new Date())); +// +//// System.out.println("일="+getDayOfWeekNum("yyyyMMdd","20190602")); +//// System.out.println("월="+getDayOfWeekNum("yyyyMMdd","20190603")); +//// System.out.println("화="+getDayOfWeekNum("yyyyMMdd","20190604")); +//// System.out.println("수="+getDayOfWeekNum("yyyyMMdd","20190605")); +//// System.out.println("목="+getDayOfWeekNum("yyyyMMdd","20190606")); +//// System.out.println("금="+getDayOfWeekNum("yyyyMMdd","20190607")); +//// System.out.println("토="+getDayOfWeekNum("yyyyMMdd","20190608")); +// +// +// +// +// System.out.println(getCurrentTime12()); +// System.out.println(getDate8()); +// System.out.println(getTime6()); +// System.out.println(getDate(1)); +// System.out.println(getTimeStampString()); +// System.out.println("isDateValue = " + isDateValue("20190602")); +// System.out.println("isDateValue = " + isDateValue("20191302")); +// System.out.println("isTimeValue = " + isTimeValue("121230")); +// System.out.println("isTimeValue = " + isTimeValue("126130")); +// +// Date date = new Date(); +// System.out.println("getLongTime="+getLongTime(getFormattedDate("yyyyMMddHHmmssSSS",date))); +// System.out.println("getLongTime="+date.getTime()); +// +// System.out.println(getFormattedDate("yyyyMMdd",date)); +// System.out.println(getFormattedDate("HHmmss",date)); +// } + +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/LogKeys.java b/src/main/java/com/eactive/eai/common/util/LogKeys.java new file mode 100644 index 0000000..ba6ee90 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/LogKeys.java @@ -0,0 +1,72 @@ +package com.eactive.eai.common.util; + +/** + * 1. 기능 : logback 환경을 위한 상수를 정의한 interface + * 2. 처리 개요 : + * + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : + * @since : + */ + +public interface LogKeys +{ + public static final String LOGGER_INFO ="FileLoggerInfo"; + + // File Appender + public static final String APPENDER_DEFAULT ="FileAppender{DEFAULT}"; + public static final String APPENDER_SMS ="FileAppender{SMS}"; + public static final String APPENDER_SIFT ="FileAppender{SIFT}"; + + // Logger + public static final String LOGGER_DEFAULT_PREFIX ="FileLogger{DEFAULT}"; + public static final String LOGGER_ESBFW_PREFIX ="FileLogger{ESBFW}"; + public static final String LOGGER_ADAPTER_PREFIX ="FileLogger{ADAPTER}"; + public static final String LOGGER_SMS_PREFIX ="FileLogger{SMS}"; + public static final String LOGGER_TRAN_PREFIX ="FileLogger{TRAN}"; + public static final String LOGGER_NET_PREFIX ="FileLogger{NET}"; + public static final String LOGGER_CLIENT_PREFIX ="FileLogger{CLIENT}"; + public static final String LOGGER_ROOT_PREFIX ="FileLogger{ROOT}"; + public static final String LOGGER_SIFT_PREFIX ="FileLogger{SIFT}"; + + public static final String LOG_DIRECOTRY_PREFIX ="log.directory.prefix"; + public static final String LOG_DIRECOTRY_SUB ="log.directory.sub"; + public static final String PATTERN_LAYOUT ="pattern.layout"; + public static final String LOGGER_LIST ="logger.list"; + public static final String APPENDER_LIST ="appender.list"; + + public static final String ECS_SERVICENAME = "ecs.service.name"; + public static final String ECS_CONFIG = "elastic.apm.config_file"; + /** + * FileAppender + */ + public static final String LOG_FILE ="log.file"; + public static final String DATE_PATTERN ="date.pattern"; + public static final String APPEND ="append"; + public static final String MAX_BACKUP_INDEX ="max.backup.index"; + public static final String ENCODING ="encoding"; + public static final String COMPRESS_EXT ="compress.ext"; + + public static final String ADITIVITY ="aditivity"; + public static final String LOG_LEVEL ="log.level"; + public static final String CONSOLE ="console"; + public static final String APPENDER ="appender"; + public static final String SMS_INTERVAL = "sms.interval.mi"; // sms logging interval(minute) + + public static final String CONSOLE_APPENDER = "Appender{CONSOLE}"; + + public static final String LOG_ON = "on"; + public static final String LOG_OFF = "off"; + + public static final String TRACE = "trace"; + public static final String DEBUG = "debug"; + public static final String INFO = "info"; + public static final String WARN = "warn"; + public static final String ERROR = "error"; + public static final String FATAL = "fatal"; + + public static final String DISCRIMINATOR = "discriminator"; +} diff --git a/src/main/java/com/eactive/eai/common/util/Logger.java b/src/main/java/com/eactive/eai/common/util/Logger.java new file mode 100644 index 0000000..c967420 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/Logger.java @@ -0,0 +1,1102 @@ +package com.eactive.eai.common.util; + +import java.io.File; +import java.nio.charset.Charset; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.Properties; + +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.text.StrSubstitutor; +import org.slf4j.LoggerFactory; + +import com.eactive.eai.common.property.FileLoggerPropertyChangeListener; +import com.eactive.eai.common.property.PropManager; +import com.eactive.eai.common.server.EAIServerManager; +import com.eactive.eai.common.server.Keys; +import com.eactive.eai.common.util.logger.CustomPatternLayoutEncoder; + +import ch.qos.logback.classic.Level; +import ch.qos.logback.classic.LoggerContext; +import ch.qos.logback.classic.encoder.PatternLayoutEncoder; +import ch.qos.logback.classic.jul.LevelChangePropagator; +import ch.qos.logback.classic.sift.MDCBasedDiscriminator; +import ch.qos.logback.classic.sift.SiftingAppender; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.ConsoleAppender; +import ch.qos.logback.core.Context; +import ch.qos.logback.core.FileAppender; +import ch.qos.logback.core.rolling.RollingFileAppender; +import ch.qos.logback.core.rolling.TimeBasedRollingPolicy; +import ch.qos.logback.core.sift.AppenderFactory; +import co.elastic.logging.logback.EcsEncoder; + +/** + * 1. 기능 : Logback 을 통한 화일로그를 관리하는 Utility Class + * 2. 처리 개요 : + * + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : + * @since : + */ +public class Logger implements LogKeys { + /** logger list */ + protected static Hashtable loggers = new Hashtable(5); + + public static String LOGGER_DEFAULT; + public static String LOGGER_ESBFW; + public static String LOGGER_ADAPTER; + public static String LOGGER_SMS; + public static String LOGGER_TRAN; + public static String LOGGER_NET; + public static String LOGGER_CLIENT; + public static String LOGGER_SIFT; + + org.slf4j.Logger loggerImpl; +// ch.qos.logback.classic.Logger loggerImpl; + + static { + String eaiServer = System.getProperty(Keys.SERVER_KEY, ""); + LOGGER_DEFAULT = LOGGER_DEFAULT_PREFIX + "_" + eaiServer; + LOGGER_ESBFW = LOGGER_ESBFW_PREFIX + "_" + eaiServer; + LOGGER_ADAPTER = LOGGER_ADAPTER_PREFIX + "_" + eaiServer; + LOGGER_SMS = LOGGER_SMS_PREFIX + "_" + eaiServer; + LOGGER_TRAN = LOGGER_TRAN_PREFIX + "_" + eaiServer; + LOGGER_NET = LOGGER_NET_PREFIX + "_" + eaiServer; + LOGGER_CLIENT = LOGGER_CLIENT_PREFIX + "_" + eaiServer; + LOGGER_SIFT = LOGGER_SIFT_PREFIX + "_" + eaiServer; + } + + /** + * 1. 기능 : Logger factory method + * 2. 처리 개요 : + * - Logger Factory를 생성한다. + * 3. 주의사항 + * + * @param name Logger name + * @return Logger object + * @exception + **/ + static public synchronized Logger getLogger(String name) { + if ("transformer".equals(name)){ + name = LOGGER_DEFAULT; + } + Logger logger = loggers.get(name); + if (logger==null) { + logger = new Logger(name); + loggers.put(name, logger); + } + return logger; + } + + /** + * 1. 기능 : 동적으로 로그 레벨 변경 + * 2. 처리 개요 : + * - loggers 에 저장되어 있는 Logger를 가져 와서 PropManager에 있는 셋팅정보를 갱신한다. + * 3. 주의사항 + * - 처리전에 PropManager가 변경되어 있어야됨. + * ex) loggerName = FileLogger{DEFAULT} + * @param loggerName + */ +// static public synchronized void reloadLogLevel(String loggerName) { +// +// String localServer = EAIServerManager.getInstance().getLocalServerName(); +// +// Logger logger = loggers.get(loggerName+"_"+localServer); +// +// PropManager pmanager = PropManager.getInstance(); +// String aditivity = pmanager.getProperty(loggerName, ADITIVITY); +// String logLevel = pmanager.getProperty(loggerName, LOG_LEVEL); +// +// if(logLevel==null || logLevel.equals(DEBUG)) { +// logger.loggerImpl.setLevel(Level.DEBUG); +// } else if(logLevel.equals(INFO)) { +// logger.loggerImpl.setLevel(Level.INFO); +// } else if(logLevel.equals(WARN)) { +// logger.loggerImpl.setLevel(Level.WARN); +// } else if(logLevel.equals(ERROR)) { +// logger.loggerImpl.setLevel(Level.ERROR); +// } else if(logLevel.equals(TRACE)) { +// logger.loggerImpl.setLevel(Level.TRACE); +// } else { +// logger.loggerImpl.setLevel(Level.DEBUG); +// } +// } + + /** + * Constructor + */ + private Logger(String name) { + + if(name == null || name.equals("") || name.equals("root")) { + this.loggerImpl = LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME); + } else { + this.loggerImpl = LoggerFactory.getLogger(name); + } + + if(this.loggerImpl == null) { + this.loggerImpl = LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME); + } + +// if(name == null || name.equals("") || name.equals("root")) { +// this.loggerImpl = (ch.qos.logback.classic.Logger)LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME); +// } else { +// this.loggerImpl = (ch.qos.logback.classic.Logger)LoggerFactory.getLogger(name); +// } +// +// if(this.loggerImpl == null) { +// this.loggerImpl = (ch.qos.logback.classic.Logger)LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME); +// } + } + + /** + * 1. 기능 : Banner 형태의 로그를 출력 + * 2. 처리 개요 : + * - Banner 형태의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @exception + **/ + public void banner(Object msg) { + try { + this.loggerImpl.debug("==========================================================="); + this.loggerImpl.debug(msg.toString()); + this.loggerImpl.debug("==========================================================="); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : debug Level의 로그를 출력 + * 2. 처리 개요 : + * - debug Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @exception + **/ + public void debug(Object msg) { + try { + this.loggerImpl.debug(msg.toString()); + } catch (Throwable t) { + printOut(t, msg); + } + } + + public void debug(String format, Object... arguments) { + try { + this.loggerImpl.debug(format, arguments); + } catch (Throwable t) { + printOut(t, format); + } + } + + /** + * 1. 기능 : debug Level의 로그를 출력 + * 2. 처리 개요 : + * - debug Level의 로그를 출력 + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @exception + **/ + public void debugCode(String code, Object msg) { + try { + this.loggerImpl.debug(format(code,msg)); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : debug Level의 로그를 출력 + * 2. 처리 개요 : + * - debug Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @param t Throwable + * @exception + **/ + public void debug(Object msg, Throwable t) { + try { + this.loggerImpl.debug(msg.toString(), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + /** + * 1. 기능 : debug Level의 로그를 출력 + * 2. 처리 개요 : + * - debug Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @param t Throwable + * @exception + **/ + public void debug(String code, Object msg, Throwable t) { + try { + this.loggerImpl.debug(format(code,msg), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + /** + * 1. 기능 : info Level의 로그를 출력 + * 2. 처리 개요 : + * - info Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @exception + **/ + public void info(Object msg) { + try { + this.loggerImpl.info(msg.toString()); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : info Level의 로그를 출력 + * 2. 처리 개요 : + * - info Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @exception + **/ + public void infoCode(String code, Object msg) { + try { + this.loggerImpl.info(format(code,msg)); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : info Level의 로그를 출력 + * 2. 처리 개요 : + * - info Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @param t Throwable + * @exception + **/ + public void info(Object msg, Throwable t) { + try { + this.loggerImpl.info(msg.toString(), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + /** + * 1. 기능 : info Level의 로그를 출력 + * 2. 처리 개요 : + * - info Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @param t Throwable + * @exception + **/ + public void info(String code,Object msg, Throwable t) { + try { + this.loggerImpl.info(format(code,msg), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + public void info(String format, Object... arguments) { + try { + this.loggerImpl.info(format, arguments); + } catch (Throwable t) { + printOut(t, format); + } + } + + /** + * 1. 기능 : warn Level의 로그를 출력 + * 2. 처리 개요 : + * - warn Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @exception + **/ + public void warn(Object msg) { + try { + this.loggerImpl.warn(msg.toString()); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : warn Level의 로그를 출력 + * 2. 처리 개요 : + * - warn Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @exception + **/ + public void warnCode(String code, Object msg) { + try { + this.loggerImpl.warn(format(code,msg)); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : warn Level의 로그를 출력 + * 2. 처리 개요 : + * - warn Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @param t Throwable + * @exception + **/ + public void warn(Object msg, Throwable t) { + try { + this.loggerImpl.warn(msg.toString(), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + /** + * 1. 기능 : warn Level의 로그를 출력 + * 2. 처리 개요 : + * - warn Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @param t Throwable + * @exception + **/ + public void warn(String code, Object msg, Throwable t) { + try { + this.loggerImpl.warn(format(code,msg), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + public void warn(String format, Object... arguments) { + try { + this.loggerImpl.warn(format, arguments); + } catch (Throwable t) { + printOut(t, format); + } + } + + /** + * 1. 기능 : error Level의 로그를 출력 + * 2. 처리 개요 : + * - error Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @exception + **/ + public void error(Object msg) { + try { + this.loggerImpl.error(msg.toString()); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : error Level의 로그를 출력 + * 2. 처리 개요 : + * - error Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @exception + **/ + public void errorCode(String code, Object msg) { + try { + this.loggerImpl.error(format(code,msg)); + } catch (Throwable t) { + printOut(t, msg); + } + } + + /** + * 1. 기능 : error Level의 로그를 출력 + * 2. 처리 개요 : + * - error Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @param t Throwable + * @exception + **/ + public void error(String msg, Throwable t) { + try { + this.loggerImpl.error(msg, t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + /** + * 1. 기능 : error Level의 로그를 출력 + * 2. 처리 개요 : + * - error Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @param t Throwable + * @exception + **/ + public void error(String code, Object msg, Throwable t) { + try { + this.loggerImpl.error(format(code,msg), t); + } catch (Throwable th) { + printOut(t, th, msg); + } + } + + public void error(String format, Object... arguments) { + try { + this.loggerImpl.error(format, arguments); + } catch (Throwable t) { + printOut(t, format); + } + } + + /** + * 1. 기능 : fatal Level의 로그를 출력 + * 2. 처리 개요 : + * - fatal Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @exception + **/ + public void fatal(Object msg) { + error(msg); + } + + /** + * 1. 기능 : fatal Level의 로그를 출력 + * 2. 처리 개요 : + * - fatal Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @exception + **/ + public void fatalCode(String code, Object msg) { + errorCode(code, msg); + } + + /** + * 1. 기능 : fatal Level의 로그를 출력 + * 2. 처리 개요 : + * - fatal Level의 로그를 출력 + * 3. 주의사항 + * + * @param msg Object + * @param t Throwable + * @exception + **/ + public void fatal(Object msg, Throwable t) { + error(msg.toString(), t); + } + + /** + * 1. 기능 : fatal Level의 로그를 출력 + * 2. 처리 개요 : + * - fatal Level의 로그를 출력 (ErrorCode를 사용할 경우) + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @param t Throwable + * @exception + **/ + public void fatal(String code, Object msg, Throwable t) { + error(code, msg, t); + } + + + public void fatal(String format, Object... arguments) { + try { + this.loggerImpl.error(format, arguments); + } catch (Throwable t) { + printOut(t, format); + } + } + + /** + * 1. 기능 : debug Level의 로그를 출력 가능여부 확인 + * 2. 처리 개요 : + * - debug Level의 로그를 출력 가능여부 확인 + * 3. 주의사항 + * + * @return boolean + * @exception + **/ + public boolean isDebugEnabled() { + return this.loggerImpl.isDebugEnabled(); + } + + /** + * 1. 기능 : info Level의 로그를 출력 가능여부 확인 + * 2. 처리 개요 : + * - info Level의 로그를 출력 가능여부 확인 + * 3. 주의사항 + * + * @return boolean + * @exception + **/ + public boolean isInfoEnabled() { + return this.loggerImpl.isInfoEnabled(); + } + + /** + * 1. 기능 : warn Level의 로그를 출력 가능여부 확인 + * 2. 처리 개요 : + * - warn Level의 로그를 출력 가능여부 확인 + * 3. 주의사항 + * + * @return boolean + * @exception + **/ + public boolean isWarnEnabled() { + return this.loggerImpl.isWarnEnabled(); + } + + /** + * 1. 기능 : logback를 통해 로그를 남길 수 없는 경우 표준출력 제공 + * 2. 처리 개요 : + * - logback를 통해 로그를 남길 수 없는 경우 표준출력 제공 + * 3. 주의사항 + * + * @param t Throwable + * @param msg Object + * @exception + **/ + private void printOut(Throwable t, Object msg) { + System.out.println("can't write to log file!! Because of " + t); + System.out.println("the message will be printed to System.out"); + System.out.println(msg); + } + + /** + * 1. 기능 : logback를 통해 로그를 남길 수 없는 경우 표준출력 제공 + * 2. 처리 개요 : + * - logback를 통해 로그를 남길 수 없는 경우 표준출력 제공 + * 3. 주의사항 + * + * @param t Throwable + * @param th Throwable + * @param msg Object + * @exception + **/ + private void printOut(Throwable t, Throwable th, Object msg) { + System.out.println("can't write to log file!! Because of " + t); + System.out.println("the message will be printed to System.out"); + System.out.println(th); + System.out.println(msg); + } + + /** + * 1. 기능 : ErrorCode와 메시지의 출력 포맷을 정의 + * 2. 처리 개요 : + * - ErrorCode와 메시지의 출력 포맷을 정의 + * 3. 주의사항 + * + * @param code String + * @param msg Object + * @exception + **/ + private String format(String code, Object msg) { + StringBuffer sb = new StringBuffer(); + sb.append("[").append(code).append("]") + .append(" ").append(msg); + + return sb.toString(); + } + + /** + * 1. 기능 : PropManager를 통해 logback의 환경을 설정 + * 2. 처리 개요 : + * - PropManager를 통해 logback의 환경을 설정 + * 3. 주의사항 + * + * @exception + **/ + public static void doConfigure() { + try { + System.out.println("@ Logger is initializing. ========================================"); + PropManager pmanager = PropManager.getInstance(); + Properties loggerInfo= pmanager.getProperties(LOGGER_INFO); + String defaultLayout = loggerInfo.getProperty(PATTERN_LAYOUT); +// String layout = "[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread][%-5level] \\(%F:%L\\) %-20M -%msg%n"; + if(defaultLayout==null || defaultLayout.equals("")) { + throw new RuntimeException("RECEAICUL003"); + } + + String logDirectory = loggerInfo.getProperty(LOG_DIRECOTRY_PREFIX); + if(logDirectory==null || logDirectory.equals("")) { + throw new RuntimeException("RECEAICUL004"); + } + + String loggerList = loggerInfo.getProperty(LOGGER_LIST); + if(loggerList==null || loggerList.equals("")) { + throw new RuntimeException("RECEAICUL005"); + } + + String appenderList = loggerInfo.getProperty(APPENDER_LIST); + if(appenderList==null || appenderList.equals("")) { + throw new RuntimeException("RECEAICUL006"); + } + + LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); + lc.reset(); + + LevelChangePropagator propagator = new LevelChangePropagator(); + propagator.setContext(lc); + propagator.setResetJUL(true); + propagator.start(); + + lc.addListener(propagator); + + CustomPatternLayoutEncoder ple = new CustomPatternLayoutEncoder(); + ple.setPattern( defaultLayout ); + ple.setContext(lc); + ple.start(); + + ConsoleAppender consoleAppender = new ConsoleAppender(); + consoleAppender.setName(CONSOLE_APPENDER); + consoleAppender.setEncoder( ple ); + consoleAppender.setContext( lc ); + consoleAppender.start(); + + String[] appenderNameList = StringUtil.getStrArray(appenderList,","); + + HashMap> fa = new HashMap>(); + + for(int i=0;i appender = addFileAppender(appenderNameList[i]); + if ( appender == null ) { + continue; + } + + String serviceName = pmanager.getProperty(appenderNameList[i], ECS_SERVICENAME); + String elasticApmConfig = System.getProperty(ECS_CONFIG); + if (StringUtils.isNotEmpty(elasticApmConfig) && StringUtils.isNotEmpty(serviceName)) { + System.out.println("@ add EcsEncoder to "+appender.getName()+" - "+serviceName); + EcsEncoder ecsEncoder = new EcsEncoder(); + ecsEncoder.setServiceName(serviceName); + ecsEncoder.setContext(lc); + ecsEncoder.start(); + appender.setEncoder(ecsEncoder); + } else { + System.out.println("@ add CustomPatternLayoutEncoder to "+appender.getName()); + CustomPatternLayoutEncoder fple = new CustomPatternLayoutEncoder(); + fple.setContext(lc); + + String appenderLayout = pmanager.getProperty(appenderNameList[i], PATTERN_LAYOUT); + if (appenderLayout == null) { + fple.setPattern(defaultLayout); + } else { + fple.setPattern(appenderLayout); + } + String encoding = pmanager.getProperty(appenderNameList[i], ENCODING); + if (encoding == null) { + encoding = ""; + } else { + encoding = encoding.trim(); + } + if (StringUtils.isNotBlank(encoding)) { + fple.setCharset(Charset.forName(encoding)); + } + fple.start(); + appender.setEncoder(fple); + } + + appender.start(); + fa.put(appenderNameList[i], appender); + } + + ch.qos.logback.classic.Logger logger = null; + String[] loggerNameList = StringUtil.getStrArray(loggerList,","); + + for(int i=0;i appender = + (RollingFileAppender)fa.get(appenderName); + if(appender==null) { + continue; + } + + logger.addAppender(appender); + System.out.println("@ add FileAppender to "+logger.getName()+" - "+appender.getName()); + } + } + + + // GW SIFT Logger + PatternLayoutEncoder sple = new PatternLayoutEncoder(); + sple.setContext(lc); + String appenderLayout = pmanager.getProperty(APPENDER_SIFT, PATTERN_LAYOUT); + if (StringUtils.isBlank(appenderLayout)) + sple.setPattern(defaultLayout); + else + sple.setPattern(appenderLayout); + String encoding = pmanager.getProperty(APPENDER_SIFT, ENCODING); + if (StringUtils.isNotBlank(encoding)) + sple.setCharset(Charset.forName(encoding)); + sple.start(); + + MDCBasedDiscriminator discriminator = new MDCBasedDiscriminator(); + discriminator.setKey(DISCRIMINATOR); + discriminator.setDefaultValue("default"); + discriminator.start(); + + SiftingAppender siftAppender = new SiftingAppender(); + siftAppender.setContext(lc); + siftAppender.setName(APPENDER_SIFT); + siftAppender.setDiscriminator(discriminator); + siftAppender.setAppenderFactory(new AppenderFactory() { + @Override + public FileAppender buildAppender(Context context, String discriminatingValue) { + + String localServer = EAIServerManager.getInstance().getLocalServerName(); + String appenderLogDirectory = pmanager.getProperty(APPENDER_SIFT, LOG_DIRECOTRY_PREFIX); + if (StringUtils.isBlank(appenderLogDirectory)) + appenderLogDirectory = logDirectory; + + String appenderLogDirectorySub = pmanager.getProperty(APPENDER_SIFT, LOG_DIRECOTRY_SUB); + if (StringUtils.isBlank(appenderLogDirectorySub)) + appenderLogDirectorySub = "trsc"; + + String datePattern = pmanager.getProperty(APPENDER_SIFT, DATE_PATTERN); + if (StringUtils.isBlank(datePattern)) + datePattern = "-%d{yyyy-MM-dd}"; + + String sMaxBackupIndex = pmanager.getProperty(APPENDER_SIFT,MAX_BACKUP_INDEX); + int maxBackupIndex = 0; + try { + maxBackupIndex = Integer.parseInt(sMaxBackupIndex); + } catch(Exception e) { + maxBackupIndex = 60; + } + + RollingFileAppender rollingFileAppender = new RollingFileAppender<>(); + rollingFileAppender.setContext(context); + rollingFileAppender.setName("FILE-" + discriminatingValue); + rollingFileAppender.setFile(appenderLogDirectory + localServer + File.separator + appenderLogDirectorySub + File.separator + discriminatingValue + ".log"); + + TimeBasedRollingPolicy rollingPolicy = new TimeBasedRollingPolicy<>(); + rollingPolicy.setContext(context); + rollingPolicy.setFileNamePattern(appenderLogDirectory + localServer + File.separator + appenderLogDirectorySub + File.separator + discriminatingValue + datePattern + ".log"); + rollingPolicy.setParent(rollingFileAppender); + rollingPolicy.setMaxHistory(maxBackupIndex); + rollingPolicy.start(); + + rollingFileAppender.setEncoder(sple); + rollingFileAppender.setRollingPolicy(rollingPolicy); + rollingFileAppender.start(); + + return rollingFileAppender; + } + }); + + siftAppender.start(); + + String logLevel = pmanager.getProperty(LOGGER_SIFT_PREFIX, LOG_LEVEL); + String aditivity = pmanager.getProperty(LOGGER_SIFT_PREFIX, ADITIVITY); + + ch.qos.logback.classic.Logger siftLogger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(LOGGER_SIFT); + siftLogger.setLevel(Level.toLevel(logLevel)); + siftLogger.addAppender(siftAppender); + try { + siftLogger.setAdditive(Boolean.parseBoolean(aditivity)); + } catch(Exception e) { + siftLogger.setAdditive(false); + } + System.out.println("@ add FileAppender to " + siftLogger.getName() + " - " + siftAppender.getName()); + + PropManager prptManager = PropManager.getInstance(); + prptManager.addPropertyChangeListener( new FileLoggerPropertyChangeListener() ); + + ch.qos.logback.classic.Logger hc5Logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger("org.apache.hc.client5.http"); + hc5Logger.detachAndStopAllAppenders(); + + String adapterLogLevel = pmanager.getProperty(LOGGER_ADAPTER_PREFIX, LOG_LEVEL); + hc5Logger.setLevel(Level.toLevel(adapterLogLevel)); + hc5Logger.setAdditive(false); + + String appenderNames = pmanager.getProperty(LOGGER_ADAPTER_PREFIX, APPENDER); + if(appenderNames!=null) { + for(String appenderName : appenderNames.split(",")){ + RollingFileAppender appender = + (RollingFileAppender)fa.get(appenderName); + if(appender==null) { + continue; + } + + hc5Logger.addAppender(appender); + System.out.println("@ add FileAppender to "+hc5Logger.getName()+" - "+appender.getName()); + } + } + + } catch(Exception e) { + System.err.println("@@ Logger Configure Error.==================="); + e.printStackTrace(); + } + } + + public static void setLoggerLevel(String loggerName) { + + ch.qos.logback.classic.Logger logger = null; + Level asisLevel = null; + Level toLevel = null; + + try { + PropManager pmanager = PropManager.getInstance(); + String logLevel = pmanager.getProperty(loggerName, LOG_LEVEL); + + String localServer = EAIServerManager.getInstance().getLocalServerName(); + if(loggerName.startsWith(LOGGER_ROOT_PREFIX)){ + logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME); + }else{ + logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(loggerName+"_"+localServer); + } + toLevel = Level.toLevel(logLevel, null); + + if ( logger == null || toLevel == null) { + System.out.println("@@ Logger setLoggerLevel | loggerName [" + + loggerName + "] or Level [" + logLevel + "] is incorrect"); + return; + } + + asisLevel = logger.getLevel(); + if ( asisLevel.toInt() != toLevel.toInt() ) { + logger.setLevel( toLevel ); + System.out.println("@@ Logger setLoggerLevel | " + loggerName + + " AS-IS [" + asisLevel.toString() + "] TO [" + toLevel.toString() + "]"); + } + + } catch (Exception e) { + System.err.println("@@ Logger setLoggerLevel Error | " + + loggerName + " | " + e.getMessage() ); + } + } + + /** + * 1. 기능 : logback의 logger를 추가 + * 2. 처리 개요 : + * - logback API를 통해 logger를 추가 + * 3. 주의사항 + * + * @exception + **/ + public static ch.qos.logback.classic.Logger addLogger(String loggerName) { + + ch.qos.logback.classic.Logger logger = null; + + try { + PropManager pmanager = PropManager.getInstance(); + String logLevel = pmanager.getProperty(loggerName, LOG_LEVEL); + String aditivity = pmanager.getProperty(loggerName, ADITIVITY); + + String localServer = EAIServerManager.getInstance().getLocalServerName(); + logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(loggerName+"_"+localServer); + + try { + logger.setAdditive(new Boolean(aditivity).booleanValue()); + } catch(Exception e) { + logger.setAdditive(false); + } + + if(logLevel==null || logLevel.equals(DEBUG)) { + logger.setLevel(Level.DEBUG); + } else if(logLevel.equals(INFO)) { + logger.setLevel(Level.INFO); + } else if(logLevel.equals(WARN)) { + logger.setLevel(Level.WARN); + } else if(logLevel.equals(ERROR)) { + logger.setLevel(Level.ERROR); + } else if(logLevel.equals(TRACE)) { + logger.setLevel(Level.TRACE); + } else { + logger.setLevel(Level.DEBUG); + } + } catch (Exception e) { + System.err.println("@@ Logger Configure Error.==================="); + System.err.println("@@ addFileAppender | " + loggerName + " | " + e.getMessage() ); + logger = null; + } + + return logger; + } + + /** + * 1. 기능 : logback의 FileAppender를 추가 + * 2. 처리 개요 : + * - logback API를 통해 FileAppender를 추가 + * 3. 주의사항 + * + * @exception + **/ + public static RollingFileAppender addFileAppender(String appenderName) { + + RollingFileAppender appender = null; + + try { + PropManager pmanager = PropManager.getInstance(); + + String logFile = pmanager.getProperty(appenderName, LOG_FILE); + if(logFile==null || logFile.equals("")) { + throw new RuntimeException("RECEAICUL007"); + } + + String datePattern = pmanager.getProperty(appenderName, DATE_PATTERN); + if(datePattern==null || datePattern.equals("")) { + throw new RuntimeException("RECEAICUL008"); + } + if(datePattern.equals("'-'yyyy.MM.dd")){ + datePattern = "-%d{yyyy.MM.dd}"; + } + String append = pmanager.getProperty(appenderName,APPEND); + if(append==null || append.equals("")) { + throw new RuntimeException("RECEAICUL009"); + } + + String logDirectory = StrSubstitutor.replaceSystemProperties( + pmanager.getProperty(LOGGER_INFO,LOG_DIRECOTRY_PREFIX)); + if(logDirectory==null || logDirectory.equals("")) { + throw new RuntimeException("RECEAICUL004"); + } + + String sMaxBackupIndex = pmanager.getProperty(appenderName,MAX_BACKUP_INDEX); + + int maxBackupIndex = 0; + try{ + maxBackupIndex = Integer.parseInt(sMaxBackupIndex); + }catch(Exception e) { + maxBackupIndex = 60; + } + + String compressExt = pmanager.getProperty(appenderName, COMPRESS_EXT); + + + appender = new RollingFileAppender(); + String localServer = EAIServerManager.getInstance().getLocalServerName(); + + TimeBasedRollingPolicy rollingPolicy = new TimeBasedRollingPolicy(); + if (StringUtils.isNotBlank(compressExt)){ + if (compressExt.startsWith(".")) { + compressExt = compressExt.substring(1); + } + rollingPolicy.setFileNamePattern( logDirectory + localServer + File.separator + logFile + datePattern + "." + compressExt); + }else{ + rollingPolicy.setFileNamePattern( logDirectory + localServer + File.separator + logFile + datePattern); + } + rollingPolicy.setContext( (LoggerContext) LoggerFactory.getILoggerFactory() ); + rollingPolicy.setParent(appender); + rollingPolicy.setMaxHistory(maxBackupIndex); + rollingPolicy.start(); + + appender.setFile( logDirectory + localServer + File.separator + logFile ); + appender.setRollingPolicy( rollingPolicy ); + try { + appender.setAppend(new Boolean(append).booleanValue()); + } catch(Exception e) { + appender.setAppend(true); + } + appender.setContext( (LoggerContext) LoggerFactory.getILoggerFactory() ); + appender.setName(appenderName); + + } catch (Exception e) { + System.err.println("@@ Logger Configure Error.==================="); + System.err.println("@@ addFileAppender | " + appenderName + " | " + e.getMessage() ); + appender = null; + } + + return appender; + } + +// public boolean isTrace(){ +// return this.loggerImpl.isTraceEnabled(); +// } + public boolean isDebug() { + return this.loggerImpl.isDebugEnabled(); + } + public boolean isInfo() { + return this.loggerImpl.isInfoEnabled(); + } + public boolean isWarn() { + return this.loggerImpl.isWarnEnabled(); + } + public boolean isError() { + return this.loggerImpl.isErrorEnabled(); + } +// public boolean isFatal() { +// return this.loggerImpl.getLevel().toInt()<=Level.ERROR_INT; // 5000 +// } + public static void stop() { + LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); + lc.stop(); + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/NullControl.java b/src/main/java/com/eactive/eai/common/util/NullControl.java new file mode 100644 index 0000000..a2558d6 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/NullControl.java @@ -0,0 +1,80 @@ +package com.eactive.eai.common.util; + +/** + * 1. 기능 : Date, Time 관련 Utility Method 정의 + * 2. 처리 개요 : + * + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : + * @since : + */ +public final class NullControl { + + + /** + * Private 생성자 + * Instance를 생성하지 못함 + */ + private NullControl() + { + + } + + /** + * 1. 기능 : Null값을 공백으로 변경 + * 2. 처리 개요 : + * - ""나 Null를 입력받아 SPACE로 변환한다. + * 3. 주의사항 + * + * @param "", Null + * @return String + * @exception + **/ + public static String addSpace(String val) + { + if(val == null || val.equals("")){ + val = " "; + } + + return val; + } + + /** + * 1. 기능 : 입력값을 트림하여 화이트스페이스를 없앤다. + * 2. 처리 개요 : + * - 입력받은 값을 트림하여 리턴한다. + * 3. 주의사항 + * + * @param "", Null + * @return String + * @exception + **/ + + public static String trimSpace(String val) + { + if(val == null || val.equals("")){ + val = ""; // ""나 Null을 체크하여 트림하여 에러가 발생하지 않도록 한다.. + }else{ + val = val.trim(); + } + + return val; + } + public static String trimSpace2(String val) + { + if(val == null || val.equals("")){ + return ""; // ""나 Null을 체크하여 트림하여 에러가 발생하지 않도록 한다.. + } + if (val.trim().length() > 0){ + return val; + } + else{ + return val.trim(); + } + } + + +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/ObjectUtil.java b/src/main/java/com/eactive/eai/common/util/ObjectUtil.java new file mode 100644 index 0000000..39988f0 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/ObjectUtil.java @@ -0,0 +1,142 @@ +package com.eactive.eai.common.util; + +import java.beans.PropertyDescriptor; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.io.Serializable; +import java.lang.reflect.Method; +import org.apache.commons.beanutils.BeanUtils; +import org.apache.commons.io.input.ClassLoaderObjectInputStream; + +import com.eactive.eai.common.errorcode.ErrorCodeHandler; +import com.eactive.eai.common.exception.ExceptionUtil; + +/** + * 1. 기능 : Object를 처리하는 Utility Class + * 2. 처리 개요 : + * * - + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : org.apache.commons.beanutils.BeanUtils + * @since : + * : + */ +public class ObjectUtil +{ + static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + + /** + * 1. 기능 : Object를 Copy하는 Method + * 2. 처리 개요 : + * - Object를 Copy하는 Method + * 3. 주의사항 + * + * @param input Object + * @return Object + * @exception + **/ + public static Object deepCopy(Object input) throws IOException { + byte[] buff = marshall(input); + return unmarshall(buff); + } + + /** + * 1. 기능 : Object를 byte[]로 marshall + * 2. 처리 개요 : + * - Object를 byte[]로 marshall + * 3. 주의사항 + * + * @param input Object + * @return byte[] + * @exception + **/ + public static byte[] marshall(Object input) throws IOException { + if(! (input instanceof Serializable) ) { + //throw new IOException("ObjectUtil] Marshall Error. Invalid Object Type. - "+input); + throw new IOException("RECEAICUL010"); + } + + ByteArrayOutputStream bos = null; + ObjectOutputStream oos = null; + try { + bos = new ByteArrayOutputStream(); + oos = new ObjectOutputStream(bos); + oos.writeObject((Serializable)input); + return bos.toByteArray(); + } catch(IOException e) { + //throw new IOException("ObjectUtil] Marshall Error. - "+e.getMessage()); + //throw new IOException("RECEAICUL011"); + throw new IOException(ExceptionUtil.getErrorCode(e,"RECEAICUL011")); + } finally { + try { if(oos!=null) oos.close(); } catch(Exception e) {} + try { if(bos!=null) bos.close(); } catch(Exception e) {} + } + } + +/** + * 1. 기능 : byte[]를 Object로 unmarshall + * 2. 처리 개요 : + * - byte[]를 Object로 unmarshall + * 3. 주의사항 + * + * @param input byte[] + * @return Object + * @exception + **/ + public static Object unmarshall(byte[] input) throws IOException { + ByteArrayInputStream bis = null; + ObjectInputStream ois = null; + try { + bis = new ByteArrayInputStream(input); + /* 20210727 + * ObjectInputStream의 기본 class loader는 Spring Loaded의 classloader에서 로딩한 클래스 목록이 없어 다음과 같은 오류 발생 + * java.lang.ClassNotFoundException: com.eactive.eai.common.message.ServiceMessage + * Windows일 경우에만 ClassLoaderObjectInputStream 사용하도록 함 + * TODO isWindows의 경우 로컬 개발이라는 명확한 설정인자가 될 수 없음 + * 추후 로컬 개발이라는 명확한 인자로 변경 요망(tomcat으로 변경) + */ +// if (Env.isWindows()){ + if (ContainerUtil.get() == ContainerUtil.TOMCAT){ + ois = new ClassLoaderObjectInputStream(ObjectUtil.class.getClassLoader(), bis); + }else{ + ois = new ObjectInputStream(bis); + } + return ois.readObject(); + } catch(Exception e) { + //throw new IOException("ObjectUtil] Unmarshall Error. - "+e.getMessage()); + //throw new IOException("RECEAICUL012"); + logger.error("unmarshall error", e); +// e.printStackTrace(); + throw new IOException(ExceptionUtil.getErrorCode(e,"RECEAICUL012")); + } finally { + try { if(ois!=null) ois.close(); } catch(Exception e) {} + try { if(bis!=null) bis.close(); } catch(Exception e) {} + } + } + + /** + * 1. 기능 : ValueObject형태의 Object의 어트리뷰트(변수)의 값을 추출 + * 2. 처리 개요 : + * - ValueObject형태의 Object의 어트리뷰트(변수)의 값을 추출 + * 3. 주의사항 + * + * @param valueObject + * @param varName 변수명 + * @return Object + * @exception + **/ + public static Object getProperty(Object valueObject, String varName) { + try { + return BeanUtils.getProperty(valueObject, varName); + } catch(Exception e) { + String msg = ErrorCodeHandler.getMessage("RWCEAICUL013", new String[]{varName, e.getMessage()}); + if (logger.isWarn()) logger.warn(ExceptionUtil.make("RWCEAICUL013", msg)); + return null; + } + } +} diff --git a/src/main/java/com/eactive/eai/common/util/ScpDbAgentUtil.java b/src/main/java/com/eactive/eai/common/util/ScpDbAgentUtil.java new file mode 100644 index 0000000..f2bcf4d --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/ScpDbAgentUtil.java @@ -0,0 +1,80 @@ +package com.eactive.eai.common.util; + +import java.util.Properties; + +//import com.penta.scpdb.ScpDbAgent; + +/** +* 1. 기능 : 암호화 모듈 Utility 제공 +* 2. 처리 개요 : +* - 보안관련 메소드 구현 +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : +* @since : +* : +*/ +/** + * @author Administrator + * + */ + +/** + * @author Administrator + * + */ +public final class ScpDbAgentUtil { + static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + public static String EXT_MODULE = "EXT_MODULE"; + /** + * Private 생성자 + * Instance를 생성하지 못함 + */ + private ScpDbAgentUtil() + { + + } + + /** + * ScpEncB64 암호화 + * + * @param sInvalid + * @return + */ + public static String ScpEncB64(Properties p, String data, String encode) { + String path = p.getProperty("SCP_PATH", "/fsscp/pav/eai/agent0001/scpdb_agent_unix.ini"); + String key = p.getProperty("SCP_KEY" , "SEC"); + try { +// return new ScpDbAgent().ScpEncB64(path, key, data, encode); + } catch (Exception e) { + logger.error("ScpDbAgentUtil] scpdb_agent encryption Error - " + e.getMessage()); + } + return data; + } + public static String ScpDecB64(Properties p, String data, String encode) { + String path = p.getProperty("SCP_PATH", "/fsscp/pav/eai/agent0001/scpdb_agent_unix.ini"); + String key = p.getProperty("SCP_KEY" , "SEC"); + try { +// return new ScpDbAgent().ScpDecB64(path, key, data, encode); + } catch (Exception e) { + logger.error("ScpDbAgentUtil] scpdb_agent decryption Error - " + e.getMessage()); + } + return data; + } + +// public static void test() throws Exception{ +// +// Properties p = new Properties(); +// p.put("SCP_PATH", "C:\\BASCP\\scpdb_agent.ini"); +// p.put("SCP_KEY" , "SEC"); +// String r =ScpDbAgentUtil.ScpEncB64(p,"abc1111111111111","EUC-KR"); +// System.out.println(r); +// } + +// public static void main(String[] args) throws Exception{ +// test(); +//} + +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/ServiceLocator.java b/src/main/java/com/eactive/eai/common/util/ServiceLocator.java new file mode 100644 index 0000000..66e5a4d --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/ServiceLocator.java @@ -0,0 +1,158 @@ +package com.eactive.eai.common.util; + +import java.net.URL; +import java.util.Collections; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.Map; + +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import javax.sql.DataSource; +import javax.transaction.UserTransaction; + +import com.eactive.eai.common.exception.ExceptionUtil; + +public class ServiceLocator { + /** Eai Logger */ + static private Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + /** javax.transaction.UserTransaction */ + final static String USER_TRANSACTION = "javax.transaction.UserTransaction"; + /** weblogic.common.T3Services */ + final static String WEBLOGIC_T3_SERVICES = "weblogic.common.T3Services"; + /** weblogic.jndi.WLInitialContextFactory */ + final static String WEBLOGIC_INITIAL_CONTEXT_FACTORY = "weblogic.jndi.WLInitialContextFactory"; + /** WebLogic t3 url */ + // protected static String WEBLOGIC_T3_URL; + + /** ServiceLocator singleton object */ + private static ServiceLocator instance; + + /** JNDI Context object */ + private InitialContext initial; + + /** caching을 위한 collection object */ + private Map cache; + + protected ServiceLocator() throws ServiceLocatorException { + try { + initial = new InitialContext(); + cache = Collections.synchronizedMap(new HashMap()); + } catch (NamingException e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL101")); + } catch (Exception e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL102")); + } + } + + public static synchronized ServiceLocator getInstance() throws ServiceLocatorException { + if (instance == null) { + instance = new ServiceLocator(); + return instance; + } else { + return instance; + } + } + + public DataSource getDataSource(String dataSourceName) throws ServiceLocatorException { + DataSource dataSource = null; + + try { + if (cache.containsKey(dataSourceName)) { + dataSource = (DataSource) cache.get(dataSourceName); + } else { + String jndiName = dataSourceName; + if (ContainerUtil.get() == ContainerUtil.TOMCAT) { + jndiName = "java:comp/env/" + jndiName; + } + dataSource = (DataSource) initial.lookup(jndiName); + cache.put(dataSourceName, dataSource); + } + } catch (Exception e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL103")); + } + return dataSource; + } + + public void putDataSource(String dataSourceName, DataSource dataSource) { + cache.put(dataSourceName, dataSource); + } + + public DataSource getRemoteDataSource(String providerUrl, String dataSourceName) { + DataSource dataSource = null; + try { + if (cache.containsKey(dataSourceName)) { + dataSource = (DataSource) cache.get(dataSourceName); + } else { + Hashtable env = new Hashtable(); + env.put(Context.INITIAL_CONTEXT_FACTORY, WEBLOGIC_INITIAL_CONTEXT_FACTORY); + env.put(Context.PROVIDER_URL, providerUrl); + initial = new InitialContext(env); + + dataSource = (DataSource) initial.lookup(dataSourceName); + + cache.put(dataSourceName, dataSource); + } + return dataSource; + } catch (Exception e) { + throw new RuntimeException(ExceptionUtil.getErrorCode(e, "RECEAICUL104")); + } + } + + public UserTransaction getUserTransaction() throws ServiceLocatorException { + UserTransaction userTx = null; + try { + if (cache.containsKey(USER_TRANSACTION)) { + userTx = (UserTransaction) cache.get(USER_TRANSACTION); + } else { + userTx = (UserTransaction) initial.lookup(USER_TRANSACTION); + cache.put(USER_TRANSACTION, userTx); + } + } catch (NamingException ne) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(ne, "RECEAICUL107")); + } catch (Exception e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL108")); + } + return userTx; + } + + public URL getUrl(String envName) throws ServiceLocatorException { + URL url = null; + + try { + url = (URL) initial.lookup(envName); + } catch (NamingException ne) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(ne, "RECEAICUL121")); + } catch (Exception e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL122")); + } + return url; + } + + public boolean getBoolean(String envName) throws ServiceLocatorException { + Boolean bool = null; + + try { + bool = (Boolean) initial.lookup(envName); + } catch (NamingException ne) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(ne, "RECEAICUL123")); + } catch (Exception e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL124")); + } + return bool.booleanValue(); + } + + public String getString(String envName) throws ServiceLocatorException { + String envEntry = null; + + try { + envEntry = (String) initial.lookup(envName); + } catch (NamingException ne) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(ne, "RECEAICUL124")); + } catch (Exception e) { + throw new ServiceLocatorException(ExceptionUtil.getErrorCode(e, "RECEAICUL124")); + } + return envEntry; + } +} diff --git a/src/main/java/com/eactive/eai/common/util/ServiceLocatorException.java b/src/main/java/com/eactive/eai/common/util/ServiceLocatorException.java new file mode 100644 index 0000000..7adabf8 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/ServiceLocatorException.java @@ -0,0 +1,99 @@ +package com.eactive.eai.common.util; + +/** + * ServiceLocator의 예외 처리를 위한 사용자 정의 class
+ * + * @since 1.0 + * @author + */ +public class ServiceLocatorException extends Exception { + /** 발생한 실재 Exception */ + private Exception exception; + + /** + * 1. 기능 : Constructor + * 2. 처리 개요 : + * - Constructor + * 3. 주의사항 + * + * @param message Excetpion message + * @param Excetpion 발생한 Exception + */ + public ServiceLocatorException(String message, Exception exception) { + super(message); + this.exception = exception; + + return; + } + + /** + * 1. 기능 : Constructor + * 2. 처리 개요 : + * - Constructor + * 3. 주의사항 + * + * @param message Excetpion message + */ + public ServiceLocatorException(String message) { + this(message, null); + + return; + } + + /** + * 1. 기능 : Constructor + * 2. 처리 개요 : + * - Constructor + * 3. 주의사항 + * + * @param Excetpion 발생한 Exception + */ + public ServiceLocatorException(Exception exception) { + this(null, exception); + + return; + } + + /** + * 1. 기능 : 실재 발생한 Exception을 반환하는 method + * 2. 처리 개요 : + * - 실재 발생한 Exception을 반환하는 method + * 3. 주의사항 + * + * @return 실재 발생한 Exception + */ + public Exception getException() { + return exception; + } + + /** + * 1. 기능 : 실재 발생한 Exception을 반환하는 method + * 2. 처리 개요 : + * - 실재 발생한 Exception을 반환하는 method + * 3. 주의사항 + * + * @return 실재 발생한 Exception + */ + public Exception getRootCause() { + if (exception instanceof ServiceLocatorException) { + return ((ServiceLocatorException) exception).getRootCause(); + } + + return (exception == null) ? this : exception; + } + + /** + * 1. 기능 : 실재 발생한 Exception의 toString() method의 결과를 반환하는 method + * 2. 처리 개요 : + * - 실재 발생한 Exception의 toString() method의 결과를 반환하는 method + * 3. 주의사항 + */ + public String toString() { + if (exception instanceof ServiceLocatorException) { + return ((ServiceLocatorException) exception).toString(); + } + + return (exception == null) + ? super.toString() : exception.toString(); + } +} diff --git a/src/main/java/com/eactive/eai/common/util/StringUtil.java b/src/main/java/com/eactive/eai/common/util/StringUtil.java new file mode 100644 index 0000000..04d3718 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/StringUtil.java @@ -0,0 +1,669 @@ +package com.eactive.eai.common.util; + +import java.io.UnsupportedEncodingException; +import java.nio.CharBuffer; +import java.nio.charset.Charset; +import java.util.HashMap; +import java.util.Properties; +import java.util.StringTokenizer; +import java.util.Vector; +import java.util.regex.Pattern; + +import org.apache.commons.lang3.StringUtils; + + +/** + * 1. 기능 : String 관련 Utility Class + * 2. 처리 개요 : + * * - Date, Time 관련 Utility Method 정의 + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : 관련 기능을 참조 + * @since : + * : + */ +public final class StringUtil { + + // DB가 UTF-8일 경우에 길이계산로직 처리를 위한 시스템설정 값 + // TheK에서는 DB utf-8을 기본값으로 한다. + private static boolean IS_DB_UTF8 = true; + + static { + String decodeUTF8 = System.getProperty("db.encode.utf8", "Y"); + IS_DB_UTF8 = "Y".equalsIgnoreCase(decodeUTF8); + } + /** + * Private 생성자 + * Instance를 생성하지 못함 + */ + private StringUtil() + { + + } + + /** + * 1. 기능 : byte array를 원하는 Encoding의 스트링으로 변환하는 Method + * 2. 처리 개요 : + * + * 주요 Character Set( Parameter로 Name또는 Alias 입력 ) + * Name Alias Description + * -------------------- ------------------------------------- ---------------------------- + * ANSI_X3.4-1968 ASCII, US-ASCII, IBM367, cp367 영문 ASCII + * KS_C_5601-1987 KSC_5601 한글 완성형 + * EUC-KR csEUCKR 한글 조합형 + * ISO-2022-JP csISO2022JP 일어 + * ISO-2022-JP-2 csISO2022JP2 일어 + * GB_2312-80 csISO58GB231280 중국어 + * ISO_8859-1:1987 ISO_8859-1, ISO-8859-1, IBM819, CP819 영문 라틴1 + * UTF-8 유니코드(8비트) + * UTF-16 유니코드(16비트) + + * 3. 주의사항 + * + * 참고 : http://www.iana.org/assignments/character-sets + * + * @param bytes 변환대상 byte array + * @param charsetName byte array decoding용 character set + * @return byte array를 변환한 결과 스트링 + */ + public static java.lang.String bytes2String(byte[] bytes, String charsetName) { + StringBuffer strBuffer = new StringBuffer(30); + try { + strBuffer.append(new String(bytes, charsetName)); + } catch (UnsupportedEncodingException uee) { + return null; + } catch (Exception e) { + return null; + } + + return strBuffer.toString(); + } + + + /** + * 1. 기능 : 헥사스트링(16진수)을 byte arrary로 변환하는 Method + * 2. 처리 개요 : + * - 헥사스트링(16진수)을 byte arrary로 변환하는 Method + * 3. 주의사항 + * + * @param hexStr 변환대상 16진수 스트링 + * @return 16진수 스트링을 변환한 결과 byte array + */ + public static byte[] hex2Bytes(String hexStr) { + byte retByte[] = new byte[hexStr.length() / 2]; + for(int j = 0; j < retByte.length; j++) + retByte[j] = (byte)Integer.parseInt(hexStr.substring(2 * j, 2 * j + 2), 16); + return retByte; + } + + + /** + * 1. 기능 : byte arrary를 헥사스트링(16진수)으로 변환하는 Method + * 2. 처리 개요 : + * - byte arrary를 헥사스트링(16진수)으로 변환하는 Method + * 3. 주의사항 + * + * @param inBytes 변환대상 byte array + * @return byte array를 변환한 16진수 결과 스트링 + */ + public static String bytes2Hex(byte inBytes[]) { + String s = ""; + for(int i = 0; i < inBytes.length; i++) + s = s + Integer.toHexString((inBytes[i] & 0xf0) >> 4) + Integer.toHexString(inBytes[i] & 0xf); + + return s.toUpperCase(); + } + + + /** + * 1. 기능 : String을 헥사스트링(16진수)으로 변환하는 Method + * 2. 처리 개요 : + * - String을 헥사스트링(16진수)으로 변환하는 Method + * 3. 주의사항 + * + * @param inStr 변환대상 스트링 + * @return 변환대상스트링을 변환한 16진수 결과 스트링 + */ + public static String str2Hex(String inStr) { + if ( inStr == null || inStr.equals("") ) + { + return ""; + } + String retStr = bytes2Hex( inStr.getBytes() ); + return retStr; + } + + + /** + * 1. 기능 : 스트링에서 특정 문자 개수를 반환하는 Method(제어문자등이 전송중 누락되었는지 확인할 때 사용) + * 2. 처리 개요 : + * - 스트링에서 특정 문자 개수를 반환하는 Method(제어문자등이 전송중 누락되었는지 확인할 때 사용) + * 3. 주의사항 + * + * @param inStr 계수대상 스트링 + * @param ch 계수할 문자 + * @return int 계수결과(문자개수) + */ + public static int getCharCount(String inStr, char ch) { + char[] arrChar = inStr.toCharArray(); + int count = 0; + for (int i=0; i < arrChar.length ; i++) + if ( arrChar[i] == ch) count++; + return count; + } + + + /** + * 1. 기능 : 구분자가 들어간 스트링을 구분자기준으로 잘라 String Array를 만들어주는 Method + * 2. 처리 개요 : + * - 구분자가 들어간 스트링을 구분자기준으로 잘라 String Array를 만들어주는 Method + * 3. 주의사항 + * + * @param inStr 대상 스트링 + * @param delim 잘라낼 때의 기준 구분자 + * @return 잘라낸 스트링을 담고 있는 String Array + */ + public static String[] getStrArray(String inStr, String delim) { + String[] retStr = null; + + if ( inStr == null || inStr.equals("") ) { + return (new String[] {}); + } else { + retStr = inStr.split(delim); + } + + return retStr; + } + + /** + * 1. 기능 : String 이 null 이면 ""(Null String)을 리턴하는 Method + * 2. 처리 개요 : + * - String 이 null 이면 ""(Null String)을 리턴하는 Method + * 3. 주의사항 + * + * @param inStr 입력 스트링 + * @return Null 처리된 스트링 + */ + public static String getNullStr( String inStr ) + { + return inStr==null?"":inStr; + } + + /** + * 1. 기능 : Object가 null 이면 ""(Null String)을 리턴하는 Method + * 2. 처리 개요 : + * - Object가 null 이면 ""(Null String)을 리턴하는 Method + * 3. 주의사항 + * + * @param inObj 입력 Object + * @return Null 처리된 스트링 + */ + public static String getNullStr( Object inObj ) + { + return inObj==null?"":(String)inObj; + } + + /** + * 1. 기능 : 주어진 String값을 주어진 길이많큼 Padding/Trim한다. + * 2. 처리 개요 : + * - 주어진 String값을 주어진 길이많큼 Padding/Trim한다. + * 3. 주의사항 + * + * @param svalue - 입력스트링 + * @param isRightJustify - true이면 RIGHT JUSTIFY, false이면 LEFT JUSTIFY + * @param padding - Padding 문자 + * @param length - 리턴할 스트링의 바이트수 + * @return 포맷팅된 String결과 + */ + public static String stringFormat(String svalue, boolean isRightJustify, char padding, int length) { + if ( svalue == null ) return svalue; + + String mpad = new String(); + int pLength = 0; + + pLength = length - svalue.getBytes().length; + + if (pLength == 0) { + return svalue; + } + else if ( pLength < 0) { + byte[] abytes = null; + if (isRightJustify) { + abytes = (new String( svalue.getBytes(), -(pLength), length)).getBytes(); + } else { + abytes = (new String( svalue.getBytes(), 0, length)).getBytes(); + } + + if ( abytes.length == length ) { + return new String( abytes ); + } else { + svalue = new String( abytes ); + pLength = length - svalue.length(); + } + } + + for(int i =0; i < pLength ; i++) + mpad += padding; + + if ( isRightJustify ) { + return (mpad + svalue); + } else { + return (svalue + mpad); + } + } + + /** + * 1. 기능 : 주어진 String값을 주어진 길이많큼 자른다. + * 2. 처리 개요 : + * - 주어진 String값을 주어진 길이많큼 자른다. + * 3. 주의사항 + * + * @param svalue - 입력스트링 + * @param length - 리턴할 스트링의 바이트수 + * @return 포맷팅된 String결과와 남은 String + */ + public static String chunkString(String sValue, int length) { + return chunkString(sValue, length, IS_DB_UTF8); + } + + public static String[] chunkStringArray(String sValue, int length) { + return chunkStringArray(sValue, length, IS_DB_UTF8); + } + + public static int getBytesLength(String str) { + return getBytesLength(str, IS_DB_UTF8); + } + + public static int getBytesLength(String str, boolean isDbUtf8) { + int byteLength = 0; + String charset = null; + if(isDbUtf8) { + charset = "utf-8"; + } + else { + charset = "ms949"; + } + + try { + byteLength = str.getBytes(charset).length; + } catch (UnsupportedEncodingException e) { + byteLength = str.getBytes().length; + } + + return byteLength; + } + + public static String chunkString(String sValue, int length, boolean isDbUtf8) { + String charset = "utf-8"; + + String chunk = null; + + if(sValue == null) { + return sValue; + } + if(length <= 0) { + return ""; + } + + byte[] bytes = null; + int sealCharSize = 2; + if(isDbUtf8) { + charset = "utf-8"; + sealCharSize = 3; + } + else { + charset = "ms949"; + sealCharSize = 2; + } + + try { + bytes = sValue.getBytes(charset); + } catch (UnsupportedEncodingException e) { + bytes = sValue.getBytes(); + if(Charset.defaultCharset().equals(Charset.forName("utf-8")) ) { + sealCharSize = 3; + } + } + + if(bytes.length <= length) { + return sValue; + } + + // if only simple characters + if(bytes.length == sValue.length()) { + return sValue.substring(0, length); + } + + char[] cArray = sValue.toCharArray(); + + int remainSize = length; + + for(int i = 0; i length ); + + if (sValue.length() > 0) { + hm.put(Integer.toString(i), sValue); + } + + String [] result = new String [hm.size()]; + for (int j = 0; j < hm.size(); j++) { + result[j] = (String)hm.get(Integer.toString(j)); + } + + return result; + + } + + /** + * 1. 기능 : 주어진 String값을 delimeter로 나누어 String[]를 생성한다 + * 2. 처리 개요 : + * - 주어진 String값을 delimeter로 나누어 String[]를 생성한다 + * 3. 주의사항 + * + * @param input - 입력스트링 + * @param delimeter - delimeter + * @return 포맷팅된 String결과의배열 + */ + public static String[] stringTokenizer(String input, String delimeter) + { + StringTokenizer st = new StringTokenizer(input, delimeter); + Vector vt = new Vector(); + + String temp = null; + + while (st.hasMoreTokens()) { + temp = st.nextToken(); + vt.addElement(temp); + } + + String[] out = new String[vt.size()]; + for ( int i = 0; i < vt.size() ; i ++ ) { + out[i] = (String)vt.elementAt(i); + } + return out; + } + + /** + * 1. 기능 : 주어진 String값을 delimeter로 나누어 XML Tag를 추가한다. + * 2. 처리 개요 : + * - 주어진 String값을 delimeter로 나누어 tag Prefix에 순차값을 생성하여 XML 형태의 String을 생성한다. + * 3. 주의사항 + * + * @param input - 입력스트링 + * @param delimeter - delimeter + * @param tagPrefix - tag Prefix + * @return XML형태로 포맷팅된 String결과 + */ + public static String delimeterToXml(String input, String delimeter, String tagPrefix) + { + StringBuffer sb = new StringBuffer(); + + if(input == null || input.length() == 0) return ""; + + String[] tokens = stringTokenizer(input, delimeter); + for(int i=0; i< tokens.length; i++) { + sb.append("<" + tagPrefix + (i+1) + ">" + tokens[i] + ""); + } + return sb.toString(); + } + + /** + * 1. 기능 : 주어진 byte[]값을 delimeter로 나누어 XML Tag를 추가한다. + * 2. 처리 개요 : + * - 주어진 byte[]값을 delimeter로 나누어 tag Prefix에 순차값을 생성하여 XML 형태의 byte[]을 생성한다. + * 3. 주의사항 + * + * @param input - 입력 byte[] + * @param delimeter - delimeter + * @param tagPrefix - tag Prefix + * @return XML형태로 포맷팅된 byte[]결과 + */ + public static byte[] delimeterToXmlBytes(byte[] input, String delimeter, String tagPrefix) { + if(input == null) return new byte[0]; + String xmlStr = delimeterToXml(new String(input), delimeter, tagPrefix); + return xmlStr.getBytes(); + } + + /** + * return int DigitValue + * use number type DB Column + */ + public static int getDigitValue(String input) { + + String word = NullControl.trimSpace(input); + if (word.length() == 0) return 0; + + // loop for each character + for (int i=0, n=word.length(); i' ) { + sb.append(">"); + } else { + sb.append(tempChar); + } + } + return sb.toString(); + } + + public static String nvlTrim(String str) { + return nvlTrim(str, ""); + } + + public static String nvlTrim(String str, String defaultValue) { + if (str == null || str.trim().equals("")) return defaultValue; + return str.trim(); + } + + + public static String makeBlankString(int size) { + if(size <1) return ""; + StringBuilder sb = new StringBuilder(size); + for(int i=0; i> chunk length=%d, isDBUtf8=%b",len, isDBUtf8)); + chunks = chunkStringArray(test,len,isDBUtf8); + System.out.println("chunk = "+ chunkString(test,len,isDBUtf8)); + System.out.println("chunks[0] = "+ chunks[0]); + System.out.println("chunks[1] = "+ chunks[1]); + } + + System.out.println("\n"); + isDBUtf8 = false; + for(int len=6; len<9; len++) { + System.out.println(String.format(">> chunk length=%d, isDBUtf8=%b",len, isDBUtf8)); + chunks = chunkStringArray(test,len,isDBUtf8); + System.out.println("chunk = "+ chunkString(test,len,isDBUtf8)); + System.out.println("chunks[0] = "+ chunks[0]); + System.out.println("chunks[1] = "+ chunks[1]); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/SystemUtil.java b/src/main/java/com/eactive/eai/common/util/SystemUtil.java new file mode 100644 index 0000000..a5292fd --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/SystemUtil.java @@ -0,0 +1,70 @@ +package com.eactive.eai.common.util; + + + +/** +* 1. 기능 : EAI서버 Rule 정보를 DB로 부터 로딩해 메모리에 관리하는 Manager 클래스 +* 2. 처리 개요 : DB Rule 정보에 저장된 필드 추출 Rule 정보를 메모리에 로딩 관리한다. +* 3. 주의사항 +* +* @author : +* @version : v 1.0.0 +* @see : 관련 기능을 참조 +* @since : +* : +*/ +public class SystemUtil +{ + + private static final String EAI_SYSTEMMODE = "eai.systemmode"; + private static final String EAI_PRODUCT = "P"; + private static final String EAI_STAGING = "S"; + private static final String EAI_DEVELOP = "D"; + + //시스템 운영환경 구분코드 + private static final String SYSOPEREVIRNDSTCD_PRODUCT = "O"; + private static final String SYSOPEREVIRNDSTCD_STAGING = "S"; + private static final String SYSOPEREVIRNDSTCD_DEVELOP = "D"; + + + + public static boolean isProdServer() { + String systemMode = System.getProperty(EAI_SYSTEMMODE); + + if (EAI_PRODUCT.equals(systemMode)){ + return true; + }else{ + return false; + } + } + public static boolean isDevServer() { + String systemMode = System.getProperty(EAI_SYSTEMMODE); + + if (EAI_DEVELOP.equals(systemMode)|| "".equals(systemMode)){ + return true; + }else{ + return false; + } + } + + public static boolean isStagingServer() { + String systemMode = System.getProperty(EAI_SYSTEMMODE); + + if (EAI_STAGING.equals(systemMode)){ + return true; + }else{ + return false; + } + } + public static String getSysOperEvirnDstcd(){ + if (isProdServer()){ + return SYSOPEREVIRNDSTCD_PRODUCT; + } else if (isStagingServer()){ + return SYSOPEREVIRNDSTCD_STAGING; + } else if (isDevServer()){ + return SYSOPEREVIRNDSTCD_DEVELOP; + } + return ""; + } +} + diff --git a/src/main/java/com/eactive/eai/common/util/TypeConversion.java b/src/main/java/com/eactive/eai/common/util/TypeConversion.java new file mode 100644 index 0000000..cb75489 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/TypeConversion.java @@ -0,0 +1,262 @@ +package com.eactive.eai.common.util; + +import java.math.BigInteger; + +/** + * 1. 기능 : java의 타입간의 변환을 위한 공통 Class + * 2. 처리 개요 : + * * - + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : 관련 기능을 참조 + * @since : + * : + */ +public class TypeConversion +{ + + /** + * 1. 기능 : byte[]의 특정위치의 값을 short으로 변환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 short으로 변환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @return short + * @exception + **/ + public static short parseShort(byte[] raw, int index) + { + byte[] buf = new byte[2]; + System.arraycopy(raw, index, buf, 0, buf.length); + return new BigInteger(buf).shortValue(); + } + + /** + * 1. 기능 : byte[]의 특정위치의 값을 int으로 변환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 int으로 변환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @return int + * @exception + **/ + public static int parseInt(byte[] raw, int index) + { + byte[] buf = new byte[4]; + System.arraycopy(raw, index, buf, 0, buf.length); + return new BigInteger(buf).intValue(); + } + + /** + * 1. 기능 : byte[]의 특정위치의 값을 long으로 변환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 long으로 변환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @return long + * @exception + **/ + public static long parseLong(byte[] raw, int index) + { + byte[] buf = new byte[8]; + System.arraycopy(raw, index, buf, 0, buf.length); + return new BigInteger(buf).longValue(); + } + + /** + * 1. 기능 : byte[]의 특정위치의 값을 UnsignedLong으로 변환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 UnsignedLong으로 변환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @return short + * @exception + **/ + public static long parseUnsignedLong(byte[] raw, int index) + { + byte[] buf = new byte[4]; + System.arraycopy(raw, index, buf, 0, buf.length); + return new BigInteger(buf).longValue(); + } + + /** + * 1. 기능 : byte[]의 특정위치의 값을 String으로 변환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 String으로 변환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @param len int + * @return String + * @exception + **/ + public static String parseString(byte[] raw, int index, int len) + { + return new String(raw, index, len); + } + + /** + * 1. 기능 : byte[]의 특정위치의 값을 다른 값으로 치환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 다른 값으로 치환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @param id byte[] + * @return byte[] + * @exception + **/ + public static byte[] replaceChar(byte[] raw, int index, byte[] id) + { + raw[index] = id[0]; + raw[index+1] = id[1]; + return raw; + } + + /** + * 1. 기능 : byte[]의 특정위치의 값을 short으로 치환하는 Method + * 2. 처리 개요 : + * - byte[]의 특정위치의 값을 short으로 치환하는 Method + * 3. 주의사항 + * + * @param raw byte[] + * @param index int + * @param sLL short + * @return byte[] + * @exception + **/ + public static byte[] replaceShort(byte[] raw, int index, short sLL) + { + + //System.out.println("RECV["+new String(raw)+"]"); + //System.out.println("RECV Length["+raw.length+"]"); + byte[] buf = short2byte(sLL); + //System.out.println("RECV["+new String(buf)+"]"); + //System.out.println("RECV Length["+buf.length+"]"); + raw[index] = buf[0]; + //System.out.println("RECV["+new String(raw)+"]"); + //System.out.println("RECV Length["+raw.length+"]"); + raw[index+1] = buf[1]; + //System.out.println("RETURN["+new String(raw)+"]"); + //System.out.println("RETURN["+raw.length+"]"); + return raw; + } + + /** + * 1. 기능 : short를 byte[]로 변환하는 Method + * 2. 처리 개요 : + * - short를 byte[]로 변환하는 Method + * 3. 주의사항 + * + * @param s short + * @return byte[] + * @exception + **/ + public static final byte[] short2byte( short s ) + { + byte[] dest = new byte[2]; + dest[1] = (byte)(s & 0xff); + dest[0] = (byte)((s>>8) & 0xff); + return dest; + } + + /** + * 1. 기능 : int를 byte[]로 변환하는 Method + * 2. 처리 개요 : + * - int를 byte[]로 변환하는 Method + * 3. 주의사항 + * + * @param i int + * @return byte[] + * @exception + **/ + public static final byte[] int2byte( int i ) + { + byte[] dest = new byte[4]; + dest[3] = (byte)(i & 0xff); + dest[2] = (byte)((i>>8) & 0xff); + dest[1] = (byte)((i>>16) & 0xff); + dest[0] = (byte)((i>>24) & 0xff); + return dest; + } + + /** + * 1. 기능 : long를 byte[]로 변환하는 Method + * 2. 처리 개요 : + * - long를 byte[]로 변환하는 Method + * 3. 주의사항 + * + * @param l long + * @return byte[] + * @exception + **/ + public static final byte[] long2byte( long l ) + { + byte[] dest = new byte[8]; + dest[7] = (byte)(l & 0xff); + dest[6] = (byte)((l>>8) & 0xff); + dest[5] = (byte)((l>>16) & 0xff); + dest[4] = (byte)((l>>24) & 0xff); + dest[3] = (byte)((l>>32) & 0xff); + dest[2] = (byte)((l>>40) & 0xff); + dest[1] = (byte)((l>>48) & 0xff); + dest[0] = (byte)((l>>56) & 0xff); + return dest; + } + /******************************************************************* + * 테스트용 클래스. + */ + /* + static public class Test + { + public static void main (String[] args) throws IOException + { + try + { + + short sInit = 730; + byte[] bytes = TypeConversion.short2byte(sInit); + short sLL = TypeConversion.parseShort(bytes,0); + System.out.println("-----Message Old LL : " + sLL); + System.out.println("-----Message bytes toString : " + bytes); + + short sNewLL = 152; + bytes = TypeConversion.replaceShort(bytes, 0, sNewLL); + + sNewLL = TypeConversion.parseShort(bytes,0); + + System.out.println("-----Message New LL : " + sNewLL); + System.out.println("-----Message bytes toString : " + bytes); + + String strMsg = "DA F23456789012345678901234567890123456 "; + short minusOne = -1; + byte[] bytesMsg = strMsg.getBytes(); + bytesMsg = TypeConversion.replaceShort(bytesMsg, 47, minusOne); + System.out.println("-----minusOne : [" + new String(bytesMsg)+"]"); + short rtnMinusOne = TypeConversion.parseShort(bytesMsg, 47); + System.out.println("-----minusOne : [" + rtnMinusOne+"]"); + + bytesMsg = TypeConversion.replaceShort(bytesMsg, 0, sNewLL); + System.out.println("-----minusOne : [" + new String(bytesMsg)+"]"); + + + } + catch(Exception e) + { + e.printStackTrace(); + } + } + }*/ +} diff --git a/src/main/java/com/eactive/eai/common/util/UUID.java b/src/main/java/com/eactive/eai/common/util/UUID.java new file mode 100644 index 0000000..d47258f --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/UUID.java @@ -0,0 +1,558 @@ +/* + * @(#)UUID.java 1.14 04/07/12 + * + * Copyright 2004 Sun Microsystems, Inc. All rights reserved. + * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. + */ +package com.eactive.eai.common.util; + +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; + + +/** + * + * A class that represents an immutable universally unique identifier (UUID). A + * UUID represents a 128-bit value. + * + *

+ * There exist different variants of these global identifiers. The methods of + * this class are for manipulating the Leach-Salz variant, although the + * constructors allow the creation of any variant of UUID (described below). + * + *

+ * The layout of a variant 2 (Leach-Salz) UUID is as follows: + * + * The most significant long consists of the following unsigned fields: + * + *

+ *
+ *
+ *   0xFFFFFFFF00000000 time_low
+ *   0x00000000FFFF0000 time_mid
+ *   0x000000000000F000 version
+ *   0x0000000000000FFF time_hi
+ *
+ *
+ * 
+ * + * The least significant long consists of the following unsigned fields: + * + *
+ *
+ *
+ *   0xC000000000000000 variant
+ *   0x3FFF000000000000 clock_seq
+ *   0x0000FFFFFFFFFFFF node
+ *
+ *
+ * 
+ * + *

+ * The variant field contains a value which identifies the layout of the + * UUID. The bit layout described above is valid only for a + * UUID with a variant value of 2, which indicates the Leach-Salz + * variant. + * + *

+ * The version field holds a value that describes the type of this UUID. + * There are four different basic types of UUIDs: time-based, DCE security, + * name-based, and randomly generated UUIDs. These types have a version value of + * 1, 2, 3 and 4, respectively. + * + *

+ * For more information including algorithms used to create UUIDs, + * see the Internet-Draft UUIDs + * and GUIDs or the standards body definition at ISO/IEC 11578:1996 . + * + * @version 1.14, 07/12/04 + * @since 1.5 + */ +public final class UUID implements java.io.Serializable { + /** + * Explicit serialVersionUID for interoperability. + */ + private static final long serialVersionUID = -4856846361193249489L; + + /* + * The random number generator used by this class to create random based + * UUIDs. + */ + private static volatile SecureRandom numberGenerator = null; + + /* + * The most significant 64 bits of this UUID. + * + * @serial + */ + private final long mostSigBits; + + /* + * The least significant 64 bits of this UUID. + * + * @serial + */ + private final long leastSigBits; + + /* + * The version number associated with this UUID. Computed on demand. + */ + private transient int version = -1; + + /* + * The variant number associated with this UUID. Computed on demand. + */ + private transient int variant = -1; + + /* + * The timestamp associated with this UUID. Computed on demand. + */ + private transient volatile long timestamp = -1; + + /* + * The clock sequence associated with this UUID. Computed on demand. + */ + private transient int sequence = -1; + + /* + * The node number associated with this UUID. Computed on demand. + */ + private transient long node = -1; + + /* + * The hashcode of this UUID. Computed on demand. + */ + private transient int hashCode = -1; + + // Constructors and Factories + + /* + * Private constructor which uses a byte array to construct the new UUID. + */ + private UUID(byte[] data) { + long msb = 0; + long lsb = 0; + + for (int i = 0; i < 8; i++) + msb = (msb << 8) | (data[i] & 0xff); + + for (int i = 8; i < 16; i++) + lsb = (lsb << 8) | (data[i] & 0xff); + + this.mostSigBits = msb; + this.leastSigBits = lsb; + } + + /** + * Constructs a new UUID using the specified data. + * mostSigBits is used for the most significant 64 bits of the + * UUID and leastSigBits becomes the least significant + * 64 bits of the UUID. + * + * @param mostSigBits + * @param leastSigBits + */ + public UUID(long mostSigBits, long leastSigBits) { + this.mostSigBits = mostSigBits; + this.leastSigBits = leastSigBits; + } + + /** + * Static factory to retrieve a type 4 (pseudo randomly generated) UUID. + * + * The UUID is generated using a cryptographically strong + * pseudo random number generator. + * + * @return a randomly generated UUID. + */ + public static UUID randomUUID() { + SecureRandom ng = numberGenerator; + + if (ng == null) { + numberGenerator = ng = new SecureRandom(); + } + + byte[] randomBytes = new byte[16]; + ng.nextBytes(randomBytes); + randomBytes[6] &= 0x0f; /* clear version */ + randomBytes[6] |= 0x40; /* set to version 4 */ + randomBytes[8] &= 0x3f; /* clear variant */ + randomBytes[8] |= 0x80; /* set to IETF variant */ + +// UUID result = new UUID(randomBytes); + + return new UUID(randomBytes); + } + + /** + * Static factory to retrieve a type 3 (name based) UUID based on + * the specified byte array. + * + * @param name + * a byte array to be used to construct a UUID. + * @return a UUID generated from the specified array. + * depricated + */ + public static UUID nameUUIDFromBytes(byte[] name) { +// MessageDigest md; +// +// try { +// md = MessageDigest.getInstance("MD5"); +// } catch (NoSuchAlgorithmException nsae) { +// throw new InternalError("MD5 not supported"); +// } +// +// byte[] md5Bytes = md.digest(name); +// md5Bytes[6] &= 0x0f; /* clear version */ +// md5Bytes[6] |= 0x30; /* set to version 3 */ +// md5Bytes[8] &= 0x3f; /* clear variant */ +// md5Bytes[8] |= 0x80; /* set to IETF variant */ +// +// return new UUID(md5Bytes); + return randomUUID(); + } + + /** + * Creates a UUID from the string standard representation as + * described in the {@link #toString}method. + * + * @param name + * a string that specifies a UUID. + * @return a UUID with the specified value. + * @throws IllegalArgumentException + * if name does not conform to the string representation as + * described in {@link #toString}. + */ + public static UUID fromString(String name) { + // edited by hskim 2005.01.10 begin + // String[] components = name.split("-"); + java.util.StringTokenizer tokenizer = new java.util.StringTokenizer(name); + + java.util.Vector cs = new java.util.Vector(); + + while (tokenizer.hasMoreTokens()) + cs.add(tokenizer.nextToken()); + + String[] components = new String[cs.size()]; + + for (int a = 0; a < cs.size(); a++) + components[a] = (String) (cs.elementAt(a)); + + // edited by hskim 2005.01.10 end + if (components.length != 5) { + throw new IllegalArgumentException("Invalid UUID string: " + name); + } + + for (int i = 0; i < 5; i++) + components[i] = "0x" + components[i]; + + long mostSigBits = Long.decode(components[0]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[1]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[2]).longValue(); + + long leastSigBits = Long.decode(components[3]).longValue(); + leastSigBits <<= 48; + leastSigBits |= Long.decode(components[4]).longValue(); + + return new UUID(mostSigBits, leastSigBits); + } + + // Field Accessor Methods + + /** + * Returns the least significant 64 bits of this UUID's 128 bit value. + * + * @return the least significant 64 bits of this UUID's 128 bit value. + */ + public long getLeastSignificantBits() { + return leastSigBits; + } + + /** + * Returns the most significant 64 bits of this UUID's 128 bit value. + * + * @return the most significant 64 bits of this UUID's 128 bit value. + */ + public long getMostSignificantBits() { + return mostSigBits; + } + + /** + * The version number associated with this UUID. The version + * number describes how this UUID was generated. + * + * The version number has the following meaning: + *

+ *

    + *
  • 1 Time-based UUID + *
  • 2 DCE security UUID + *
  • 3 Name-based UUID + *
  • 4 Randomly generated UUID + *
+ * + * @return the version number of this UUID. + */ + public int version() { + if (version < 0) { + // Version is bits masked by 0x000000000000F000 in MS long + version = (int) ((mostSigBits >> 12) & 0x0f); + } + + return version; + } + + /** + * The variant number associated with this UUID. The variant + * number describes the layout of the UUID. + * + * The variant number has the following meaning: + *

+ *

    + *
  • 0 Reserved for NCS backward compatibility + *
  • 2 The Leach-Salz variant (used by this class) + *
  • 6 Reserved, Microsoft Corporation backward compatibility + *
  • 7 Reserved for future definition + *
+ * + * @return the variant number of this UUID. + */ + public int variant() { + if (variant < 0) { + // This field is composed of a varying number of bits + if ((leastSigBits >>> 63) == 0) { + variant = 0; + } else if ((leastSigBits >>> 62) == 2) { + variant = 2; + } else { + variant = (int) (leastSigBits >>> 61); + } + } + + return variant; + } + + /** + * The timestamp value associated with this UUID. + * + *

+ * The 60 bit timestamp value is constructed from the time_low, time_mid, + * and time_hi fields of this UUID. The resulting timestamp is + * measured in 100-nanosecond units since midnight, October 15, 1582 UTC. + *

+ * + * The timestamp value is only meaningful in a time-based UUID, which has + * version type 1. If this UUID is not a time-based UUID then + * this method throws UnsupportedOperationException. + * + * @throws UnsupportedOperationException + * if this UUID is not a version 1 UUID. + */ + public long timestamp() { + if (version() != 1) { + throw new UnsupportedOperationException("Not a time-based UUID"); + } + + long result = timestamp; + + if (result < 0) { + result = (mostSigBits & 0x0000000000000FFFL) << 48; + result |= (((mostSigBits >> 16) & 0xFFFFL) << 32); + result |= mostSigBits >>> 32; + timestamp = result; + } + + return result; + } + + /** + * The clock sequence value associated with this UUID. + * + *

+ * The 14 bit clock sequence value is constructed from the clock sequence + * field of this UUID. The clock sequence field is used to guarantee + * temporal uniqueness in a time-based UUID. + *

+ * + * The clockSequence value is only meaningful in a time-based UUID, which + * has version type 1. If this UUID is not a time-based UUID then this + * method throws UnsupportedOperationException. + * + * @return the clock sequence of this UUID. + * @throws UnsupportedOperationException + * if this UUID is not a version 1 UUID. + */ + public int clockSequence() { + if (version() != 1) { + throw new UnsupportedOperationException("Not a time-based UUID"); + } + + if (sequence < 0) { + sequence = (int) ((leastSigBits & 0x3FFF000000000000L) >>> 48); + } + + return sequence; + } + + /** + * The node value associated with this UUID. + * + *

+ * The 48 bit node value is constructed from the node field of this UUID. + * This field is intended to hold the IEEE 802 address of the machine that + * generated this UUID to guarantee spatial uniqueness. + *

+ * + * The node value is only meaningful in a time-based UUID, which has version + * type 1. If this UUID is not a time-based UUID then this method throws + * UnsupportedOperationException. + * + * @return the node value of this UUID. + * @throws UnsupportedOperationException + * if this UUID is not a version 1 UUID. + */ + public long node() { + if (version() != 1) { + throw new UnsupportedOperationException("Not a time-based UUID"); + } + + if (node < 0) { + node = leastSigBits & 0x0000FFFFFFFFFFFFL; + } + + return node; + } + + // Object Inherited Methods + + /** + * Returns a String object representing this + * UUID. + * + *

+ * The UUID string representation is as described by this BNF : + * + *

+     *
+     *
+     *    UUID                   = <time_low> "-" <time_mid> "-"
+     *                             <time_high_and_version> "-"
+     *                             <variant_and_sequence> "-"
+     *                             <node>
+     *    time_low               = 4*<hexOctet>
+     *    time_mid               = 2*<hexOctet>
+     *    time_high_and_version  = 2*<hexOctet>
+     *    variant_and_sequence   = 2*<hexOctet>
+     *    node                   = 6*<hexOctet>
+     *    hexOctet               = <hexDigit><hexDigit>
+     *    hexDigit               =
+     *          "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
+     *          | "a" | "b" | "c" | "d" | "e" | "f"
+     *          | "A" | "B" | "C" | "D" | "E" | "F"
+     *
+     *
+     * 
+ * + * @return a string representation of this UUID. + */ + public String toString() { + return (digits(mostSigBits >> 32, 8) + "-" + + digits(mostSigBits >> 16, 4) + "-" + digits(mostSigBits, 4) + "-" + + digits(leastSigBits >> 48, 4) + "-" + digits(leastSigBits, 12)); + } + + /** Returns val represented by the specified number of hex digits. */ + private static String digits(long val, int digits) { + long hi = 1L << (digits * 4); + + return Long.toHexString(hi | (val & (hi - 1))).substring(1); + } + + /** + * Returns a hash code for this UUID. + * + * @return a hash code value for this UUID. + */ + public int hashCode() { + if (hashCode == -1) { + hashCode = (int) ((mostSigBits >> 32) ^ mostSigBits ^ + (leastSigBits >> 32) ^ leastSigBits); + } + + return hashCode; + } + + /** + * Compares this object to the specified object. The result is true + * if and only if the argument is not null, is a UUID + * object, has the same variant, and contains the same value, bit for bit, + * as this UUID. + * + * @param obj + * the object to compare with. + * @return true if the objects are the same; + * false otherwise. + */ + public boolean equals(Object obj) { + if (!(obj instanceof UUID)) { + return false; + } + + if (((UUID) obj).variant() != this.variant()) { + return false; + } + + UUID id = (UUID) obj; + + return ((mostSigBits == id.mostSigBits) && + (leastSigBits == id.leastSigBits)); + } + + // Comparison Operations + + /** + * Compares this UUID with the specified UUID. + * + *

+ * The first of two UUIDs follows the second if the most significant field + * in which the UUIDs differ is greater for the first UUID. + * + * @param val + * UUID to which this UUID is to be + * compared. + * @return -1, 0 or 1 as this UUID is less than, equal to, or + * greater than val. + */ + public int compareTo(UUID val) { + // The ordering is intentionally set up so that the UUIDs + // can simply be numerically compared as two numbers + return ((this.mostSigBits < val.mostSigBits) ? (-1) + : ((this.mostSigBits > val.mostSigBits) + ? 1 + : ((this.leastSigBits < val.leastSigBits) ? (-1) + : ((this.leastSigBits > val.leastSigBits) + ? 1 : 0)))); + } + + /** + * Reconstitute the UUID instance from a stream (that is, + * deserialize it). This is necessary to set the transient fields to their + * correct uninitialized value so they will be recomputed on demand. + */ +// private void readObject(java.io.ObjectInputStream in) +// throws java.io.IOException, ClassNotFoundException { +// in.defaultReadObject(); +// +// // Set "cached computation" fields to their initial values +// version = -1; +// variant = -1; +// timestamp = -1; +// sequence = -1; +// node = -1; +// hashCode = -1; +// } +} diff --git a/src/main/java/com/eactive/eai/common/util/UUIDGenerator.java b/src/main/java/com/eactive/eai/common/util/UUIDGenerator.java new file mode 100644 index 0000000..1b553aa --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/UUIDGenerator.java @@ -0,0 +1,153 @@ +package com.eactive.eai.common.util; + +import java.time.ZonedDateTime; +import java.time.format.DateTimeFormatter; + +import org.apache.commons.lang3.StringUtils; + +import com.eactive.eai.common.server.Keys; + + +/** + * 1. 기능 : UUID Generation Class + * 2. 처리 개요 : + * * - + * 3. 주의사항 + * + * @author : + * @version : v 1.0.0 + * @see : 관련 기능을 참조 + * @since : + * : + */ +public final class UUIDGenerator { + + private static final DateTimeFormatter SDF_YYYYMMDDHHMMSSMS = DateTimeFormatter.ofPattern( "yyyyMMddHHmmssSSS"); + + //public static final int GUID_LENGTH = 38; +// public static final int GUID_LENGTH = 33; +// public static final int GUID_DATE_POSITION = 3; + public static final int GUID_LENGTH = 27; //seq값 제외부분 + public static final int GUID_DATE_POSITION = 0; + public static final int GUID_SEQ_LENGTH = 2; + + /** + * 1. 기능 : Private 생성자 + * 2. 처리 개요 : + * - + * 3. 주의사항 + * - Instance 생성하지 못함 + **/ + private UUIDGenerator() { + } + + /** + * 1. 기능 : UUID를 생성하여 스트링으로 리턴하는 메쏘드 + * 2. 처리 개요 : + * - + * 3. 주의사항 + * + * @return 생성된 UUID 스트링 + **/ + public static String getUUID() { + UUID uuid = UUID.randomUUID(); + + return uuid.toString(); + } + +// // 하나캐피탈 POC +// public synchronized static String getGUID(String userId) { +// StringBuilder sb = new StringBuilder(); +// sb.append(SDF_YYYYMMDDHHMMSSMS.format(ZonedDateTime.now())); +// sb.append(userId); +// //sb.append(tranStep); +// +// return sb.toString(); +// } + + public synchronized static String getGUID(String systemCode) { + StringBuilder sb = new StringBuilder(); + sb.append(systemCode); + sb.append(SDF_YYYYMMDDHHMMSSMS.format(ZonedDateTime.now())); +// String guid = systemCode + UNIQUE_NUM; +// guid = guid + SDF_YYYYMMDDHHMMSSMS.format(ZonedDateTime.now()); + sb.append(UNIQUE_NUM); + char[] formatSeq = {'0','0','0','0','0','0','0','0'}; + char[] seqCharArray = String.valueOf(seq).toCharArray(); + int destPos = formatSeq.length - seqCharArray.length; + System.arraycopy(seqCharArray, 0, formatSeq, destPos, seqCharArray.length); + + sb.append(formatSeq); + +// if(seq < 10) { +// guid = guid + "00000" + seq; +// } +// else if(seq < 100) { +// guid = guid + "0000" + seq; +// } +// else if(seq < 1000) { +// guid = guid + "000" + seq; +// } +// else if(seq < 10000) { +// guid = guid + "00" + seq; +// } +// else if(seq < 100000) { +// guid = guid + "0" + seq; +// } +// else { +// guid = guid + seq; +// } + + seq ++; + if(seq > 99999999) { + seq = 1; + } + + return sb.toString() ; + } + + private static String UNIQUE_NUM; + private static int seq = 1; + static { + String uniqueValue = System.getProperty(Keys.SERVER_KEY); + if(StringUtils.isBlank(uniqueValue)){ + try { + uniqueValue = java.net.InetAddress.getLocalHost().getHostName(); + } + catch(Exception e) { + uniqueValue = "XXXXXXXXXX"; + } + } + if(uniqueValue.length() != 10) { + uniqueValue = StringUtil.stringFormat(uniqueValue, false, 'X', 10); + }else if (uniqueValue.length() > 10){ + uniqueValue.substring(0, 10); + } + UNIQUE_NUM = uniqueValue.toUpperCase(); + } + public static void main(String[] args) { +// System.out.println(getGUID("user000001")); +// System.out.println(new Integer("01")); + seq = 99999999; + System.out.println(getGUID("MCI")); + System.out.println(getGUID("MCI")); + long start = System.currentTimeMillis(); + for (int i = 0; i < 100000000; i++) { + char[] seq = String.valueOf(i).toCharArray(); + char[] formatSeq = {'0','0','0','0','0','0','0','0','0','0'}; + int destPos = formatSeq.length - seq.length; + System.arraycopy(seq, 0, formatSeq, destPos, seq.length); + } + long end = System.currentTimeMillis() - start; + System.out.println("c1 time-" + end); + + start = System.currentTimeMillis(); + for (int i = 0; i < 100000000; i++) { + String formatSeq = StringUtils.leftPad(String.valueOf(i), 10, '0'); + } + end = System.currentTimeMillis() - start; + System.out.println("c2 time-" + end); + +// System.out.println(formatSeq); + } +} diff --git a/src/main/java/com/eactive/eai/common/util/XSSUtil.java b/src/main/java/com/eactive/eai/common/util/XSSUtil.java new file mode 100644 index 0000000..0839abe --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/XSSUtil.java @@ -0,0 +1,47 @@ +package com.eactive.eai.common.util; + +import java.util.HashMap; + +public class XSSUtil { + public static final HashMap m = new HashMap(); + static { + m.put(34, """); + m.put(60, "<"); + m.put(62, ">"); + m.put(38, "&"); + m.put(162, "¢"); + m.put(163, "£"); + m.put(165, "¥"); + m.put(8364, "€"); + m.put(167, "§"); + m.put(169, "©"); + m.put(174, "®"); + m.put(8482, "™"); + } + + public static String escape(String str) { + StringBuilder sb = new StringBuilder(); + int charSize = str.length(); + + for(int i=0; i0x7F) { + sb.append("&#"); + sb.append(Integer.toString(c, 10)); + sb.append(";"); + } + else { + sb.append(c); + } + } + else { + sb.append(replaceCode); + } + } + return sb.toString(); + } +} diff --git a/src/main/java/com/eactive/eai/common/util/logger/CustomClassOfCallerConverter.java b/src/main/java/com/eactive/eai/common/util/logger/CustomClassOfCallerConverter.java new file mode 100644 index 0000000..bb01cc2 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/logger/CustomClassOfCallerConverter.java @@ -0,0 +1,21 @@ +package com.eactive.eai.common.util.logger; + +import ch.qos.logback.classic.pattern.NamedConverter; +import ch.qos.logback.classic.spi.ILoggingEvent; + +public class CustomClassOfCallerConverter extends NamedConverter { + protected String getFullyQualifiedName(ILoggingEvent event) { + StackTraceElement[] cda = event.getCallerData(); + if (cda != null && cda.length > 0) { + if (cda[0].getFileName().equals("Logger.java") && cda.length > 1) { + if (cda[1].getFileName().equals("Logger.java") && cda.length > 2){ + return cda[2].getClassName(); + } + return cda[1].getClassName(); + } + return cda[0].getClassName(); + } else { + return "?"; + } + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/logger/CustomFileOfCallerConverter.java b/src/main/java/com/eactive/eai/common/util/logger/CustomFileOfCallerConverter.java new file mode 100644 index 0000000..e204fe8 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/logger/CustomFileOfCallerConverter.java @@ -0,0 +1,21 @@ +package com.eactive.eai.common.util.logger; + +import ch.qos.logback.classic.pattern.ClassicConverter; +import ch.qos.logback.classic.spi.ILoggingEvent; + +public class CustomFileOfCallerConverter extends ClassicConverter { + public String convert(ILoggingEvent le) { + StackTraceElement[] cda = le.getCallerData(); + if (cda != null && cda.length > 0) { + if (cda[0].getFileName().equals("Logger.java") && cda.length > 1) { + if (cda[1].getFileName().equals("Logger.java") && cda.length > 2){ + return cda[2].getFileName(); + } + return cda[1].getFileName(); + } + return cda[0].getFileName(); + } else { + return "?"; + } + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/logger/CustomLineOfCallerConverter.java b/src/main/java/com/eactive/eai/common/util/logger/CustomLineOfCallerConverter.java new file mode 100644 index 0000000..1d463f7 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/logger/CustomLineOfCallerConverter.java @@ -0,0 +1,21 @@ +package com.eactive.eai.common.util.logger; + +import ch.qos.logback.classic.pattern.ClassicConverter; +import ch.qos.logback.classic.spi.ILoggingEvent; + +public class CustomLineOfCallerConverter extends ClassicConverter { + public String convert(ILoggingEvent le) { + StackTraceElement[] cda = le.getCallerData(); + if (cda != null && cda.length > 0) { + if (cda[0].getFileName().equals("Logger.java") && cda.length > 1) { + if (cda[1].getFileName().equals("Logger.java") && cda.length > 2){ + return Integer.toString(cda[2].getLineNumber()); + } + return Integer.toString(cda[1].getLineNumber()); + } + return Integer.toString(cda[0].getLineNumber()); + } else { + return "?"; + } + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/logger/CustomMethodOfCallerConverter.java b/src/main/java/com/eactive/eai/common/util/logger/CustomMethodOfCallerConverter.java new file mode 100644 index 0000000..d25b36e --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/logger/CustomMethodOfCallerConverter.java @@ -0,0 +1,21 @@ +package com.eactive.eai.common.util.logger; + +import ch.qos.logback.classic.pattern.ClassicConverter; +import ch.qos.logback.classic.spi.ILoggingEvent; + +public class CustomMethodOfCallerConverter extends ClassicConverter { + public String convert(ILoggingEvent le) { + StackTraceElement[] cda = le.getCallerData(); + if (cda != null && cda.length > 0) { + if (cda[0].getFileName().equals("Logger.java") && cda.length > 1) { + if (cda[1].getFileName().equals("Logger.java") && cda.length > 2){ + return cda[2].getMethodName(); + } + return cda[1].getMethodName(); + } + return cda[0].getMethodName(); + } else { + return "?"; + } + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayout.java b/src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayout.java new file mode 100644 index 0000000..84dbc62 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayout.java @@ -0,0 +1,151 @@ +package com.eactive.eai.common.util.logger; + +import java.util.HashMap; +import java.util.Map; + +import ch.qos.logback.classic.pattern.CallerDataConverter; +import ch.qos.logback.classic.pattern.ClassOfCallerConverter; +import ch.qos.logback.classic.pattern.ContextNameConverter; +import ch.qos.logback.classic.pattern.DateConverter; +import ch.qos.logback.classic.pattern.EnsureExceptionHandling; +import ch.qos.logback.classic.pattern.ExtendedThrowableProxyConverter; +import ch.qos.logback.classic.pattern.LevelConverter; +import ch.qos.logback.classic.pattern.LineSeparatorConverter; +import ch.qos.logback.classic.pattern.LocalSequenceNumberConverter; +import ch.qos.logback.classic.pattern.LoggerConverter; +import ch.qos.logback.classic.pattern.MDCConverter; +import ch.qos.logback.classic.pattern.MarkerConverter; +import ch.qos.logback.classic.pattern.MessageConverter; +import ch.qos.logback.classic.pattern.MethodOfCallerConverter; +import ch.qos.logback.classic.pattern.NopThrowableInformationConverter; +import ch.qos.logback.classic.pattern.PropertyConverter; +import ch.qos.logback.classic.pattern.RelativeTimeConverter; +import ch.qos.logback.classic.pattern.RootCauseFirstThrowableProxyConverter; +import ch.qos.logback.classic.pattern.ThreadConverter; +import ch.qos.logback.classic.pattern.ThrowableProxyConverter; +import ch.qos.logback.classic.pattern.color.HighlightingCompositeConverter; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.CoreConstants; +import ch.qos.logback.core.pattern.PatternLayoutBase; +import ch.qos.logback.core.pattern.color.BlackCompositeConverter; +import ch.qos.logback.core.pattern.color.BlueCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldBlueCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldCyanCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldGreenCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldMagentaCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldRedCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldWhiteCompositeConverter; +import ch.qos.logback.core.pattern.color.BoldYellowCompositeConverter; +import ch.qos.logback.core.pattern.color.CyanCompositeConverter; +import ch.qos.logback.core.pattern.color.GrayCompositeConverter; +import ch.qos.logback.core.pattern.color.GreenCompositeConverter; +import ch.qos.logback.core.pattern.color.MagentaCompositeConverter; +import ch.qos.logback.core.pattern.color.RedCompositeConverter; +import ch.qos.logback.core.pattern.color.WhiteCompositeConverter; +import ch.qos.logback.core.pattern.color.YellowCompositeConverter; +import ch.qos.logback.core.pattern.parser.Parser; + +public class CustomPatternLayout extends PatternLayoutBase { + public static final Map defaultConverterMap = new HashMap(); + public static final String HEADER_PREFIX = "#logback.classic pattern: "; + + static { + defaultConverterMap.putAll(Parser.DEFAULT_COMPOSITE_CONVERTER_MAP); + defaultConverterMap.put("d", DateConverter.class.getName()); + defaultConverterMap.put("date", DateConverter.class.getName()); + defaultConverterMap.put("r", RelativeTimeConverter.class.getName()); + defaultConverterMap.put("relative", RelativeTimeConverter.class.getName()); + defaultConverterMap.put("level", LevelConverter.class.getName()); + defaultConverterMap.put("le", LevelConverter.class.getName()); + defaultConverterMap.put("p", LevelConverter.class.getName()); + defaultConverterMap.put("t", ThreadConverter.class.getName()); + defaultConverterMap.put("thread", ThreadConverter.class.getName()); + defaultConverterMap.put("lo", LoggerConverter.class.getName()); + defaultConverterMap.put("logger", LoggerConverter.class.getName()); + defaultConverterMap.put("c", LoggerConverter.class.getName()); + defaultConverterMap.put("m", MessageConverter.class.getName()); + defaultConverterMap.put("msg", MessageConverter.class.getName()); + defaultConverterMap.put("message", MessageConverter.class.getName()); + defaultConverterMap.put("C", CustomClassOfCallerConverter.class.getName()); + defaultConverterMap.put("class", CustomClassOfCallerConverter.class.getName()); + defaultConverterMap.put("M", CustomMethodOfCallerConverter.class.getName()); + defaultConverterMap.put("method", CustomMethodOfCallerConverter.class.getName()); + defaultConverterMap.put("L", CustomLineOfCallerConverter.class.getName()); + defaultConverterMap.put("line", CustomLineOfCallerConverter.class.getName()); + defaultConverterMap.put("F", CustomFileOfCallerConverter.class.getName()); + defaultConverterMap.put("file", CustomFileOfCallerConverter.class.getName()); + defaultConverterMap.put("X", MDCConverter.class.getName()); + defaultConverterMap.put("mdc", MDCConverter.class.getName()); + defaultConverterMap.put("ex", ThrowableProxyConverter.class.getName()); + defaultConverterMap.put("exception", ThrowableProxyConverter.class.getName()); + defaultConverterMap.put("rEx", RootCauseFirstThrowableProxyConverter.class.getName()); + defaultConverterMap.put("rootException", RootCauseFirstThrowableProxyConverter.class.getName()); + defaultConverterMap.put("throwable", ThrowableProxyConverter.class.getName()); + defaultConverterMap.put("xEx", ExtendedThrowableProxyConverter.class.getName()); + defaultConverterMap.put("xException", ExtendedThrowableProxyConverter.class.getName()); + defaultConverterMap.put("xThrowable", ExtendedThrowableProxyConverter.class.getName()); + defaultConverterMap.put("nopex", NopThrowableInformationConverter.class.getName()); + defaultConverterMap.put("nopexception", NopThrowableInformationConverter.class.getName()); + defaultConverterMap.put("cn", ContextNameConverter.class.getName()); + defaultConverterMap.put("contextName", ContextNameConverter.class.getName()); + defaultConverterMap.put("caller", CallerDataConverter.class.getName()); + defaultConverterMap.put("marker", MarkerConverter.class.getName()); + defaultConverterMap.put("property", PropertyConverter.class.getName()); + defaultConverterMap.put("n", LineSeparatorConverter.class.getName()); + defaultConverterMap.put("black", BlackCompositeConverter.class.getName()); + defaultConverterMap.put("red", RedCompositeConverter.class.getName()); + defaultConverterMap.put("green", GreenCompositeConverter.class.getName()); + defaultConverterMap.put("yellow", YellowCompositeConverter.class.getName()); + defaultConverterMap.put("blue", BlueCompositeConverter.class.getName()); + defaultConverterMap.put("magenta", MagentaCompositeConverter.class.getName()); + defaultConverterMap.put("cyan", CyanCompositeConverter.class.getName()); + defaultConverterMap.put("white", WhiteCompositeConverter.class.getName()); + defaultConverterMap.put("gray", GrayCompositeConverter.class.getName()); + defaultConverterMap.put("boldRed", BoldRedCompositeConverter.class.getName()); + defaultConverterMap.put("boldGreen", BoldGreenCompositeConverter.class.getName()); + defaultConverterMap.put("boldYellow", BoldYellowCompositeConverter.class.getName()); + defaultConverterMap.put("boldBlue", BoldBlueCompositeConverter.class.getName()); + defaultConverterMap.put("boldMagenta", BoldMagentaCompositeConverter.class.getName()); + defaultConverterMap.put("boldCyan", BoldCyanCompositeConverter.class.getName()); + defaultConverterMap.put("boldWhite", BoldWhiteCompositeConverter.class.getName()); + defaultConverterMap.put("highlight", HighlightingCompositeConverter.class.getName()); + defaultConverterMap.put("lsn", LocalSequenceNumberConverter.class.getName()); + } + + public CustomPatternLayout() { + this.postCompileProcessor = new EnsureExceptionHandling(); + } + + public Map getDefaultConverterMap() { + return defaultConverterMap; + } + + public String doLayout(ILoggingEvent event) { + return !this.isStarted() ? CoreConstants.EMPTY_STRING : this.writeLoopOnConverters(event); + // if(!this.isStarted()){ + // return CoreConstants.EMPTY_STRING; + // } + // String header = this.writeLoopOnConverters(event) + " "; + // StringBuilder sb = new StringBuilder(128); + // StringBuilder buffer = new StringBuilder(); + // + // for(char c : event.getFormattedMessage().toCharArray()){ + // switch(c){ + // case '\r' : continue; + // case '\n' : + // //System.out.println(">>>>>>>>>>>"+ + // "buffer="+header+","+buffer.toString()); + // sb.append(header).append(buffer).append(CoreConstants.LINE_SEPARATOR); + // buffer = new StringBuilder(); + // break; + // default : buffer.append(c); + // } + // } + // sb.append(header).append(buffer).append(CoreConstants.LINE_SEPARATOR); + // return sb.toString(); + } + + protected String getPresentationHeaderPrefix() { + return HEADER_PREFIX; + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayoutEncoder.java b/src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayoutEncoder.java new file mode 100644 index 0000000..a75caca --- /dev/null +++ b/src/main/java/com/eactive/eai/common/util/logger/CustomPatternLayoutEncoder.java @@ -0,0 +1,16 @@ +package com.eactive.eai.common.util.logger; + +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.pattern.PatternLayoutEncoderBase; + +public class CustomPatternLayoutEncoder extends PatternLayoutEncoderBase { + public void start() { + CustomPatternLayout patternLayout = new CustomPatternLayout(); + patternLayout.setContext(this.context); + patternLayout.setPattern(this.getPattern()); + patternLayout.setOutputPatternAsHeader(this.outputPatternAsHeader); + patternLayout.start(); + this.layout = patternLayout; + super.start(); + } +} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/AdaptersStatusVO.java b/src/main/java/com/eactive/eai/rms/onl/vo/AdaptersStatusVO.java new file mode 100644 index 0000000..5949a4e --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/AdaptersStatusVO.java @@ -0,0 +1,55 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.HashMap; + +public class AdaptersStatusVO extends MonitorDataVo { + + private static final long serialVersionUID = 7923019414430933138L; + + // initialize in RMS + private String service = ""; + + private HashMap adapters = null; + + public AdaptersStatusVO(){ + adapters = new HashMap(); + } + + public void setAdapter(String adapterName, Boolean status){ + adapters.put(adapterName, status); + } + public boolean getAdapter(String adapterName){ + if (!adapters.containsKey(adapterName)){ + return false; + } + return (Boolean)adapters.get(adapterName); + } + + /** + * @return the service + */ + public String getService() { + return service; + } + + /** + * @param service the service to set + */ + public void setService(String service) { + this.service = service; + } + + public HashMap getAdaptersStatus(){ + return this.adapters; + } + public String toString(){ + StringBuffer sb = new StringBuffer(); + sb.append("[AdaptersStatusVO:"); + for(String key : adapters.keySet()){ + sb.append(key+"="+adapters.get(key)+","); + } + sb.append("]"); + return ""; + } + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/AdaptersVO.java b/src/main/java/com/eactive/eai/rms/onl/vo/AdaptersVO.java new file mode 100644 index 0000000..f6642dc --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/AdaptersVO.java @@ -0,0 +1,212 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +public class AdaptersVO extends MonitorDataVo { + + private static final long serialVersionUID = 7923019414430933138L; + + // initialize in RMS + private String service = ""; + + // (Total count, running count, stop count, state) + + // SNA 어댑터 : SNA + public int[] sna = { 0, 0, 0, 0 }; + // 소켓 어댑터 : SOC + public int[] socket = { 0, 0, 0, 0 }; + // 소켓2 어댑터 : NET + public int[] socket2 = { 0, 0, 0, 0 }; + // Tuxedo 어댑터 : WTC + public int[] tuxedo = { 0, 0, 0, 0 }; + // MQ 어댑터 : MQ + public int[] mq = { 0, 0, 0, 0 }; + // HTTP 어댑터 : HTT + public int[] http = { 0, 0, 0, 0 }; + // EJB 어댑터 : EJB + public int[] ejb = { 0, 0, 0, 0 }; + + // 전체 어댑터 + public int[] total = { 0, 0, 0, 0 }; + + // 비정상 어댑터 송신 + public String disconAdaptersGroup = null; + + public static String getColor(List hostList, String hostName, int status) { + + /* 색상은 host 를 그룹으로 해서 같은 host 는 같은 색상으로 표시한다. + * 정상( blue, black ) 에러 ( red ) 로 다시 세분화 된다. + * */ + + int i = 0; + for (i = 0; i < hostList.size(); i++) { + Map map = (Map) hostList.get(i); + if (hostName.equals((String) map.get("HOSTNAME"))) { + break; + } + } + + int step = 0; + int size = hostList.size() % 2; + if (size == 0) { + step = i % 2; // 짝수인 경우 1,2 중 하나 + } else { + step = i % 3; // 홀수인 경우 1,2,3 중 하나 + } + + return getColor(step, status); + + } + + /* + * 대시보드 에서 어댑터 상태에 따른 색상값을 리턴한다. + * step 값은 동일 차트 에서 여러개의 어댑터를 표현하기 위함인데, + * 현재는 step 1 만 사용함. + */ + public static String getColor(int step, int status) { + String color = ""; + + if (step > 2) { + step = step % 3; + } + + if (step == 0) { + if (status == 0) { // 에러 + color = "#FFA500"; + } else if (status == 1) { // 부분정상 + color = "#999999"; + } else if (status == 2) { // 정상 + color = "#6666FF"; + } + } else if (step == 1) { + if (status == 0) { // 에러 + color = "#FF6633"; + } else if (status == 1) { // 부분정상 + color = "#999999"; + } else if (status == 2) { // 정상 + color = "#4488FF"; + } + } else if (step == 2) { + if (status == 0) { // 에러 + color = "#FF4566"; + } else if (status == 1) { // 부분정상 + color = "#CCCCCC"; + } else if (status == 2) { // 정상 + color = "#9999FF"; + } + } + + return color; + } + + public String getColor( int v ) { + String ret = "r" ; + if( v == 0 ) + ret = "r" ; // red 에러 + else if( v == 1 ) + ret = "g" ; // grey 부분정상 + else if( v == 2 ) + ret = "b" ; // blue 정상 + + return ret ; + } + + public int getSna(int t) { + return sna[t]; + } + + public void setSna(int t, int v) { + sna[t] = v; + } + + public int getSocket(int t) { + return socket[t]; + } + + public void setSocket(int t, int v) { + socket[t] = v; + } + + public int getSocket2(int t) { + return socket2[t]; + } + + public void setSocket2(int t, int v) { + socket2[t] = v; + } + + public int getTuxedo(int t) { + return tuxedo[t]; + } + + public void setTuxedo(int t, int v) { + tuxedo[t] = v; + } + + public int getMq(int t) { + return mq[t]; + } + + public void setMq(int t, int v) { + mq[t] = v; + } + + public int getHttp(int t) { + return http[t]; + } + + public void setHttp(int t, int v) { + http[t] = v; + } + + public int getEjb(int t) { + return ejb[t]; + } + + public void setEjb(int t, int v) { + ejb[t] = v; + } + + public int getTotal(int t) { + return total[t]; + } + + public void setTotal(int t, int v) { + total[t] = v; + } + + /** + * @return the service + */ + public String getService() { + return service; + } + + + public String getDisconAdaptersGroup() { + return disconAdaptersGroup; + } + + public void setDisconAdaptersGroup(String disconAdaptersGroup) { + this.disconAdaptersGroup = disconAdaptersGroup; + } + + /** + * @param service the service to set + */ + public void setService(String service) { + this.service = service; + } + + @Override + public String toString() { + return "AdaptersVO [service=" + service + ", sna=" + Arrays.toString(sna) + ", socket=" + + Arrays.toString(socket) + ", socket2=" + Arrays.toString(socket2) + ", tuxedo=" + + Arrays.toString(tuxedo) + ", mq=" + Arrays.toString(mq) + ", http=" + Arrays.toString(http) + ", ejb=" + + Arrays.toString(ejb) + ", total=" + Arrays.toString(total) + ", disconAdaptersGroup=" + + disconAdaptersGroup + "]"; + } + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/EAIEngineStatusVo.java b/src/main/java/com/eactive/eai/rms/onl/vo/EAIEngineStatusVo.java new file mode 100644 index 0000000..6583dad --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/EAIEngineStatusVo.java @@ -0,0 +1,271 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.List; + +/** + * The Class EAIEngineStatusVo. + *

    + *
  • 1. Function :
  • + *
  • 2. Summary :
  • + *
  • 3. Notification :
  • + *
+ * + * @author : $Author: 박기섭 $ + * @version : $Revision: 1.6 $ + */ +public class EAIEngineStatusVo extends MonitorDataVo { + + private static final long serialVersionUID = -5013332658305212088L; + + public static final int JMS_STATUS_NOMAL = 2; + public static final int JMS_STATUS_WARN = 1; + public static final int JMS_STATUS_FATAL = 0; + public static final String JMS_STATUS_NOMAL_STR = "정상"; + public static final String JMS_STATUS_WARN_STR = "경고"; + public static final String JMS_STATUS_FATAL_STR = "장애"; + + String service = ""; + + // Server State Field + private String serverName = null; + private int port = 0; + private String address = null; + private long openSocketsCurrentCount = 0; + private int acceptBacklog = 0; + + // TotalState Field + private String serverState = null; + private int serverStateImage = 0; + private int memoryState = 0; + private int jmsState = 0; + private int ejbState = 0; + private int jdbcState = 0; + private int jmsFileStoreStatus = 0; + + // QUEUE + private int pendingRequestCurrentCount = 0; + + // MEMORY + private long heapFreeCurrent = 0; + private long heapSizeCurrent = 0; + private long heapSizeMax = 0; + private int heapFreePercent = 0; + + // JMS + private int jmsFileStoreUseAge = 0; + + private List jmsStatusList = null; + + // EJB + private List ejbPoolRuntimes = null; + + // JDBC + private List jdbcConnectionPoolStateList = null; + + private boolean isAdminServer = false; + + public int getAcceptBacklog() { + return acceptBacklog; + } + + public void setAcceptBacklog(int acceptBacklog) { + this.acceptBacklog = acceptBacklog; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public List getEjbPoolRuntimes() { + return ejbPoolRuntimes; + } + + public void setEjbPoolRuntimes(List ejbPoolRuntimes) { + this.ejbPoolRuntimes = ejbPoolRuntimes; + } + + public int getEjbState() { + return ejbState; + } + + public void setEjbState(int ejbState) { + this.ejbState = ejbState; + } + + public long getHeapFreeCurrent() { + return heapFreeCurrent; + } + + public void setHeapFreeCurrent(long heapFreeCurrent) { + this.heapFreeCurrent = heapFreeCurrent; + } + + public long getHeapSizeCurrent() { + return heapSizeCurrent; + } + + public void setHeapSizeCurrent(long heapSizeCurrent) { + this.heapSizeCurrent = heapSizeCurrent; + } + + public boolean isAdminServer() { + return isAdminServer; + } + + public void setAdminServer(boolean isAdminServer) { + this.isAdminServer = isAdminServer; + } + + public List getJdbcConnectionPoolStateList() { + return jdbcConnectionPoolStateList; + } + + public void setJdbcConnectionPoolStateList(List jdbcConnectionPoolStateList) { + this.jdbcConnectionPoolStateList = jdbcConnectionPoolStateList; + } + + public int getJdbcState() { + return jdbcState; + } + + public void setJdbcState(int jdbcState) { + this.jdbcState = jdbcState; + } + + public int getJmsFileStoreStatus() { + return jmsFileStoreStatus; + } + + public void setJmsFileStoreStatus(int jmsFileStoreStatus) { + this.jmsFileStoreStatus = jmsFileStoreStatus; + } + + public int getJmsState() { + return jmsState; + } + + public void setJmsState(int jmsState) { + this.jmsState = jmsState; + } + + public List getJmsStatusList() { + return jmsStatusList; + } + + public void setJmsStatusList(List jmsStatusList) { + this.jmsStatusList = jmsStatusList; + } + + public int getMemoryState() { + return memoryState; + } + + public void setMemoryState(int memoryState) { + this.memoryState = memoryState; + } + + public long getOpenSocketsCurrentCount() { + return openSocketsCurrentCount; + } + + public void setOpenSocketsCurrentCount(long openSocketsCurrentCount) { + this.openSocketsCurrentCount = openSocketsCurrentCount; + } + + public int getPendingRequestCurrentCount() { + return pendingRequestCurrentCount; + } + + public void setPendingRequestCurrentCount(int pendingRequestCurrentCount) { + this.pendingRequestCurrentCount = pendingRequestCurrentCount; + } + + public int getPort() { + return port; + } + + public void setPort(int port) { + this.port = port; + } + + public String getServerName() { + return serverName; + } + + public void setServerName(String serverName) { + this.serverName = serverName; + } + + public String getServerState() { + return serverState; + } + + public void setServerState(String serverState) { + this.serverState = serverState; + } + + public int getServerStateImage() { + return serverStateImage; + } + + public void setServerStateImage(int serverStateImage) { + this.serverStateImage = serverStateImage; + } + + public int getJmsFileStoreUseAge() { + return jmsFileStoreUseAge; + } + + public void setJmsFileStoreUseAge(int jmsFileStoreUseAge) { + this.jmsFileStoreUseAge = jmsFileStoreUseAge; + } + + /** + * @return the service + */ + public String getService() { + return service; + } + + /** + * @param service the service to set + */ + public void setService(String service) { + this.service = service; + } + + public long getHeapSizeMax() { + return heapSizeMax; + } + + public void setHeapSizeMax(long heapSizeMax) { + this.heapSizeMax = heapSizeMax; + } + + public int getHeapFreePercent() { + return heapFreePercent; + } + + public void setHeapFreePercent(int heapFreePercent) { + this.heapFreePercent = heapFreePercent; + } + + @Override + public String toString() { + return "EAIEngineStatusVo [service=" + service + ", serverName=" + serverName + ", port=" + port + ", address=" + + address + ", openSocketsCurrentCount=" + openSocketsCurrentCount + ", acceptBacklog=" + acceptBacklog + + ", serverState=" + serverState + ", serverStateImage=" + serverStateImage + ", memoryState=" + + memoryState + ", jmsState=" + jmsState + ", ejbState=" + ejbState + ", jdbcState=" + jdbcState + + ", jmsFileStoreStatus=" + jmsFileStoreStatus + ", pendingRequestCurrentCount=" + + pendingRequestCurrentCount + ", heapFreeCurrent=" + heapFreeCurrent + ", heapSizeCurrent=" + + heapSizeCurrent + ", heapSizeMax=" + heapSizeMax + ", heapFreePercent=" + heapFreePercent + + ", jmsFileStoreUseAge=" + jmsFileStoreUseAge + ", jmsStatusList=" + jmsStatusList + + ", ejbPoolRuntimes=" + ejbPoolRuntimes + ", jdbcConnectionPoolStateList=" + + jdbcConnectionPoolStateList + ", isAdminServer=" + isAdminServer + "]"; + } + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/HostStatusVo.java b/src/main/java/com/eactive/eai/rms/onl/vo/HostStatusVo.java new file mode 100644 index 0000000..66d4c01 --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/HostStatusVo.java @@ -0,0 +1,87 @@ +package com.eactive.eai.rms.onl.vo; + +/** + * The Class HostStatusVo. + *
    + *
  • 1. Function :HOST의 정보를 구성 하는 VO 모든 값은 Percentage입니다.
  • + *
  • 2. Summary :
  • + *
  • 3. Notification :
  • + *
+ * + * @author : $Author: 박기섭 $ + * @version : $Revision: 1.1 $ + */ +public class HostStatusVo extends MonitorDataVo { + + /** The Constant serialVersionUID. */ + private static final long serialVersionUID = -4047295946876814487L; + + /** The cpu. */ + private int cpu; + + /** The memory. */ + private int memory; + + /** The disk. */ + private int disk; + + /** + * Gets the cpu. + * + * @return the cpu + */ + public int getCpu() { + return cpu; + } + + /** + * Sets the cpu. + * + * @param cpu the new cpu + */ + public void setCpu(int cpu) { + this.cpu = cpu; + } + + /** + * Gets the memory. + * + * @return the memory + */ + public int getMemory() { + return memory; + } + + /** + * Sets the memory. + * + * @param memory the new memory + */ + public void setMemory(int memory) { + this.memory = memory; + } + + /** + * Gets the disk. + * + * @return the disk + */ + public int getDisk() { + return disk; + } + + /** + * Sets the disk. + * + * @param disk the new disk + */ + public void setDisk(int disk) { + this.disk = disk; + } + + @Override + public String toString() { + return "HostStatusVo [cpu=" + cpu + ", memory=" + memory + ", disk=" + disk + "]"; + } + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/ItsmVo.java b/src/main/java/com/eactive/eai/rms/onl/vo/ItsmVo.java new file mode 100644 index 0000000..75d0463 --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/ItsmVo.java @@ -0,0 +1,205 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.Calendar; + +public class ItsmVo extends MonitorDataVo { + + // Monitoring time : YYYYmmddhhmmss + private String time ; + + // hostName <- use base class + + // cpu use + private String cpu ; + + // memory usage + private String memory ; + + // network in bps + private String in ; + + // network out bps + private String out ; + + // disk swap usage + private String swap ; + + // disk useage + private String disk ; + + + // ITSM 서비스별 거래건수 관련 코드 ( 내부:07, 일괄:08, 대외:09, 공동:10 ) + private String code ; + + // 서비스별 거래건수 + private int tranCount ; + + // 그룹사코드 + private String groupCoCd; + + + public String getGroupCoCd() { + return groupCoCd; + } + + public void setGroupCoCd(String groupCoCd) { + this.groupCoCd = groupCoCd; + } + + /** + * @return the code + */ + public String getCode() { + return code; + } + + /** + * @param code the code to set + */ + public void setCode(String code) { + this.code = code; + } + + /** + * @return the tranCount + */ + public int getTranCount() { + return tranCount; + } + + /** + * @param tranCount the tranCount to set + */ + public void setTranCount(int tranCount) { + this.tranCount = tranCount; + } + + /** + * @return the time + */ + public String getTime() { + return time; + } + + /** + * @param time the time to set + */ + public void setTime(String time) { + if( time != null ) { + this.time = time ; + return ; + } + + Calendar cal = Calendar.getInstance( ); + + + // 14자리 포맷 + this.time = String.format("%04d%02d%02d%02d%02d%02d", + cal.get(Calendar.YEAR), + (cal.get(Calendar.MONTH) + 1), + cal.get(Calendar.DAY_OF_MONTH), + + cal.get(Calendar.HOUR_OF_DAY), + cal.get(Calendar.MINUTE), + cal.get(Calendar.SECOND) + ); + } + + /** + * @return the cpu + */ + public String getCpu() { + return cpu; + } + + /** + * @param cpu the cpu to set + */ + public void setCpu(String cpu) { + this.cpu = cpu; + } + + /** + * @return the memory + */ + public String getMemory() { + return memory; + } + + /** + * @param memory the memory to set + */ + public void setMemory(String memory) { + this.memory = memory; + } + + /** + * @return the in + */ + public String getIn() { + return in; + } + + /** + * @param in the in to set + */ + public void setIn(String in) { + this.in = in; + } + + /** + * @return the out + */ + public String getOut() { + return out; + } + + /** + * @param out the out to set + */ + public void setOut(String out) { + this.out = out; + } + + /** + * @return the swap + */ + public String getSwap() { + return swap; + } + + /** + * @param swap the swap to set + */ + public void setSwap(String swap) { + this.swap = swap; + } + + /** + * @return the disk + */ + public String getDisk() { + return disk; + } + + /** + * @param disk the disk to set + */ + public void setDisk(String disk) { + this.disk = disk; + } + + public String toString() { + StringBuffer sb = new StringBuffer(); + + sb.append( "time=" + getTime() ); + sb.append( ", cpu=" + getCpu() ); + sb.append( ", memory=" + getMemory() ); + sb.append( ", in=" + getIn() ); + sb.append( ", out=" + getOut() ); + sb.append( ", swap=" + getSwap() ); + sb.append( ", disk=" + getDisk() ); + + return sb.toString(); + } +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/JmsMonitorVo.java b/src/main/java/com/eactive/eai/rms/onl/vo/JmsMonitorVo.java new file mode 100644 index 0000000..f405cd3 --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/JmsMonitorVo.java @@ -0,0 +1,87 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.Arrays; +import java.util.HashMap; + +public class JmsMonitorVo extends MonitorDataVo{ + + private HashMap data = new HashMap(); + + private String queueName ; + private String info[] = new String[9]; + + /** + * UDP 통신할때 에만 사용한다. + * @return the queueName + */ + public String getUdpQueueName() { + return queueName; + } + + /** + * UDP 통신 할때 에만 사용한다. + * @param queueName the queueName to set + */ + public void setUdpQueueName(String queueName) { + this.queueName = queueName; + } + + /** + * UDP 통신할때 에만 사용한다. + * @return the info + */ + public String[] getUdpInfo() { + return info; + } + + /** + * UDP 통신할때 에만 사용한다. + * @param info the info to set + */ + public void setUdpInfo(String[] info) { + this.info = info; + } + + /** + * 전체 HashMap 데이터를 리턴한다. + * @return the data + */ + public HashMap getData() { + return data; + } + + /** + * 전체 데이터를 업데이트한다. + * @param data the data to set + */ + public void setData(HashMap data) { + this.data = data; + } + + /** + * Queue name 에 해당하는 정보 리스트를 리턴한다. + * @param name + * @return + */ + public String[] getJmsVo( String name ) { + return (String[])data.get(name); + } + + /** + * Queue name 에 해당하는 정보 리스트를 업데이트 한다. + * @param name + * @param info + */ + public void setArrayData( String name, String[] info ) { + data.put(name, info); + } + + @Override + public String toString() { + return "JmsMonitorVo [data=" + data + ", queueName=" + queueName + ", info=" + Arrays.toString(info) + "]"; + } + + + + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/MonitorDataVo.java b/src/main/java/com/eactive/eai/rms/onl/vo/MonitorDataVo.java new file mode 100644 index 0000000..55a8fd4 --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/MonitorDataVo.java @@ -0,0 +1,87 @@ +package com.eactive.eai.rms.onl.vo; + +import java.io.Serializable; + +/** + * The Class MonitorDataVo. + *
    + *
  • 1. Function : UDP/IP로 모니터링 서버로 송수신 되는 모든 객체의 super class입니다.
  • + *
  • 2. Summary :UDP/IP로 모니터링 서버로 송수신 되는 모든 객체는 이 클래스를 상속 받아야 합니다.
  • + *
  • 3. Notification :
  • + *
+ * + * @author : $Author: 박기섭 $ + * @version : $Revision: 1.2 $ + */ +public abstract class MonitorDataVo implements Serializable { + + /** The hostname. */ + private String hostName; + + /** The inst name. */ + private String instanceName; + + /** The category. */ + private String category; + + /** + * Gets the host name. + * + * @return the host name + */ + public String getHostName() { + return hostName; + } + + /** + * Sets the host name. + * + * @param hostName the new host name + */ + public void setHostName(String hostName) { + this.hostName = hostName; + } + + /** + * Gets the inst name. + * + * @return the inst name + */ + public String getInstanceName() { + return instanceName; + } + + /** + * Sets the inst name. + * + * @param instName the new inst name + */ + public void setInstanceName(String instName) { + this.instanceName = instName; + } + + /** + * Gets the category. + * + * @return the category + */ + public String getCategory() { + return category; + } + + /** + * Sets the category. + * + * @param category the new category + */ + public void setCategory(String category) { + this.category = category; + } + + /** + * Instantiates a new monitor data vo. + */ + public MonitorDataVo() { + } + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/SmsVO.java b/src/main/java/com/eactive/eai/rms/onl/vo/SmsVO.java new file mode 100644 index 0000000..2e92772 --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/SmsVO.java @@ -0,0 +1,50 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.List; + +public class SmsVO extends MonitorDataVo { + + /** + * {@see com.eactive.eai.rms.common.datasource.ServiceType#getKey()} + */ + private String service; + + // ¸Þ½ÃÁö + private List message; + + /** + * @return the service + */ + public String getService() { + return service; + } + + /** + * @param service + * the service to set + */ + public void setService(String service) { + this.service = service; + } + + /** + * @return the message + */ + public List getMessage() { + return message; + } + + /** + * @param list + * the message to set + */ + public void setMessage(List list) { + this.message = list; + } + + @Override + public String toString() { + return "SmsVO [service=" + service + ", message=" + message + "]"; + } + +} diff --git a/src/main/java/com/eactive/eai/rms/onl/vo/TransactionSendVo.java b/src/main/java/com/eactive/eai/rms/onl/vo/TransactionSendVo.java new file mode 100644 index 0000000..f320f53 --- /dev/null +++ b/src/main/java/com/eactive/eai/rms/onl/vo/TransactionSendVo.java @@ -0,0 +1,108 @@ +package com.eactive.eai.rms.onl.vo; + +import java.util.HashMap; + +import com.eactive.eai.common.monitor.MonitorVO; + +public class TransactionSendVo extends MonitorDataVo { + + private String cmd; + + private String key1; + + private String key2; + + private MonitorVO vo; + + /** + * 서버로 부터 수신받은 MonitorVO 객체들은 저장해 두기 위한 임시 저장소 + * UDP 통신시 에는 NULL 상태 이다. + */ + private HashMap> mapRepo; + + /** + * @return the cmd + */ + public String getCmd() { + return cmd; + } + + /** + * @param cmd the cmd to set + */ + public void setCmd(String cmd) { + this.cmd = cmd; + } + + /** + * @return the key1 + */ + public String getKey1() { + return key1; + } + + /** + * @param key1 the key1 to set + */ + public void setKey1(String key1) { + this.key1 = key1; + } + + /** + * @return the key2 + */ + public String getKey2() { + return key2; + } + + /** + * @param key2 the key2 to set + */ + public void setKey2(String key2) { + this.key2 = key2; + } + + /** + * @return the vo + */ + public MonitorVO getVo() { + return vo; + } + + /** + * @param vo the vo to set + */ + public void setVo(MonitorVO vo) { + this.vo = vo; + } + + public HashMap> getMapRepo() { + if( mapRepo == null ) { + //최초 요청시 + mapRepo = new HashMap>(); + } + return mapRepo; + } + + public void setMapRepo( String key1, String key2, MonitorVO vo ) { + if( mapRepo == null ) { + mapRepo = new HashMap>(); + } + + HashMap map = mapRepo.get(key1); + if( map == null ) { + map = new HashMap(); + map.put(key2, vo); + mapRepo.put(key1, map); + } else { + map.put(key2, vo); + } + } + + @Override + public String toString() { + return "TransactionSendVo [cmd=" + cmd + ", key1=" + key1 + ", key2=" + key2 + ", vo=" + vo + ", mapRepo=" + + mapRepo + "]"; + } + +} diff --git a/src/main/java/com/ext/eai/common/stdmessage/STDMessageErrorKeys.java b/src/main/java/com/ext/eai/common/stdmessage/STDMessageErrorKeys.java new file mode 100644 index 0000000..cd28192 --- /dev/null +++ b/src/main/java/com/ext/eai/common/stdmessage/STDMessageErrorKeys.java @@ -0,0 +1,88 @@ +/** + * + */ +package com.ext.eai.common.stdmessage; + +import com.eactive.eai.common.property.PropManager; + +//. 기능 : STD 표준전문에서 사용하는 상수를 정의 +public class STDMessageErrorKeys { + private static final String STDMESSAGE_ERROR_CODE ="STDMESSAGE_ERROR_CODE"; + private static final String SUCCESS_CODE ="SUCCESS_CODE"; + private static final String SUCCESS_MSG ="SUCCESS_MSG"; + private static final String SYSTEM_ERROR_CODE ="SYSTEM_ERROR_CODE"; + private static final String SYSTEM_ERROR_MSG ="SYSTEM_ERROR_MSG"; + private static final String TIMEOUT_ERROR_CODE ="TIMEOUT_ERROR_CODE"; + private static final String TIMEOUT_ERROR_MSG ="TIMEOUT_ERROR_MSG"; + private static final String BIZ_ERROR_CODE ="BIZ_ERROR_CODE"; + private static final String BIZ_ERROR_MSG ="BIZ_ERROR_MSG"; + private static final String DUP_LOGIN_ERROR_CODE ="DUP_LOGIN_ERROR_CODE"; + private static final String DUP_LOGIN_ERROR_MSG ="DUP_LOGIN_ERROR_MSG"; + private static final String NOT_LOGIN_ERROR_CODE ="NOT_LOGIN_ERROR_CODE"; + private static final String NOT_LOGIN_ERROR_MSG ="NOT_LOGIN_ERROR_MSG"; + private static final String APPROVE_ERROR_CODE ="APPROVE_ERROR_CODE"; + private static final String APPROVE_ERROR_MSG ="APPROVE_ERROR_MSG"; + private static final String APPROVE_NOT_FOUND_ERROR_CODE ="APPROVE_NOT_FOUND_ERROR_CODE"; + private static final String APPROVE_NOT_FOUND_ERROR_MSG ="APPROVE_NOT_FOUND_ERROR_MSG"; + private static final String UUID_MISMATCH_ERROR_CODE ="UUID_MISMATCH_ERROR_CODE"; + private static final String UUID_MISMATCH_ERROR_MSG ="UUID_MISMATCH_ERROR_MSG"; + private static final String VALID_VALUE_ERROR_CODE ="VALID_VALUE_ERROR_CODE"; + private static final String VALID_VALUE_ERROR_MSG ="VALID_VALUE_ERROR_MSG"; + private static final String RATELIMIT_ERROR_CODE ="RATELIMIT_ERROR_CODE"; + private static final String RATELIMIT_ERROR_MSG ="RATELIMIT_ERROR_MSG"; + + //사이트별 에러코드 + public static String SUCCESS_CODE_VALUE ;//성공코드 + public static String SUCCESS_MSG_VALUE ;//성공메시지 + public static String SYSTEM_ERROR_CODE_VALUE ;//시스템 에러코드 + public static String SYSTEM_ERROR_MSG_VALUE ;//시스템 에러메시지 + public static String BIZ_ERROR_CODE_VALUE ;//업무 에러코드 + public static String BIZ_ERROR_MSG_VALUE ;//업무 에러메시지 + public static String TIMEOUT_ERROR_CODE_VALUE ;//타임아웃 에러코드 + public static String TIMEOUT_ERROR_MSG_VALUE ;//타임아웃 에러메시지 + public static String DUP_LOGIN_ERROR_CODE_VALUE ;//중복로그인 에러코드 + public static String DUP_LOGIN_ERROR_MSG_VALUE ;//중복로그인 에러메시지 + public static String NOT_LOGIN_ERROR_CODE_VALUE ;//미로그인 에러코드 + public static String NOT_LOGIN_ERROR_MSG_VALUE ;//미로그인 에러메시지 + public static String APPROVE_ERROR_CODE_VALUE ;//책임자승인 에러코드 + public static String APPROVE_ERROR_MSG_VALUE ;//책임자승인 에러메시지 + public static String APPROVE_NOT_FOUND_ERROR_CODE_VALUE ;//책임자 승인자가 존재하지 않는 에러코드 + public static String APPROVE_NOT_FOUND_ERROR_MSG_VALUE ;//책임자 승인자가 존재하지 않는 에러메시지 + public static String UUID_MISMATCH_ERROR_CODE_VALUE ;//UUID가 같지 않은 에러코드 + public static String UUID_MISMATCH_ERROR_MSG_VALUE ;//UUID가 같지 않은 에러메시지 + public static String VALID_VALUE_ERROR_CODE_VALUE ;//유효값 에러코드 + public static String VALID_VALUE_ERROR_MSG_VALUE ;//유효값 에러메시지 + public static String RATELIMIT_ERROR_CODE_VALUE ;//유량제어 에러코드 + public static String RATELIMIT_ERROR_MSG_VALUE ;//유량제어 에러메시지 + + //기존 오류코드는 900400 과 900401만 사용했음 + static { + PropManager manager = PropManager.getInstance(); + SUCCESS_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,SUCCESS_CODE,"900000"); + SUCCESS_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,SUCCESS_MSG,"정상 처리되었습니다."); + SYSTEM_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,SYSTEM_ERROR_CODE,"900400"); + SYSTEM_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,SYSTEM_ERROR_MSG,"시스템오류가 발생하였습니다."); + TIMEOUT_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,TIMEOUT_ERROR_CODE,"900401"); + TIMEOUT_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,TIMEOUT_ERROR_MSG,"타임아웃오류가 발생하였습니다."); + BIZ_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,BIZ_ERROR_CODE,"900402"); + BIZ_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,BIZ_ERROR_MSG,"업무오류가 발생하였습니다."); + DUP_LOGIN_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,DUP_LOGIN_ERROR_CODE,"900403"); + DUP_LOGIN_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,DUP_LOGIN_ERROR_MSG,"중복로그인오류가 발생하였습니다."); + NOT_LOGIN_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,NOT_LOGIN_ERROR_CODE,"900404"); + NOT_LOGIN_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,NOT_LOGIN_ERROR_MSG,"미로그인오류가 발생하였습니다."); + APPROVE_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,APPROVE_ERROR_CODE,"900405"); + APPROVE_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,APPROVE_ERROR_MSG,"책임자가 시간내 승인을 하지 않았습니다."); + APPROVE_NOT_FOUND_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,APPROVE_NOT_FOUND_ERROR_CODE,"900406"); + APPROVE_NOT_FOUND_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,APPROVE_NOT_FOUND_ERROR_MSG,"책임자가 승인자가 존재하지 않습니다."); + UUID_MISMATCH_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,UUID_MISMATCH_ERROR_CODE,"900407"); + UUID_MISMATCH_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,UUID_MISMATCH_ERROR_MSG,"MCI 세션ID가 같지않은 오류가 발생하였습니다."); + VALID_VALUE_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,VALID_VALUE_ERROR_CODE,"900408"); + VALID_VALUE_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,VALID_VALUE_ERROR_MSG,"유효값 오류가 발생하였습니다."); + RATELIMIT_ERROR_CODE_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,RATELIMIT_ERROR_CODE,"900409"); + RATELIMIT_ERROR_MSG_VALUE = manager.getProperty(STDMESSAGE_ERROR_CODE,RATELIMIT_ERROR_MSG,"RateLimiter Overflow"); + } + + private STDMessageErrorKeys() { + + } +} diff --git a/src/main/java/com/ext/eai/common/stdmessage/STDMessageKeys.java b/src/main/java/com/ext/eai/common/stdmessage/STDMessageKeys.java new file mode 100644 index 0000000..00ba711 --- /dev/null +++ b/src/main/java/com/ext/eai/common/stdmessage/STDMessageKeys.java @@ -0,0 +1,73 @@ +/** + * + */ +package com.ext.eai.common.stdmessage; + +/** +* 1. 기능 : STD 표준전문에서 사용하는 상수를 정의 +* 2. 처리 개요 : STD 표준전문에서 사용하는 상수를 정의 +* 3. 주의사항 : +* +* @author : +* @version : v 1.0.0 +* @see : +* @since : +* : +*/ +public interface STDMessageKeys { + + // 내외부 구분코드 + public static final String DIRECTION_IN = "1"; + public static final String DIRECTION_INA = "A"; + public static final String DIRECTION_EX = "2"; + + //원거래복원여부 + public static final String RECOVER_YN_NO = "0"; + public static final String RECOVER_YN_YES = "1"; + + // 전문요청구분코드 + public static final String SEND_RECV_CD_SEND = "S"; + public static final String SEND_RECV_CD_RECV = "R"; + + //거래처리구분코드 + public static final String SYNC_ASYNC_CD_SYNC = "S"; + public static final String SYNC_ASYNC_CD_ASYNC = "A"; + + + public static final String CNTERDSTCD_MAIN = "1"; + public static final String CNTERDSTCD_DR = "2"; + + public static final String OPERATION_ENV_PRODUCT = "O"; + public static final String OPERATION_ENV_TESTSTAGE = "S"; + public static final String OPERATION_ENV_DEV = "D"; + public static final String OPERATION_ENV_DR = "R"; + public static final String OPERATION_ENV_LOCAL = "L";//로컬 + public static final String OPERATION_ENV_SIM = "E";//시뮬레이터 + + public static final String OUTPUT_TYPE_DEF = "00"; + public static final String OUTPUT_TYPE_OK = "01"; + public static final String OUTPUT_TYPE_ERR = "02"; + + //응답결과구분코드 + public static final String RESPONSE_TYPE_CODE_N = "0";//정상(normal) + public static final String RESPONSE_TYPE_CODE_E = "1";//오류(error) + public static final String RESPONSE_TYPE_CODE_C = "1";//대상시스템연결오류(connect fail) + public static final String RESPONSE_TYPE_CODE_T = "1";//타임아웃(timeout) + public static final String RESPONSE_TYPE_CODE_F = "1";//시스템오류(fatal) + + + + //사이트별 에러코드 +// public static final String ERROR_CODE_VALUE = "900400";//일반 +// public static final String TIMEOUT_CODE_VALUE = "900401";//타임아웃 + public static final String ERROR_CODE_VALUE = "9000400";//일반 + public static final String TIMEOUT_CODE_VALUE = "9000401";//타임아웃 + + // Push 구분자 코드 + public static final String PUSH_DVSN_CD_S = "S";// Single + public static final String PUSH_DVSN_CD_R = "R";// 청단위 + public static final String PUSH_DVSN_CD_B = "B";// 국단위 + public static final String PUSH_DVSN_CD_A = "A";// 전체 + + +} diff --git a/src/model/StdMsgLout.java b/src/model/StdMsgLout.java new file mode 100644 index 0000000..8f2677b --- /dev/null +++ b/src/model/StdMsgLout.java @@ -0,0 +1,77 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.sql.Timestamp; + + +/** + * The persistent class for the std_msg_lout database table. + * + */ +@Entity +@Table(name="std_msg_lout") +@NamedQuery(name="StdMsgLout.findAll", query="SELECT s FROM StdMsgLout s") +public class StdMsgLout implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(name="layout_name", unique=true, nullable=false, length=500) + private String layoutName; + + @Column(name="create_datetime", nullable=false) + private Timestamp createDatetime; + + @Column(name="layout_desc", length=1000) + private String layoutDesc; + + @Column(name="update_datetime", nullable=false) + private Timestamp updateDatetime; + + @Column(name="writer_name", nullable=false, length=1000) + private String writerName; + + public StdMsgLout() { + } + + public String getLayoutName() { + return this.layoutName; + } + + public void setLayoutName(String layoutName) { + this.layoutName = layoutName; + } + + public Timestamp getCreateDatetime() { + return this.createDatetime; + } + + public void setCreateDatetime(Timestamp createDatetime) { + this.createDatetime = createDatetime; + } + + public String getLayoutDesc() { + return this.layoutDesc; + } + + public void setLayoutDesc(String layoutDesc) { + this.layoutDesc = layoutDesc; + } + + public Timestamp getUpdateDatetime() { + return this.updateDatetime; + } + + public void setUpdateDatetime(Timestamp updateDatetime) { + this.updateDatetime = updateDatetime; + } + + public String getWriterName() { + return this.writerName; + } + + public void setWriterName(String writerName) { + this.writerName = writerName; + } + +} \ No newline at end of file diff --git a/src/model/StdMsgLoutDeploy.java b/src/model/StdMsgLoutDeploy.java new file mode 100644 index 0000000..d3f5845 --- /dev/null +++ b/src/model/StdMsgLoutDeploy.java @@ -0,0 +1,31 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the std_msg_lout_deploy database table. + * + */ +@Entity +@Table(name="std_msg_lout_deploy") +@NamedQuery(name="StdMsgLoutDeploy.findAll", query="SELECT s FROM StdMsgLoutDeploy s") +public class StdMsgLoutDeploy implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(name="layout_name", nullable=false, length=500) + private String layoutName; + + public StdMsgLoutDeploy() { + } + + public String getLayoutName() { + return this.layoutName; + } + + public void setLayoutName(String layoutName) { + this.layoutName = layoutName; + } + +} \ No newline at end of file diff --git a/src/model/StdMsgLoutHist.java b/src/model/StdMsgLoutHist.java new file mode 100644 index 0000000..41bb177 --- /dev/null +++ b/src/model/StdMsgLoutHist.java @@ -0,0 +1,99 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.sql.Timestamp; + + +/** + * The persistent class for the std_msg_lout_hist database table. + * + */ +@Entity +@Table(name="std_msg_lout_hist") +@NamedQuery(name="StdMsgLoutHist.findAll", query="SELECT s FROM StdMsgLoutHist s") +public class StdMsgLoutHist implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(name="operation_seq", unique=true, nullable=false) + private Integer operationSeq; + + @Column(name="item_list_data", length=2147483647) + private String itemListData; + + @Column(name="layout_desc", length=1000) + private String layoutDesc; + + @Column(name="layout_name", nullable=false, length=500) + private String layoutName; + + @Column(name="operation_datetime", nullable=false) + private Timestamp operationDatetime; + + @Column(name="operation_type", nullable=false, length=100) + private String operationType; + + @Column(name="operator_name", nullable=false, length=1000) + private String operatorName; + + public StdMsgLoutHist() { + } + + public Integer getOperationSeq() { + return this.operationSeq; + } + + public void setOperationSeq(Integer operationSeq) { + this.operationSeq = operationSeq; + } + + public String getItemListData() { + return this.itemListData; + } + + public void setItemListData(String itemListData) { + this.itemListData = itemListData; + } + + public String getLayoutDesc() { + return this.layoutDesc; + } + + public void setLayoutDesc(String layoutDesc) { + this.layoutDesc = layoutDesc; + } + + public String getLayoutName() { + return this.layoutName; + } + + public void setLayoutName(String layoutName) { + this.layoutName = layoutName; + } + + public Timestamp getOperationDatetime() { + return this.operationDatetime; + } + + public void setOperationDatetime(Timestamp operationDatetime) { + this.operationDatetime = operationDatetime; + } + + public String getOperationType() { + return this.operationType; + } + + public void setOperationType(String operationType) { + this.operationType = operationType; + } + + public String getOperatorName() { + return this.operatorName; + } + + public void setOperatorName(String operatorName) { + this.operatorName = operatorName; + } + +} \ No newline at end of file diff --git a/src/model/StdMsgLoutItem.java b/src/model/StdMsgLoutItem.java new file mode 100644 index 0000000..c1ecccb --- /dev/null +++ b/src/model/StdMsgLoutItem.java @@ -0,0 +1,152 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the std_msg_lout_item database table. + * + */ +@Entity +@Table(name="std_msg_lout_item") +@NamedQuery(name="StdMsgLoutItem.findAll", query="SELECT s FROM StdMsgLoutItem s") +public class StdMsgLoutItem implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private StdMsgLoutItemPK id; + + @Column(name="array_size", nullable=false) + private Integer arraySize; + + @Column(name="data_length") + private Integer dataLength; + + @Column(name="data_type", nullable=false) + private Integer dataType; + + @Column(name="default_value", length=1000) + private String defaultValue; + + @Column(name="field_type", nullable=false) + private Integer fieldType; + + @Column(name="item_desc", nullable=false, length=1000) + private String itemDesc; + + @Column(name="item_level", nullable=false) + private Integer itemLevel; + + @Column(name="item_name", nullable=false, length=500) + private String itemName; + + @Column(name="item_type", nullable=false) + private Integer itemType; + + @Column(name="ref_field_path", length=1000) + private String refFieldPath; + + @Column(name="ref_value", length=1000) + private String refValue; + + public StdMsgLoutItem() { + } + + public StdMsgLoutItemPK getId() { + return this.id; + } + + public void setId(StdMsgLoutItemPK id) { + this.id = id; + } + + public Integer getArraySize() { + return this.arraySize; + } + + public void setArraySize(Integer arraySize) { + this.arraySize = arraySize; + } + + public Integer getDataLength() { + return this.dataLength; + } + + public void setDataLength(Integer dataLength) { + this.dataLength = dataLength; + } + + public Integer getDataType() { + return this.dataType; + } + + public void setDataType(Integer dataType) { + this.dataType = dataType; + } + + public String getDefaultValue() { + return this.defaultValue; + } + + public void setDefaultValue(String defaultValue) { + this.defaultValue = defaultValue; + } + + public Integer getFieldType() { + return this.fieldType; + } + + public void setFieldType(Integer fieldType) { + this.fieldType = fieldType; + } + + public String getItemDesc() { + return this.itemDesc; + } + + public void setItemDesc(String itemDesc) { + this.itemDesc = itemDesc; + } + + public Integer getItemLevel() { + return this.itemLevel; + } + + public void setItemLevel(Integer itemLevel) { + this.itemLevel = itemLevel; + } + + public String getItemName() { + return this.itemName; + } + + public void setItemName(String itemName) { + this.itemName = itemName; + } + + public Integer getItemType() { + return this.itemType; + } + + public void setItemType(Integer itemType) { + this.itemType = itemType; + } + + public String getRefFieldPath() { + return this.refFieldPath; + } + + public void setRefFieldPath(String refFieldPath) { + this.refFieldPath = refFieldPath; + } + + public String getRefValue() { + return this.refValue; + } + + public void setRefValue(String refValue) { + this.refValue = refValue; + } + +} \ No newline at end of file diff --git a/src/model/StdMsgLoutItemPK.java b/src/model/StdMsgLoutItemPK.java new file mode 100644 index 0000000..bde7834 --- /dev/null +++ b/src/model/StdMsgLoutItemPK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the std_msg_lout_item database table. + * + */ +@Embeddable +public class StdMsgLoutItemPK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(name="layout_name", unique=true, nullable=false, length=500) + private String layoutName; + + @Column(name="item_no", unique=true, nullable=false) + private Integer itemNo; + + public StdMsgLoutItemPK() { + } + public String getLayoutName() { + return this.layoutName; + } + public void setLayoutName(String layoutName) { + this.layoutName = layoutName; + } + public Integer getItemNo() { + return this.itemNo; + } + public void setItemNo(Integer itemNo) { + this.itemNo = itemNo; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof StdMsgLoutItemPK)) { + return false; + } + StdMsgLoutItemPK castOther = (StdMsgLoutItemPK)other; + return + this.layoutName.equals(castOther.layoutName) + && this.itemNo.equals(castOther.itemNo); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.layoutName.hashCode(); + hash = hash * prime + this.itemNo.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad01.java b/src/model/Tseaiad01.java new file mode 100644 index 0000000..ab4ac66 --- /dev/null +++ b/src/model/Tseaiad01.java @@ -0,0 +1,329 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad01 database table. + * + */ +@Entity +@Table(name="tseaiad01") +@NamedQuery(name="Tseaiad01.findAll", query="SELECT t FROM Tseaiad01 t") +public class Tseaiad01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(length=200) + private String adptrbzwkgroupdesc; + + @Column(length=3) + private String adptrcd; + + @Column(length=20) + private String adptrinsticode; + + @Column(length=1) + private String adptriodstcd; + + @Column(length=3) + private String adptrmsgdstcd; + + @Column(length=1) + private String adptrmsgptrncd; + + @Column(length=50) + private String adptrnickname; + + @Column(length=1) + private String adptruseyn; + + @Column(length=30) + private String bidinterface; + + @Column(length=100) + private String cirnumber; + + @Column(length=20) + private String companycodedata; + + @Column(length=1) + private String dradptryn; + + @Column(length=4) + private String eaibzwkdstcd; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=1) + private String kesauseyn; + + @Column(length=30) + private String monicndnctnt; + + @Column(length=1) + private String moniuseyn; + + @Column(length=20) + private String msgencode; + + @Column(length=60) + private String osidinstibzwkrsempname; + + @Column(length=12) + private String osidinstino; + + @Column(length=50) + private String osidinstitelno; + + @Column(length=1) + private String osidinstiyn; + + @Column(length=100) + private String refclsname; + + @Column(length=1) + private String sndrcvhmslogyn; + + @Column(length=1) + private String spcfcluuseyn; + + @Column(length=1) + private String testmasteryn; + + public Tseaiad01() { + } + + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public String getAdptrbzwkgroupdesc() { + return this.adptrbzwkgroupdesc; + } + + public void setAdptrbzwkgroupdesc(String adptrbzwkgroupdesc) { + this.adptrbzwkgroupdesc = adptrbzwkgroupdesc; + } + + public String getAdptrcd() { + return this.adptrcd; + } + + public void setAdptrcd(String adptrcd) { + this.adptrcd = adptrcd; + } + + public String getAdptrinsticode() { + return this.adptrinsticode; + } + + public void setAdptrinsticode(String adptrinsticode) { + this.adptrinsticode = adptrinsticode; + } + + public String getAdptriodstcd() { + return this.adptriodstcd; + } + + public void setAdptriodstcd(String adptriodstcd) { + this.adptriodstcd = adptriodstcd; + } + + public String getAdptrmsgdstcd() { + return this.adptrmsgdstcd; + } + + public void setAdptrmsgdstcd(String adptrmsgdstcd) { + this.adptrmsgdstcd = adptrmsgdstcd; + } + + public String getAdptrmsgptrncd() { + return this.adptrmsgptrncd; + } + + public void setAdptrmsgptrncd(String adptrmsgptrncd) { + this.adptrmsgptrncd = adptrmsgptrncd; + } + + public String getAdptrnickname() { + return this.adptrnickname; + } + + public void setAdptrnickname(String adptrnickname) { + this.adptrnickname = adptrnickname; + } + + public String getAdptruseyn() { + return this.adptruseyn; + } + + public void setAdptruseyn(String adptruseyn) { + this.adptruseyn = adptruseyn; + } + + public String getBidinterface() { + return this.bidinterface; + } + + public void setBidinterface(String bidinterface) { + this.bidinterface = bidinterface; + } + + public String getCirnumber() { + return this.cirnumber; + } + + public void setCirnumber(String cirnumber) { + this.cirnumber = cirnumber; + } + + public String getCompanycodedata() { + return this.companycodedata; + } + + public void setCompanycodedata(String companycodedata) { + this.companycodedata = companycodedata; + } + + public String getDradptryn() { + return this.dradptryn; + } + + public void setDradptryn(String dradptryn) { + this.dradptryn = dradptryn; + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getKesauseyn() { + return this.kesauseyn; + } + + public void setKesauseyn(String kesauseyn) { + this.kesauseyn = kesauseyn; + } + + public String getMonicndnctnt() { + return this.monicndnctnt; + } + + public void setMonicndnctnt(String monicndnctnt) { + this.monicndnctnt = monicndnctnt; + } + + public String getMoniuseyn() { + return this.moniuseyn; + } + + public void setMoniuseyn(String moniuseyn) { + this.moniuseyn = moniuseyn; + } + + public String getMsgencode() { + return this.msgencode; + } + + public void setMsgencode(String msgencode) { + this.msgencode = msgencode; + } + + public String getOsidinstibzwkrsempname() { + return this.osidinstibzwkrsempname; + } + + public void setOsidinstibzwkrsempname(String osidinstibzwkrsempname) { + this.osidinstibzwkrsempname = osidinstibzwkrsempname; + } + + public String getOsidinstino() { + return this.osidinstino; + } + + public void setOsidinstino(String osidinstino) { + this.osidinstino = osidinstino; + } + + public String getOsidinstitelno() { + return this.osidinstitelno; + } + + public void setOsidinstitelno(String osidinstitelno) { + this.osidinstitelno = osidinstitelno; + } + + public String getOsidinstiyn() { + return this.osidinstiyn; + } + + public void setOsidinstiyn(String osidinstiyn) { + this.osidinstiyn = osidinstiyn; + } + + public String getRefclsname() { + return this.refclsname; + } + + public void setRefclsname(String refclsname) { + this.refclsname = refclsname; + } + + public String getSndrcvhmslogyn() { + return this.sndrcvhmslogyn; + } + + public void setSndrcvhmslogyn(String sndrcvhmslogyn) { + this.sndrcvhmslogyn = sndrcvhmslogyn; + } + + public String getSpcfcluuseyn() { + return this.spcfcluuseyn; + } + + public void setSpcfcluuseyn(String spcfcluuseyn) { + this.spcfcluuseyn = spcfcluuseyn; + } + + public String getTestmasteryn() { + return this.testmasteryn; + } + + public void setTestmasteryn(String testmasteryn) { + this.testmasteryn = testmasteryn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad02.java b/src/model/Tseaiad02.java new file mode 100644 index 0000000..22378eb --- /dev/null +++ b/src/model/Tseaiad02.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad02 database table. + * + */ +@Entity +@Table(name="tseaiad02") +@NamedQuery(name="Tseaiad02.findAll", query="SELECT t FROM Tseaiad02 t") +public class Tseaiad02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad02PK id; + + @Column(length=200) + private String adptrdesc; + + @Column(length=300) + private String eaisevrinstncname; + + @Column(length=100) + private String lstnerclsname; + + @Column(length=50) + private String prptygroupname; + + @Column(length=100) + private String testclsname; + + public Tseaiad02() { + } + + public Tseaiad02PK getId() { + return this.id; + } + + public void setId(Tseaiad02PK id) { + this.id = id; + } + + public String getAdptrdesc() { + return this.adptrdesc; + } + + public void setAdptrdesc(String adptrdesc) { + this.adptrdesc = adptrdesc; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public String getLstnerclsname() { + return this.lstnerclsname; + } + + public void setLstnerclsname(String lstnerclsname) { + this.lstnerclsname = lstnerclsname; + } + + public String getPrptygroupname() { + return this.prptygroupname; + } + + public void setPrptygroupname(String prptygroupname) { + this.prptygroupname = prptygroupname; + } + + public String getTestclsname() { + return this.testclsname; + } + + public void setTestclsname(String testclsname) { + this.testclsname = testclsname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad02PK.java b/src/model/Tseaiad02PK.java new file mode 100644 index 0000000..c233fce --- /dev/null +++ b/src/model/Tseaiad02PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad02 database table. + * + */ +@Embeddable +public class Tseaiad02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkname; + + public Tseaiad02PK() { + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getAdptrbzwkname() { + return this.adptrbzwkname; + } + public void setAdptrbzwkname(String adptrbzwkname) { + this.adptrbzwkname = adptrbzwkname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad02PK)) { + return false; + } + Tseaiad02PK castOther = (Tseaiad02PK)other; + return + this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.adptrbzwkname.equals(castOther.adptrbzwkname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.adptrbzwkname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad03.java b/src/model/Tseaiad03.java new file mode 100644 index 0000000..607c43c --- /dev/null +++ b/src/model/Tseaiad03.java @@ -0,0 +1,43 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad03 database table. + * + */ +@Entity +@Table(name="tseaiad03") +@NamedQuery(name="Tseaiad03.findAll", query="SELECT t FROM Tseaiad03 t") +public class Tseaiad03 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=3) + private String adptrcd; + + @Column(length=50) + private String adptrname; + + public Tseaiad03() { + } + + public String getAdptrcd() { + return this.adptrcd; + } + + public void setAdptrcd(String adptrcd) { + this.adptrcd = adptrcd; + } + + public String getAdptrname() { + return this.adptrname; + } + + public void setAdptrname(String adptrname) { + this.adptrname = adptrname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad04.java b/src/model/Tseaiad04.java new file mode 100644 index 0000000..6318479 --- /dev/null +++ b/src/model/Tseaiad04.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad04 database table. + * + */ +@Entity +@Table(name="tseaiad04") +@NamedQuery(name="Tseaiad04.findAll", query="SELECT t FROM Tseaiad04 t") +public class Tseaiad04 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad04PK id; + + @Column(length=200) + private String adptrprptydesc; + + @Column(length=20) + private String dmnknd; + + public Tseaiad04() { + } + + public Tseaiad04PK getId() { + return this.id; + } + + public void setId(Tseaiad04PK id) { + this.id = id; + } + + public String getAdptrprptydesc() { + return this.adptrprptydesc; + } + + public void setAdptrprptydesc(String adptrprptydesc) { + this.adptrprptydesc = adptrprptydesc; + } + + public String getDmnknd() { + return this.dmnknd; + } + + public void setDmnknd(String dmnknd) { + this.dmnknd = dmnknd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad04PK.java b/src/model/Tseaiad04PK.java new file mode 100644 index 0000000..22ff5a9 --- /dev/null +++ b/src/model/Tseaiad04PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad04 database table. + * + */ +@Embeddable +public class Tseaiad04PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=3) + private String adptrcd; + + @Column(unique=true, nullable=false, length=1) + private String adptriodstcd; + + @Column(unique=true, nullable=false, length=100) + private String adptrprptyname; + + public Tseaiad04PK() { + } + public String getAdptrcd() { + return this.adptrcd; + } + public void setAdptrcd(String adptrcd) { + this.adptrcd = adptrcd; + } + public String getAdptriodstcd() { + return this.adptriodstcd; + } + public void setAdptriodstcd(String adptriodstcd) { + this.adptriodstcd = adptriodstcd; + } + public String getAdptrprptyname() { + return this.adptrprptyname; + } + public void setAdptrprptyname(String adptrprptyname) { + this.adptrprptyname = adptrprptyname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad04PK)) { + return false; + } + Tseaiad04PK castOther = (Tseaiad04PK)other; + return + this.adptrcd.equals(castOther.adptrcd) + && this.adptriodstcd.equals(castOther.adptriodstcd) + && this.adptrprptyname.equals(castOther.adptrprptyname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrcd.hashCode(); + hash = hash * prime + this.adptriodstcd.hashCode(); + hash = hash * prime + this.adptrprptyname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad05.java b/src/model/Tseaiad05.java new file mode 100644 index 0000000..e167eaa --- /dev/null +++ b/src/model/Tseaiad05.java @@ -0,0 +1,212 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaiad05 database table. + * + */ +@Entity +@Table(name="tseaiad05") +@NamedQuery(name="Tseaiad05.findAll", query="SELECT t FROM Tseaiad05 t") +public class Tseaiad05 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad05PK id; + + @Column(length=20) + private String bkupadptrgstatsevrname; + + @Column(length=1) + private String bkupautocnvsnyn; + + private Integer bkupcnvsnbaseobstclrt; + + @Column(precision=10) + private BigDecimal bkupsoftlinkportno; + + private Integer dmymsgsituval; + + private Integer hostdpstruval; + + private Integer hostsndmsgruval; + + @Column(length=10) + private String loglvelname; + + @Column(length=1) + private String loguseyn; + + @Column(length=16) + private String lugroupamndhms; + + @Column(length=16) + private String lugroupregihms; + + private Integer maxlogfileval; + + @Column(precision=10) + private BigDecimal softlinkportno; + + @Column(length=20) + private String softlinksevrname; + + private Integer svctoutval; + + @Column(length=10) + private String uapplidname; + + private Integer wcasesscnt; + + public Tseaiad05() { + } + + public Tseaiad05PK getId() { + return this.id; + } + + public void setId(Tseaiad05PK id) { + this.id = id; + } + + public String getBkupadptrgstatsevrname() { + return this.bkupadptrgstatsevrname; + } + + public void setBkupadptrgstatsevrname(String bkupadptrgstatsevrname) { + this.bkupadptrgstatsevrname = bkupadptrgstatsevrname; + } + + public String getBkupautocnvsnyn() { + return this.bkupautocnvsnyn; + } + + public void setBkupautocnvsnyn(String bkupautocnvsnyn) { + this.bkupautocnvsnyn = bkupautocnvsnyn; + } + + public Integer getBkupcnvsnbaseobstclrt() { + return this.bkupcnvsnbaseobstclrt; + } + + public void setBkupcnvsnbaseobstclrt(Integer bkupcnvsnbaseobstclrt) { + this.bkupcnvsnbaseobstclrt = bkupcnvsnbaseobstclrt; + } + + public BigDecimal getBkupsoftlinkportno() { + return this.bkupsoftlinkportno; + } + + public void setBkupsoftlinkportno(BigDecimal bkupsoftlinkportno) { + this.bkupsoftlinkportno = bkupsoftlinkportno; + } + + public Integer getDmymsgsituval() { + return this.dmymsgsituval; + } + + public void setDmymsgsituval(Integer dmymsgsituval) { + this.dmymsgsituval = dmymsgsituval; + } + + public Integer getHostdpstruval() { + return this.hostdpstruval; + } + + public void setHostdpstruval(Integer hostdpstruval) { + this.hostdpstruval = hostdpstruval; + } + + public Integer getHostsndmsgruval() { + return this.hostsndmsgruval; + } + + public void setHostsndmsgruval(Integer hostsndmsgruval) { + this.hostsndmsgruval = hostsndmsgruval; + } + + public String getLoglvelname() { + return this.loglvelname; + } + + public void setLoglvelname(String loglvelname) { + this.loglvelname = loglvelname; + } + + public String getLoguseyn() { + return this.loguseyn; + } + + public void setLoguseyn(String loguseyn) { + this.loguseyn = loguseyn; + } + + public String getLugroupamndhms() { + return this.lugroupamndhms; + } + + public void setLugroupamndhms(String lugroupamndhms) { + this.lugroupamndhms = lugroupamndhms; + } + + public String getLugroupregihms() { + return this.lugroupregihms; + } + + public void setLugroupregihms(String lugroupregihms) { + this.lugroupregihms = lugroupregihms; + } + + public Integer getMaxlogfileval() { + return this.maxlogfileval; + } + + public void setMaxlogfileval(Integer maxlogfileval) { + this.maxlogfileval = maxlogfileval; + } + + public BigDecimal getSoftlinkportno() { + return this.softlinkportno; + } + + public void setSoftlinkportno(BigDecimal softlinkportno) { + this.softlinkportno = softlinkportno; + } + + public String getSoftlinksevrname() { + return this.softlinksevrname; + } + + public void setSoftlinksevrname(String softlinksevrname) { + this.softlinksevrname = softlinksevrname; + } + + public Integer getSvctoutval() { + return this.svctoutval; + } + + public void setSvctoutval(Integer svctoutval) { + this.svctoutval = svctoutval; + } + + public String getUapplidname() { + return this.uapplidname; + } + + public void setUapplidname(String uapplidname) { + this.uapplidname = uapplidname; + } + + public Integer getWcasesscnt() { + return this.wcasesscnt; + } + + public void setWcasesscnt(Integer wcasesscnt) { + this.wcasesscnt = wcasesscnt; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad05PK.java b/src/model/Tseaiad05PK.java new file mode 100644 index 0000000..c1ee2f7 --- /dev/null +++ b/src/model/Tseaiad05PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad05 database table. + * + */ +@Embeddable +public class Tseaiad05PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=20) + private String adptrgstatsevrname; + + @Column(unique=true, nullable=false, length=50) + private String adptrgroupname; + + @Column(unique=true, nullable=false, length=55) + private String lugroupname; + + public Tseaiad05PK() { + } + public String getAdptrgstatsevrname() { + return this.adptrgstatsevrname; + } + public void setAdptrgstatsevrname(String adptrgstatsevrname) { + this.adptrgstatsevrname = adptrgstatsevrname; + } + public String getAdptrgroupname() { + return this.adptrgroupname; + } + public void setAdptrgroupname(String adptrgroupname) { + this.adptrgroupname = adptrgroupname; + } + public String getLugroupname() { + return this.lugroupname; + } + public void setLugroupname(String lugroupname) { + this.lugroupname = lugroupname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad05PK)) { + return false; + } + Tseaiad05PK castOther = (Tseaiad05PK)other; + return + this.adptrgstatsevrname.equals(castOther.adptrgstatsevrname) + && this.adptrgroupname.equals(castOther.adptrgroupname) + && this.lugroupname.equals(castOther.lugroupname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrgstatsevrname.hashCode(); + hash = hash * prime + this.adptrgroupname.hashCode(); + hash = hash * prime + this.lugroupname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad06.java b/src/model/Tseaiad06.java new file mode 100644 index 0000000..62c84c9 --- /dev/null +++ b/src/model/Tseaiad06.java @@ -0,0 +1,129 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad06 database table. + * + */ +@Entity +@Table(name="tseaiad06") +@NamedQuery(name="Tseaiad06.findAll", query="SELECT t FROM Tseaiad06 t") +public class Tseaiad06 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad06PK id; + + @Column(length=1) + private String bkupluyn; + + @Column(length=10) + private String loglvelname; + + @Column(length=1) + private String loguseyn; + + @Column(length=16) + private String luamndhms; + + @Column(length=16) + private String luinforegihms; + + private Integer maxlogfileval; + + @Column(length=1) + private String rmtluyn; + + @Column(length=1) + private String sndrcvdstcd; + + @Column(length=10) + private String uapplidname; + + public Tseaiad06() { + } + + public Tseaiad06PK getId() { + return this.id; + } + + public void setId(Tseaiad06PK id) { + this.id = id; + } + + public String getBkupluyn() { + return this.bkupluyn; + } + + public void setBkupluyn(String bkupluyn) { + this.bkupluyn = bkupluyn; + } + + public String getLoglvelname() { + return this.loglvelname; + } + + public void setLoglvelname(String loglvelname) { + this.loglvelname = loglvelname; + } + + public String getLoguseyn() { + return this.loguseyn; + } + + public void setLoguseyn(String loguseyn) { + this.loguseyn = loguseyn; + } + + public String getLuamndhms() { + return this.luamndhms; + } + + public void setLuamndhms(String luamndhms) { + this.luamndhms = luamndhms; + } + + public String getLuinforegihms() { + return this.luinforegihms; + } + + public void setLuinforegihms(String luinforegihms) { + this.luinforegihms = luinforegihms; + } + + public Integer getMaxlogfileval() { + return this.maxlogfileval; + } + + public void setMaxlogfileval(Integer maxlogfileval) { + this.maxlogfileval = maxlogfileval; + } + + public String getRmtluyn() { + return this.rmtluyn; + } + + public void setRmtluyn(String rmtluyn) { + this.rmtluyn = rmtluyn; + } + + public String getSndrcvdstcd() { + return this.sndrcvdstcd; + } + + public void setSndrcvdstcd(String sndrcvdstcd) { + this.sndrcvdstcd = sndrcvdstcd; + } + + public String getUapplidname() { + return this.uapplidname; + } + + public void setUapplidname(String uapplidname) { + this.uapplidname = uapplidname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad06PK.java b/src/model/Tseaiad06PK.java new file mode 100644 index 0000000..c937d27 --- /dev/null +++ b/src/model/Tseaiad06PK.java @@ -0,0 +1,90 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad06 database table. + * + */ +@Embeddable +public class Tseaiad06PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=20) + private String adptrgstatsevrname; + + @Column(unique=true, nullable=false, length=50) + private String adptrgroupname; + + @Column(unique=true, nullable=false, length=55) + private String lugroupname; + + @Column(unique=true, nullable=false, length=8) + private String puname; + + @Column(unique=true, nullable=false, length=8) + private String luname; + + public Tseaiad06PK() { + } + public String getAdptrgstatsevrname() { + return this.adptrgstatsevrname; + } + public void setAdptrgstatsevrname(String adptrgstatsevrname) { + this.adptrgstatsevrname = adptrgstatsevrname; + } + public String getAdptrgroupname() { + return this.adptrgroupname; + } + public void setAdptrgroupname(String adptrgroupname) { + this.adptrgroupname = adptrgroupname; + } + public String getLugroupname() { + return this.lugroupname; + } + public void setLugroupname(String lugroupname) { + this.lugroupname = lugroupname; + } + public String getPuname() { + return this.puname; + } + public void setPuname(String puname) { + this.puname = puname; + } + public String getLuname() { + return this.luname; + } + public void setLuname(String luname) { + this.luname = luname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad06PK)) { + return false; + } + Tseaiad06PK castOther = (Tseaiad06PK)other; + return + this.adptrgstatsevrname.equals(castOther.adptrgstatsevrname) + && this.adptrgroupname.equals(castOther.adptrgroupname) + && this.lugroupname.equals(castOther.lugroupname) + && this.puname.equals(castOther.puname) + && this.luname.equals(castOther.luname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrgstatsevrname.hashCode(); + hash = hash * prime + this.adptrgroupname.hashCode(); + hash = hash * prime + this.lugroupname.hashCode(); + hash = hash * prime + this.puname.hashCode(); + hash = hash * prime + this.luname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad07.java b/src/model/Tseaiad07.java new file mode 100644 index 0000000..3d36fb6 --- /dev/null +++ b/src/model/Tseaiad07.java @@ -0,0 +1,64 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad07 database table. + * + */ +@Entity +@Table(name="tseaiad07") +@NamedQuery(name="Tseaiad07.findAll", query="SELECT t FROM Tseaiad07 t") +public class Tseaiad07 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad07PK id; + + @Column(length=1) + private String datadstcd; + + @Column(length=12) + private String eaierrctnt; + + @Column(length=16) + private String frtimmsgdpsthms; + + public Tseaiad07() { + } + + public Tseaiad07PK getId() { + return this.id; + } + + public void setId(Tseaiad07PK id) { + this.id = id; + } + + public String getDatadstcd() { + return this.datadstcd; + } + + public void setDatadstcd(String datadstcd) { + this.datadstcd = datadstcd; + } + + public String getEaierrctnt() { + return this.eaierrctnt; + } + + public void setEaierrctnt(String eaierrctnt) { + this.eaierrctnt = eaierrctnt; + } + + public String getFrtimmsgdpsthms() { + return this.frtimmsgdpsthms; + } + + public void setFrtimmsgdpsthms(String frtimmsgdpsthms) { + this.frtimmsgdpsthms = frtimmsgdpsthms; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad07PK.java b/src/model/Tseaiad07PK.java new file mode 100644 index 0000000..f86a995 --- /dev/null +++ b/src/model/Tseaiad07PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad07 database table. + * + */ +@Embeddable +public class Tseaiad07PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=16) + private String msgdpsthms; + + @Column(unique=true, nullable=false, length=20) + private String adptrgstatsevrname; + + @Column(unique=true, nullable=false, length=50) + private String adptrgroupname; + + @Column(unique=true, nullable=false, length=55) + private String lugroupname; + + @Column(unique=true, nullable=false, length=8) + private String luname; + + @Column(unique=true, nullable=false, length=3) + private String logprcssserno; + + @Column(unique=true, nullable=false, length=41) + private String eaisvcserno; + + public Tseaiad07PK() { + } + public String getMsgdpsthms() { + return this.msgdpsthms; + } + public void setMsgdpsthms(String msgdpsthms) { + this.msgdpsthms = msgdpsthms; + } + public String getAdptrgstatsevrname() { + return this.adptrgstatsevrname; + } + public void setAdptrgstatsevrname(String adptrgstatsevrname) { + this.adptrgstatsevrname = adptrgstatsevrname; + } + public String getAdptrgroupname() { + return this.adptrgroupname; + } + public void setAdptrgroupname(String adptrgroupname) { + this.adptrgroupname = adptrgroupname; + } + public String getLugroupname() { + return this.lugroupname; + } + public void setLugroupname(String lugroupname) { + this.lugroupname = lugroupname; + } + public String getLuname() { + return this.luname; + } + public void setLuname(String luname) { + this.luname = luname; + } + public String getLogprcssserno() { + return this.logprcssserno; + } + public void setLogprcssserno(String logprcssserno) { + this.logprcssserno = logprcssserno; + } + public String getEaisvcserno() { + return this.eaisvcserno; + } + public void setEaisvcserno(String eaisvcserno) { + this.eaisvcserno = eaisvcserno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad07PK)) { + return false; + } + Tseaiad07PK castOther = (Tseaiad07PK)other; + return + this.msgdpsthms.equals(castOther.msgdpsthms) + && this.adptrgstatsevrname.equals(castOther.adptrgstatsevrname) + && this.adptrgroupname.equals(castOther.adptrgroupname) + && this.lugroupname.equals(castOther.lugroupname) + && this.luname.equals(castOther.luname) + && this.logprcssserno.equals(castOther.logprcssserno) + && this.eaisvcserno.equals(castOther.eaisvcserno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.msgdpsthms.hashCode(); + hash = hash * prime + this.adptrgstatsevrname.hashCode(); + hash = hash * prime + this.adptrgroupname.hashCode(); + hash = hash * prime + this.lugroupname.hashCode(); + hash = hash * prime + this.luname.hashCode(); + hash = hash * prime + this.logprcssserno.hashCode(); + hash = hash * prime + this.eaisvcserno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad13.java b/src/model/Tseaiad13.java new file mode 100644 index 0000000..79d8ba5 --- /dev/null +++ b/src/model/Tseaiad13.java @@ -0,0 +1,54 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad13 database table. + * + */ +@Entity +@Table(name="tseaiad13") +@NamedQuery(name="Tseaiad13.findAll", query="SELECT t FROM Tseaiad13 t") +public class Tseaiad13 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=20) + private String snaadptrsevrname; + + @Column(length=100) + private String snaadptrsevrctnt; + + @Column(length=20) + private String snaadptrsevripname; + + public Tseaiad13() { + } + + public String getSnaadptrsevrname() { + return this.snaadptrsevrname; + } + + public void setSnaadptrsevrname(String snaadptrsevrname) { + this.snaadptrsevrname = snaadptrsevrname; + } + + public String getSnaadptrsevrctnt() { + return this.snaadptrsevrctnt; + } + + public void setSnaadptrsevrctnt(String snaadptrsevrctnt) { + this.snaadptrsevrctnt = snaadptrsevrctnt; + } + + public String getSnaadptrsevripname() { + return this.snaadptrsevripname; + } + + public void setSnaadptrsevripname(String snaadptrsevripname) { + this.snaadptrsevripname = snaadptrsevripname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad14.java b/src/model/Tseaiad14.java new file mode 100644 index 0000000..b630f5a --- /dev/null +++ b/src/model/Tseaiad14.java @@ -0,0 +1,43 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad14 database table. + * + */ +@Entity +@Table(name="tseaiad14") +@NamedQuery(name="Tseaiad14.findAll", query="SELECT t FROM Tseaiad14 t") +public class Tseaiad14 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=50) + private String prptygroupname; + + @Column(length=200) + private String prptygroupdesc; + + public Tseaiad14() { + } + + public String getPrptygroupname() { + return this.prptygroupname; + } + + public void setPrptygroupname(String prptygroupname) { + this.prptygroupname = prptygroupname; + } + + public String getPrptygroupdesc() { + return this.prptygroupdesc; + } + + public void setPrptygroupdesc(String prptygroupdesc) { + this.prptygroupdesc = prptygroupdesc; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad15.java b/src/model/Tseaiad15.java new file mode 100644 index 0000000..8ac6caa --- /dev/null +++ b/src/model/Tseaiad15.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad15 database table. + * + */ +@Entity +@Table(name="tseaiad15") +@NamedQuery(name="Tseaiad15.findAll", query="SELECT t FROM Tseaiad15 t") +public class Tseaiad15 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad15PK id; + + @Column(length=2000) + private String prpty2val; + + public Tseaiad15() { + } + + public Tseaiad15PK getId() { + return this.id; + } + + public void setId(Tseaiad15PK id) { + this.id = id; + } + + public String getPrpty2val() { + return this.prpty2val; + } + + public void setPrpty2val(String prpty2val) { + this.prpty2val = prpty2val; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad15PK.java b/src/model/Tseaiad15PK.java new file mode 100644 index 0000000..43abc42 --- /dev/null +++ b/src/model/Tseaiad15PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad15 database table. + * + */ +@Embeddable +public class Tseaiad15PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String prptygroupname; + + @Column(unique=true, nullable=false, length=100) + private String prptyname; + + public Tseaiad15PK() { + } + public String getPrptygroupname() { + return this.prptygroupname; + } + public void setPrptygroupname(String prptygroupname) { + this.prptygroupname = prptygroupname; + } + public String getPrptyname() { + return this.prptyname; + } + public void setPrptyname(String prptyname) { + this.prptyname = prptyname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad15PK)) { + return false; + } + Tseaiad15PK castOther = (Tseaiad15PK)other; + return + this.prptygroupname.equals(castOther.prptygroupname) + && this.prptyname.equals(castOther.prptyname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.prptygroupname.hashCode(); + hash = hash * prime + this.prptyname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiad17.java b/src/model/Tseaiad17.java new file mode 100644 index 0000000..fd328db --- /dev/null +++ b/src/model/Tseaiad17.java @@ -0,0 +1,87 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad17 database table. + * + */ +@Entity +@Table(name="tseaiad17") +@NamedQuery(name="Tseaiad17.findAll", query="SELECT t FROM Tseaiad17 t") +public class Tseaiad17 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(length=1) + private String adptrmngdstcd; + + @Column(length=50) + private String adptrstarthms; + + @Column(length=50) + private String adptrstophms; + + @Column(length=17) + private String lastamndyms; + + @Column(length=8) + private String lastamnuserid; + + public Tseaiad17() { + } + + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public String getAdptrmngdstcd() { + return this.adptrmngdstcd; + } + + public void setAdptrmngdstcd(String adptrmngdstcd) { + this.adptrmngdstcd = adptrmngdstcd; + } + + public String getAdptrstarthms() { + return this.adptrstarthms; + } + + public void setAdptrstarthms(String adptrstarthms) { + this.adptrstarthms = adptrstarthms; + } + + public String getAdptrstophms() { + return this.adptrstophms; + } + + public void setAdptrstophms(String adptrstophms) { + this.adptrstophms = adptrstophms; + } + + public String getLastamndyms() { + return this.lastamndyms; + } + + public void setLastamndyms(String lastamndyms) { + this.lastamndyms = lastamndyms; + } + + public String getLastamnuserid() { + return this.lastamnuserid; + } + + public void setLastamnuserid(String lastamnuserid) { + this.lastamnuserid = lastamnuserid; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad18.java b/src/model/Tseaiad18.java new file mode 100644 index 0000000..1bc20d6 --- /dev/null +++ b/src/model/Tseaiad18.java @@ -0,0 +1,108 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiad18 database table. + * + */ +@Entity +@Table(name="tseaiad18") +@NamedQuery(name="Tseaiad18.findAll", query="SELECT t FROM Tseaiad18 t") +public class Tseaiad18 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiad18PK id; + + @Column(length=500) + private String adptrevterrctnt; + + @Column(length=20) + private String adptrevtstatus; + + @Column(length=1) + private String adptrmngdstcd; + + @Column(length=50) + private String adptrstarthms; + + @Column(length=10) + private String adptrstartstop; + + @Column(length=50) + private String adptrstophms; + + @Column(length=8) + private String lastamnuserid; + + public Tseaiad18() { + } + + public Tseaiad18PK getId() { + return this.id; + } + + public void setId(Tseaiad18PK id) { + this.id = id; + } + + public String getAdptrevterrctnt() { + return this.adptrevterrctnt; + } + + public void setAdptrevterrctnt(String adptrevterrctnt) { + this.adptrevterrctnt = adptrevterrctnt; + } + + public String getAdptrevtstatus() { + return this.adptrevtstatus; + } + + public void setAdptrevtstatus(String adptrevtstatus) { + this.adptrevtstatus = adptrevtstatus; + } + + public String getAdptrmngdstcd() { + return this.adptrmngdstcd; + } + + public void setAdptrmngdstcd(String adptrmngdstcd) { + this.adptrmngdstcd = adptrmngdstcd; + } + + public String getAdptrstarthms() { + return this.adptrstarthms; + } + + public void setAdptrstarthms(String adptrstarthms) { + this.adptrstarthms = adptrstarthms; + } + + public String getAdptrstartstop() { + return this.adptrstartstop; + } + + public void setAdptrstartstop(String adptrstartstop) { + this.adptrstartstop = adptrstartstop; + } + + public String getAdptrstophms() { + return this.adptrstophms; + } + + public void setAdptrstophms(String adptrstophms) { + this.adptrstophms = adptrstophms; + } + + public String getLastamnuserid() { + return this.lastamnuserid; + } + + public void setLastamnuserid(String lastamnuserid) { + this.lastamnuserid = lastamnuserid; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiad18PK.java b/src/model/Tseaiad18PK.java new file mode 100644 index 0000000..5d97773 --- /dev/null +++ b/src/model/Tseaiad18PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiad18 database table. + * + */ +@Embeddable +public class Tseaiad18PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=17) + private String adptreventhms; + + public Tseaiad18PK() { + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getAdptreventhms() { + return this.adptreventhms; + } + public void setAdptreventhms(String adptreventhms) { + this.adptreventhms = adptreventhms; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiad18PK)) { + return false; + } + Tseaiad18PK castOther = (Tseaiad18PK)other; + return + this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.adptreventhms.equals(castOther.adptreventhms); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.adptreventhms.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiau01.java b/src/model/Tseaiau01.java new file mode 100644 index 0000000..1bee370 --- /dev/null +++ b/src/model/Tseaiau01.java @@ -0,0 +1,186 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiau01 database table. + * + */ +@Entity +@Table(name="tseaiau01") +@NamedQuery(name="Tseaiau01.findAll", query="SELECT t FROM Tseaiau01 t") +public class Tseaiau01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=256) + private String clientid; + + @Column(length=11) + private String accesstokenvalidityseconds; + + @Column(length=256) + private String allowedips; + + @Column(length=256) + private String authorities; + + @Column(length=256) + private String autoapprove; + + @Column(length=40) + private String clientname; + + @Column(length=512) + private String clientsecret; + + @Column(length=256) + private String granttypes; + + @Column(length=8) + private String modifiedby; + + @Column(length=14) + private String modifiedon; + + @Column(length=256) + private String redirecturi; + + @Column(length=11) + private String refreshtokenvalidityseconds; + + @Column(length=4000) + private String resourceids; + + @Column(length=1024) + private String scope; + + @Column(length=4000) + private String securitykey; + + public Tseaiau01() { + } + + public String getClientid() { + return this.clientid; + } + + public void setClientid(String clientid) { + this.clientid = clientid; + } + + public String getAccesstokenvalidityseconds() { + return this.accesstokenvalidityseconds; + } + + public void setAccesstokenvalidityseconds(String accesstokenvalidityseconds) { + this.accesstokenvalidityseconds = accesstokenvalidityseconds; + } + + public String getAllowedips() { + return this.allowedips; + } + + public void setAllowedips(String allowedips) { + this.allowedips = allowedips; + } + + public String getAuthorities() { + return this.authorities; + } + + public void setAuthorities(String authorities) { + this.authorities = authorities; + } + + public String getAutoapprove() { + return this.autoapprove; + } + + public void setAutoapprove(String autoapprove) { + this.autoapprove = autoapprove; + } + + public String getClientname() { + return this.clientname; + } + + public void setClientname(String clientname) { + this.clientname = clientname; + } + + public String getClientsecret() { + return this.clientsecret; + } + + public void setClientsecret(String clientsecret) { + this.clientsecret = clientsecret; + } + + public String getGranttypes() { + return this.granttypes; + } + + public void setGranttypes(String granttypes) { + this.granttypes = granttypes; + } + + public String getModifiedby() { + return this.modifiedby; + } + + public void setModifiedby(String modifiedby) { + this.modifiedby = modifiedby; + } + + public String getModifiedon() { + return this.modifiedon; + } + + public void setModifiedon(String modifiedon) { + this.modifiedon = modifiedon; + } + + public String getRedirecturi() { + return this.redirecturi; + } + + public void setRedirecturi(String redirecturi) { + this.redirecturi = redirecturi; + } + + public String getRefreshtokenvalidityseconds() { + return this.refreshtokenvalidityseconds; + } + + public void setRefreshtokenvalidityseconds(String refreshtokenvalidityseconds) { + this.refreshtokenvalidityseconds = refreshtokenvalidityseconds; + } + + public String getResourceids() { + return this.resourceids; + } + + public void setResourceids(String resourceids) { + this.resourceids = resourceids; + } + + public String getScope() { + return this.scope; + } + + public void setScope(String scope) { + this.scope = scope; + } + + public String getSecuritykey() { + return this.securitykey; + } + + public void setSecuritykey(String securitykey) { + this.securitykey = securitykey; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiau02.java b/src/model/Tseaiau02.java new file mode 100644 index 0000000..7385723 --- /dev/null +++ b/src/model/Tseaiau02.java @@ -0,0 +1,142 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiau02 database table. + * + */ +@Entity +@Table(name="tseaiau02") +@NamedQuery(name="Tseaiau02.findAll", query="SELECT t FROM Tseaiau02 t") +public class Tseaiau02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=100) + private String userid; + + @Column(length=256) + private String authorities; + + @Column(length=100) + private String email; + + @Column(length=50) + private String mobile; + + @Column(length=8) + private String modifiedby; + + @Column(length=14) + private String modifiedon; + + @Column(length=50) + private String name; + + @Column(length=256) + private String organizationid; + + @Column(length=256) + private String password; + + @Column(length=20) + private String status; + + @Column(length=2) + private String usertype; + + public Tseaiau02() { + } + + public String getUserid() { + return this.userid; + } + + public void setUserid(String userid) { + this.userid = userid; + } + + public String getAuthorities() { + return this.authorities; + } + + public void setAuthorities(String authorities) { + this.authorities = authorities; + } + + public String getEmail() { + return this.email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getMobile() { + return this.mobile; + } + + public void setMobile(String mobile) { + this.mobile = mobile; + } + + public String getModifiedby() { + return this.modifiedby; + } + + public void setModifiedby(String modifiedby) { + this.modifiedby = modifiedby; + } + + public String getModifiedon() { + return this.modifiedon; + } + + public void setModifiedon(String modifiedon) { + this.modifiedon = modifiedon; + } + + public String getName() { + return this.name; + } + + public void setName(String name) { + this.name = name; + } + + public String getOrganizationid() { + return this.organizationid; + } + + public void setOrganizationid(String organizationid) { + this.organizationid = organizationid; + } + + public String getPassword() { + return this.password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getStatus() { + return this.status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getUsertype() { + return this.usertype; + } + + public void setUsertype(String usertype) { + this.usertype = usertype; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiau03.java b/src/model/Tseaiau03.java new file mode 100644 index 0000000..37c001b --- /dev/null +++ b/src/model/Tseaiau03.java @@ -0,0 +1,65 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiau03 database table. + * + */ +@Entity +@Table(name="tseaiau03") +@NamedQuery(name="Tseaiau03.findAll", query="SELECT t FROM Tseaiau03 t") +public class Tseaiau03 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=128) + private String scopeid; + + @Column(length=50) + private String classification; + + @Column(length=512) + private String description; + + @Column(length=128) + private String scopename; + + public Tseaiau03() { + } + + public String getScopeid() { + return this.scopeid; + } + + public void setScopeid(String scopeid) { + this.scopeid = scopeid; + } + + public String getClassification() { + return this.classification; + } + + public void setClassification(String classification) { + this.classification = classification; + } + + public String getDescription() { + return this.description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getScopename() { + return this.scopename; + } + + public void setScopename(String scopename) { + this.scopename = scopename; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiau04.java b/src/model/Tseaiau04.java new file mode 100644 index 0000000..9d6685a --- /dev/null +++ b/src/model/Tseaiau04.java @@ -0,0 +1,31 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiau04 database table. + * + */ +@Entity +@Table(name="tseaiau04") +@NamedQuery(name="Tseaiau04.findAll", query="SELECT t FROM Tseaiau04 t") +public class Tseaiau04 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiau04PK id; + + public Tseaiau04() { + } + + public Tseaiau04PK getId() { + return this.id; + } + + public void setId(Tseaiau04PK id) { + this.id = id; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiau04PK.java b/src/model/Tseaiau04PK.java new file mode 100644 index 0000000..6d4ae21 --- /dev/null +++ b/src/model/Tseaiau04PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiau04 database table. + * + */ +@Embeddable +public class Tseaiau04PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=200) + private String bzwksvckeyname; + + @Column(unique=true, nullable=false, length=128) + private String scopeid; + + public Tseaiau04PK() { + } + public String getBzwksvckeyname() { + return this.bzwksvckeyname; + } + public void setBzwksvckeyname(String bzwksvckeyname) { + this.bzwksvckeyname = bzwksvckeyname; + } + public String getScopeid() { + return this.scopeid; + } + public void setScopeid(String scopeid) { + this.scopeid = scopeid; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiau04PK)) { + return false; + } + Tseaiau04PK castOther = (Tseaiau04PK)other; + return + this.bzwksvckeyname.equals(castOther.bzwksvckeyname) + && this.scopeid.equals(castOther.scopeid); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.bzwksvckeyname.hashCode(); + hash = hash * prime + this.scopeid.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiau05.java b/src/model/Tseaiau05.java new file mode 100644 index 0000000..20d592a --- /dev/null +++ b/src/model/Tseaiau05.java @@ -0,0 +1,108 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.sql.Timestamp; + + +/** + * The persistent class for the tseaiau05 database table. + * + */ +@Entity +@Table(name="tseaiau05") +@NamedQuery(name="Tseaiau05.findAll", query="SELECT t FROM Tseaiau05 t") +public class Tseaiau05 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(name="authentication_id", unique=true, nullable=false, length=255) + private String authenticationId; + + private byte[] authentication; + + @Column(name="client_id", length=255) + private String clientId; + + @Column(name="create_time") + private Timestamp createTime; + + @Column(name="refresh_token", length=255) + private String refreshToken; + + private byte[] token; + + @Column(name="token_id", length=255) + private String tokenId; + + @Column(name="user_name", length=255) + private String userName; + + public Tseaiau05() { + } + + public String getAuthenticationId() { + return this.authenticationId; + } + + public void setAuthenticationId(String authenticationId) { + this.authenticationId = authenticationId; + } + + public byte[] getAuthentication() { + return this.authentication; + } + + public void setAuthentication(byte[] authentication) { + this.authentication = authentication; + } + + public String getClientId() { + return this.clientId; + } + + public void setClientId(String clientId) { + this.clientId = clientId; + } + + public Timestamp getCreateTime() { + return this.createTime; + } + + public void setCreateTime(Timestamp createTime) { + this.createTime = createTime; + } + + public String getRefreshToken() { + return this.refreshToken; + } + + public void setRefreshToken(String refreshToken) { + this.refreshToken = refreshToken; + } + + public byte[] getToken() { + return this.token; + } + + public void setToken(byte[] token) { + this.token = token; + } + + public String getTokenId() { + return this.tokenId; + } + + public void setTokenId(String tokenId) { + this.tokenId = tokenId; + } + + public String getUserName() { + return this.userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiau06.java b/src/model/Tseaiau06.java new file mode 100644 index 0000000..32db0ba --- /dev/null +++ b/src/model/Tseaiau06.java @@ -0,0 +1,63 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.sql.Timestamp; + + +/** + * The persistent class for the tseaiau06 database table. + * + */ +@Entity +@Table(name="tseaiau06") +@NamedQuery(name="Tseaiau06.findAll", query="SELECT t FROM Tseaiau06 t") +public class Tseaiau06 implements Serializable { + private static final long serialVersionUID = 1L; + + private byte[] authentication; + + @Column(name="create_time") + private Timestamp createTime; + + private byte[] token; + + @Column(name="token_id", length=255) + private String tokenId; + + public Tseaiau06() { + } + + public byte[] getAuthentication() { + return this.authentication; + } + + public void setAuthentication(byte[] authentication) { + this.authentication = authentication; + } + + public Timestamp getCreateTime() { + return this.createTime; + } + + public void setCreateTime(Timestamp createTime) { + this.createTime = createTime; + } + + public byte[] getToken() { + return this.token; + } + + public void setToken(byte[] token) { + this.token = token; + } + + public String getTokenId() { + return this.tokenId; + } + + public void setTokenId(String tokenId) { + this.tokenId = tokenId; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicl01.java b/src/model/Tseaicl01.java new file mode 100644 index 0000000..921c0f8 --- /dev/null +++ b/src/model/Tseaicl01.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicl01 database table. + * + */ +@Entity +@Table(name="tseaicl01") +@NamedQuery(name="Tseaicl01.findAll", query="SELECT t FROM Tseaicl01 t") +public class Tseaicl01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaicl01PK id; + + @Column(length=50) + private String modfiafeaisevrname; + + @Column(length=50) + private String modfibfeaisevrname; + + public Tseaicl01() { + } + + public Tseaicl01PK getId() { + return this.id; + } + + public void setId(Tseaicl01PK id) { + this.id = id; + } + + public String getModfiafeaisevrname() { + return this.modfiafeaisevrname; + } + + public void setModfiafeaisevrname(String modfiafeaisevrname) { + this.modfiafeaisevrname = modfiafeaisevrname; + } + + public String getModfibfeaisevrname() { + return this.modfibfeaisevrname; + } + + public void setModfibfeaisevrname(String modfibfeaisevrname) { + this.modfibfeaisevrname = modfibfeaisevrname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicl01PK.java b/src/model/Tseaicl01PK.java new file mode 100644 index 0000000..87077fd --- /dev/null +++ b/src/model/Tseaicl01PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaicl01 database table. + * + */ +@Embeddable +public class Tseaicl01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=8) + private String pafiarinfoempid; + + @Column(unique=true, nullable=false, length=14) + private String lastamndyms; + + public Tseaicl01PK() { + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getPafiarinfoempid() { + return this.pafiarinfoempid; + } + public void setPafiarinfoempid(String pafiarinfoempid) { + this.pafiarinfoempid = pafiarinfoempid; + } + public String getLastamndyms() { + return this.lastamndyms; + } + public void setLastamndyms(String lastamndyms) { + this.lastamndyms = lastamndyms; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaicl01PK)) { + return false; + } + Tseaicl01PK castOther = (Tseaicl01PK)other; + return + this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.pafiarinfoempid.equals(castOther.pafiarinfoempid) + && this.lastamndyms.equals(castOther.lastamndyms); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.pafiarinfoempid.hashCode(); + hash = hash * prime + this.lastamndyms.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaicm01.java b/src/model/Tseaicm01.java new file mode 100644 index 0000000..6676114 --- /dev/null +++ b/src/model/Tseaicm01.java @@ -0,0 +1,154 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.sql.Timestamp; + + +/** + * The persistent class for the tseaicm01 database table. + * + */ +@Entity +@Table(name="tseaicm01") +@NamedQuery(name="Tseaicm01.findAll", query="SELECT t FROM Tseaicm01 t") +public class Tseaicm01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(length=4) + private String applcd; + + @Column(length=300) + private String bzwkdsticdesc; + + @Column(length=100) + private String bzwkdsticname; + + @Column(length=8) + private String discarddate; + + @Column(length=3) + private String groupcocd; + + @Column(length=5) + private String inputdstcd; + + @Column(name="last_mod_dtm") + private Timestamp lastModDtm; + + @Column(length=80) + private String rsempname; + + @Column(length=50) + private String rspblpsncntpctnt; + + @Column(length=100) + private String trackasiskey1name; + + @Column(length=100) + private String trackasiskey2name; + + public Tseaicm01() { + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public String getApplcd() { + return this.applcd; + } + + public void setApplcd(String applcd) { + this.applcd = applcd; + } + + public String getBzwkdsticdesc() { + return this.bzwkdsticdesc; + } + + public void setBzwkdsticdesc(String bzwkdsticdesc) { + this.bzwkdsticdesc = bzwkdsticdesc; + } + + public String getBzwkdsticname() { + return this.bzwkdsticname; + } + + public void setBzwkdsticname(String bzwkdsticname) { + this.bzwkdsticname = bzwkdsticname; + } + + public String getDiscarddate() { + return this.discarddate; + } + + public void setDiscarddate(String discarddate) { + this.discarddate = discarddate; + } + + public String getGroupcocd() { + return this.groupcocd; + } + + public void setGroupcocd(String groupcocd) { + this.groupcocd = groupcocd; + } + + public String getInputdstcd() { + return this.inputdstcd; + } + + public void setInputdstcd(String inputdstcd) { + this.inputdstcd = inputdstcd; + } + + public Timestamp getLastModDtm() { + return this.lastModDtm; + } + + public void setLastModDtm(Timestamp lastModDtm) { + this.lastModDtm = lastModDtm; + } + + public String getRsempname() { + return this.rsempname; + } + + public void setRsempname(String rsempname) { + this.rsempname = rsempname; + } + + public String getRspblpsncntpctnt() { + return this.rspblpsncntpctnt; + } + + public void setRspblpsncntpctnt(String rspblpsncntpctnt) { + this.rspblpsncntpctnt = rspblpsncntpctnt; + } + + public String getTrackasiskey1name() { + return this.trackasiskey1name; + } + + public void setTrackasiskey1name(String trackasiskey1name) { + this.trackasiskey1name = trackasiskey1name; + } + + public String getTrackasiskey2name() { + return this.trackasiskey2name; + } + + public void setTrackasiskey2name(String trackasiskey2name) { + this.trackasiskey2name = trackasiskey2name; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm02.java b/src/model/Tseaicm02.java new file mode 100644 index 0000000..6ad055f --- /dev/null +++ b/src/model/Tseaicm02.java @@ -0,0 +1,43 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm02 database table. + * + */ +@Entity +@Table(name="tseaicm02") +@NamedQuery(name="Tseaicm02.findAll", query="SELECT t FROM Tseaicm02 t") +public class Tseaicm02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=50) + private String prptygroupname; + + @Column(length=200) + private String prptygroupdesc; + + public Tseaicm02() { + } + + public String getPrptygroupname() { + return this.prptygroupname; + } + + public void setPrptygroupname(String prptygroupname) { + this.prptygroupname = prptygroupname; + } + + public String getPrptygroupdesc() { + return this.prptygroupdesc; + } + + public void setPrptygroupdesc(String prptygroupdesc) { + this.prptygroupdesc = prptygroupdesc; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm03.java b/src/model/Tseaicm03.java new file mode 100644 index 0000000..b97b2ee --- /dev/null +++ b/src/model/Tseaicm03.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm03 database table. + * + */ +@Entity +@Table(name="tseaicm03") +@NamedQuery(name="Tseaicm03.findAll", query="SELECT t FROM Tseaicm03 t") +public class Tseaicm03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaicm03PK id; + + @Column(length=1000) + private String prpty2val; + + public Tseaicm03() { + } + + public Tseaicm03PK getId() { + return this.id; + } + + public void setId(Tseaicm03PK id) { + this.id = id; + } + + public String getPrpty2val() { + return this.prpty2val; + } + + public void setPrpty2val(String prpty2val) { + this.prpty2val = prpty2val; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm03PK.java b/src/model/Tseaicm03PK.java new file mode 100644 index 0000000..eee0c54 --- /dev/null +++ b/src/model/Tseaicm03PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaicm03 database table. + * + */ +@Embeddable +public class Tseaicm03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String prptygroupname; + + @Column(unique=true, nullable=false, length=100) + private String prptyname; + + public Tseaicm03PK() { + } + public String getPrptygroupname() { + return this.prptygroupname; + } + public void setPrptygroupname(String prptygroupname) { + this.prptygroupname = prptygroupname; + } + public String getPrptyname() { + return this.prptyname; + } + public void setPrptyname(String prptyname) { + this.prptyname = prptyname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaicm03PK)) { + return false; + } + Tseaicm03PK castOther = (Tseaicm03PK)other; + return + this.prptygroupname.equals(castOther.prptygroupname) + && this.prptyname.equals(castOther.prptyname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.prptygroupname.hashCode(); + hash = hash * prime + this.prptyname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaicm04.java b/src/model/Tseaicm04.java new file mode 100644 index 0000000..ef360e6 --- /dev/null +++ b/src/model/Tseaicm04.java @@ -0,0 +1,131 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm04 database table. + * + */ +@Entity +@Table(name="tseaicm04") +@NamedQuery(name="Tseaicm04.findAll", query="SELECT t FROM Tseaicm04 t") +public class Tseaicm04 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=300) + private String eaisvcserno; + + @Column(length=50) + private String adptrbzwkgroupname; + + @Column(length=2147483647) + private String bzwkdatactnt; + + @Column(length=200) + private String bzwksvckeyname; + + @Column(length=12) + private String eaierrcd; + + @Column(length=4000) + private String eaierrctnt; + + @Column(length=2) + private String eaierrdstcd; + + @Column(nullable=false, length=300) + private String eaisevrinstncname; + + @Column(length=30) + private String eaisvcname; + + @Column(length=16) + private String erroccurhms; + + public Tseaicm04() { + } + + public String getEaisvcserno() { + return this.eaisvcserno; + } + + public void setEaisvcserno(String eaisvcserno) { + this.eaisvcserno = eaisvcserno; + } + + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public String getBzwkdatactnt() { + return this.bzwkdatactnt; + } + + public void setBzwkdatactnt(String bzwkdatactnt) { + this.bzwkdatactnt = bzwkdatactnt; + } + + public String getBzwksvckeyname() { + return this.bzwksvckeyname; + } + + public void setBzwksvckeyname(String bzwksvckeyname) { + this.bzwksvckeyname = bzwksvckeyname; + } + + public String getEaierrcd() { + return this.eaierrcd; + } + + public void setEaierrcd(String eaierrcd) { + this.eaierrcd = eaierrcd; + } + + public String getEaierrctnt() { + return this.eaierrctnt; + } + + public void setEaierrctnt(String eaierrctnt) { + this.eaierrctnt = eaierrctnt; + } + + public String getEaierrdstcd() { + return this.eaierrdstcd; + } + + public void setEaierrdstcd(String eaierrdstcd) { + this.eaierrdstcd = eaierrdstcd; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getErroccurhms() { + return this.erroccurhms; + } + + public void setErroccurhms(String erroccurhms) { + this.erroccurhms = erroccurhms; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm05.java b/src/model/Tseaicm05.java new file mode 100644 index 0000000..d53a2ee --- /dev/null +++ b/src/model/Tseaicm05.java @@ -0,0 +1,228 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm05 database table. + * + */ +@Entity +@Table(name="tseaicm05") +@NamedQuery(name="Tseaicm05.findAll", query="SELECT t FROM Tseaicm05 t") +public class Tseaicm05 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=8) + private String createby; + + @Column(length=4) + private String eaibzwkdstcd; + + @Column(length=100) + private String httpcontenttype; + + @Column(length=500) + private String httpheaders; + + @Column(length=10) + private String httpmethod; + + @Column(length=10) + private String httpsleepseconds; + + @Column(length=10) + private String httpstatuscode; + + @Column(length=18) + private String lastamndhms; + + @Column(length=20) + private String loutptrnname; + + @Column(nullable=false, length=3) + private String menudstcd; + + @Column(nullable=false, length=1) + private String msgiodstcd; + + @Column(nullable=false, length=10) + private String psvintfacdsticname; + + @Column(length=4000) + private String smltormsgctnt; + + @Column(nullable=false, length=30) + private String smltormsgname; + + private double smltormsgserno; + + @Column(length=50) + private String smltormsgtelgmctnt; + + @Column(nullable=false, length=400) + private String smltortranctnt; + + @Column(nullable=false, length=1) + private String stndmsguseyn; + + @Column(length=8) + private String updateby; + + public Tseaicm05() { + } + + public String getCreateby() { + return this.createby; + } + + public void setCreateby(String createby) { + this.createby = createby; + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public String getHttpcontenttype() { + return this.httpcontenttype; + } + + public void setHttpcontenttype(String httpcontenttype) { + this.httpcontenttype = httpcontenttype; + } + + public String getHttpheaders() { + return this.httpheaders; + } + + public void setHttpheaders(String httpheaders) { + this.httpheaders = httpheaders; + } + + public String getHttpmethod() { + return this.httpmethod; + } + + public void setHttpmethod(String httpmethod) { + this.httpmethod = httpmethod; + } + + public String getHttpsleepseconds() { + return this.httpsleepseconds; + } + + public void setHttpsleepseconds(String httpsleepseconds) { + this.httpsleepseconds = httpsleepseconds; + } + + public String getHttpstatuscode() { + return this.httpstatuscode; + } + + public void setHttpstatuscode(String httpstatuscode) { + this.httpstatuscode = httpstatuscode; + } + + public String getLastamndhms() { + return this.lastamndhms; + } + + public void setLastamndhms(String lastamndhms) { + this.lastamndhms = lastamndhms; + } + + public String getLoutptrnname() { + return this.loutptrnname; + } + + public void setLoutptrnname(String loutptrnname) { + this.loutptrnname = loutptrnname; + } + + public String getMenudstcd() { + return this.menudstcd; + } + + public void setMenudstcd(String menudstcd) { + this.menudstcd = menudstcd; + } + + public String getMsgiodstcd() { + return this.msgiodstcd; + } + + public void setMsgiodstcd(String msgiodstcd) { + this.msgiodstcd = msgiodstcd; + } + + public String getPsvintfacdsticname() { + return this.psvintfacdsticname; + } + + public void setPsvintfacdsticname(String psvintfacdsticname) { + this.psvintfacdsticname = psvintfacdsticname; + } + + public String getSmltormsgctnt() { + return this.smltormsgctnt; + } + + public void setSmltormsgctnt(String smltormsgctnt) { + this.smltormsgctnt = smltormsgctnt; + } + + public String getSmltormsgname() { + return this.smltormsgname; + } + + public void setSmltormsgname(String smltormsgname) { + this.smltormsgname = smltormsgname; + } + + public double getSmltormsgserno() { + return this.smltormsgserno; + } + + public void setSmltormsgserno(double smltormsgserno) { + this.smltormsgserno = smltormsgserno; + } + + public String getSmltormsgtelgmctnt() { + return this.smltormsgtelgmctnt; + } + + public void setSmltormsgtelgmctnt(String smltormsgtelgmctnt) { + this.smltormsgtelgmctnt = smltormsgtelgmctnt; + } + + public String getSmltortranctnt() { + return this.smltortranctnt; + } + + public void setSmltortranctnt(String smltortranctnt) { + this.smltortranctnt = smltortranctnt; + } + + public String getStndmsguseyn() { + return this.stndmsguseyn; + } + + public void setStndmsguseyn(String stndmsguseyn) { + this.stndmsguseyn = stndmsguseyn; + } + + public String getUpdateby() { + return this.updateby; + } + + public void setUpdateby(String updateby) { + this.updateby = updateby; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm06.java b/src/model/Tseaicm06.java new file mode 100644 index 0000000..fc078cc --- /dev/null +++ b/src/model/Tseaicm06.java @@ -0,0 +1,161 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaicm06 database table. + * + */ +@Entity +@Table(name="tseaicm06") +@NamedQuery(name="Tseaicm06.findAll", query="SELECT t FROM Tseaicm06 t") +public class Tseaicm06 implements Serializable { + private static final long serialVersionUID = 1L; + + private double gridserno; + + @Column(precision=10) + private BigDecimal loutitemlencnt; + + @Column(nullable=false, length=50) + private String loutitemname; + + private double loutitemptrnserno; + + @Column(nullable=false, length=3) + private String loutitemserno; + + @Column(length=3) + private String loutitemtype; + + @Column(nullable=false, length=50) + private String loutname; + + @Column(nullable=false, length=3) + private String menudstcd; + + @Column(nullable=false, length=1) + private String msgiodstcd; + + @Column(nullable=false, length=30) + private String smltormsgname; + + private double smltormsgserno; + + @Column(length=4000) + private String testitemctnt; + + @Column(nullable=false, length=1) + private String testitemmandanyn; + + public Tseaicm06() { + } + + public double getGridserno() { + return this.gridserno; + } + + public void setGridserno(double gridserno) { + this.gridserno = gridserno; + } + + public BigDecimal getLoutitemlencnt() { + return this.loutitemlencnt; + } + + public void setLoutitemlencnt(BigDecimal loutitemlencnt) { + this.loutitemlencnt = loutitemlencnt; + } + + public String getLoutitemname() { + return this.loutitemname; + } + + public void setLoutitemname(String loutitemname) { + this.loutitemname = loutitemname; + } + + public double getLoutitemptrnserno() { + return this.loutitemptrnserno; + } + + public void setLoutitemptrnserno(double loutitemptrnserno) { + this.loutitemptrnserno = loutitemptrnserno; + } + + public String getLoutitemserno() { + return this.loutitemserno; + } + + public void setLoutitemserno(String loutitemserno) { + this.loutitemserno = loutitemserno; + } + + public String getLoutitemtype() { + return this.loutitemtype; + } + + public void setLoutitemtype(String loutitemtype) { + this.loutitemtype = loutitemtype; + } + + public String getLoutname() { + return this.loutname; + } + + public void setLoutname(String loutname) { + this.loutname = loutname; + } + + public String getMenudstcd() { + return this.menudstcd; + } + + public void setMenudstcd(String menudstcd) { + this.menudstcd = menudstcd; + } + + public String getMsgiodstcd() { + return this.msgiodstcd; + } + + public void setMsgiodstcd(String msgiodstcd) { + this.msgiodstcd = msgiodstcd; + } + + public String getSmltormsgname() { + return this.smltormsgname; + } + + public void setSmltormsgname(String smltormsgname) { + this.smltormsgname = smltormsgname; + } + + public double getSmltormsgserno() { + return this.smltormsgserno; + } + + public void setSmltormsgserno(double smltormsgserno) { + this.smltormsgserno = smltormsgserno; + } + + public String getTestitemctnt() { + return this.testitemctnt; + } + + public void setTestitemctnt(String testitemctnt) { + this.testitemctnt = testitemctnt; + } + + public String getTestitemmandanyn() { + return this.testitemmandanyn; + } + + public void setTestitemmandanyn(String testitemmandanyn) { + this.testitemmandanyn = testitemmandanyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm07.java b/src/model/Tseaicm07.java new file mode 100644 index 0000000..cacc01c --- /dev/null +++ b/src/model/Tseaicm07.java @@ -0,0 +1,97 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm07 database table. + * + */ +@Entity +@Table(name="tseaicm07") +@NamedQuery(name="Tseaicm07.findAll", query="SELECT t FROM Tseaicm07 t") +public class Tseaicm07 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=4000) + private String bzwkdatactnt; + + @Column(nullable=false, length=1) + private String msgiodstcd; + + @Column(nullable=false, length=40) + private String smltorserno; + + @Column(nullable=false, length=1) + private String sndrcvdstcd; + + @Column(nullable=false, length=1) + private String supplbzwkdatayn; + + @Column(length=15) + private String termlip; + + @Column(nullable=false, length=17) + private String termltranyms; + + public Tseaicm07() { + } + + public String getBzwkdatactnt() { + return this.bzwkdatactnt; + } + + public void setBzwkdatactnt(String bzwkdatactnt) { + this.bzwkdatactnt = bzwkdatactnt; + } + + public String getMsgiodstcd() { + return this.msgiodstcd; + } + + public void setMsgiodstcd(String msgiodstcd) { + this.msgiodstcd = msgiodstcd; + } + + public String getSmltorserno() { + return this.smltorserno; + } + + public void setSmltorserno(String smltorserno) { + this.smltorserno = smltorserno; + } + + public String getSndrcvdstcd() { + return this.sndrcvdstcd; + } + + public void setSndrcvdstcd(String sndrcvdstcd) { + this.sndrcvdstcd = sndrcvdstcd; + } + + public String getSupplbzwkdatayn() { + return this.supplbzwkdatayn; + } + + public void setSupplbzwkdatayn(String supplbzwkdatayn) { + this.supplbzwkdatayn = supplbzwkdatayn; + } + + public String getTermlip() { + return this.termlip; + } + + public void setTermlip(String termlip) { + this.termlip = termlip; + } + + public String getTermltranyms() { + return this.termltranyms; + } + + public void setTermltranyms(String termltranyms) { + this.termltranyms = termltranyms; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm08.java b/src/model/Tseaicm08.java new file mode 100644 index 0000000..3aa7a98 --- /dev/null +++ b/src/model/Tseaicm08.java @@ -0,0 +1,76 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaicm08 database table. + * + */ +@Entity +@Table(name="tseaicm08") +@NamedQuery(name="Tseaicm08.findAll", query="SELECT t FROM Tseaicm08 t") +public class Tseaicm08 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=4000) + private String bzwkdatactnt; + + @Column(nullable=false, length=1) + private String msgiodstcd; + + @Column(nullable=false, precision=10) + private BigDecimal smlindex; + + @Column(nullable=false, length=40) + private String smltorserno; + + @Column(nullable=false, length=1) + private String sndrcvdstcd; + + public Tseaicm08() { + } + + public String getBzwkdatactnt() { + return this.bzwkdatactnt; + } + + public void setBzwkdatactnt(String bzwkdatactnt) { + this.bzwkdatactnt = bzwkdatactnt; + } + + public String getMsgiodstcd() { + return this.msgiodstcd; + } + + public void setMsgiodstcd(String msgiodstcd) { + this.msgiodstcd = msgiodstcd; + } + + public BigDecimal getSmlindex() { + return this.smlindex; + } + + public void setSmlindex(BigDecimal smlindex) { + this.smlindex = smlindex; + } + + public String getSmltorserno() { + return this.smltorserno; + } + + public void setSmltorserno(String smltorserno) { + this.smltorserno = smltorserno; + } + + public String getSndrcvdstcd() { + return this.sndrcvdstcd; + } + + public void setSndrcvdstcd(String sndrcvdstcd) { + this.sndrcvdstcd = sndrcvdstcd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm09.java b/src/model/Tseaicm09.java new file mode 100644 index 0000000..9d0b131 --- /dev/null +++ b/src/model/Tseaicm09.java @@ -0,0 +1,140 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaicm09 database table. + * + */ +@Entity +@Table(name="tseaicm09") +@NamedQuery(name="Tseaicm09.findAll", query="SELECT t FROM Tseaicm09 t") +public class Tseaicm09 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=30) + private String errsmltormsgname; + + private double errsmltormsgserno; + + @Column(precision=10) + private BigDecimal msgfldlen1; + + @Column(precision=10) + private BigDecimal msgfldlen2; + + @Column(precision=10) + private BigDecimal msgfldstartsituval1; + + @Column(precision=10) + private BigDecimal msgfldstartsituval2; + + @Column(nullable=false, length=1) + private String responsetype; + + @Column(precision=10) + private BigDecimal sleeptime; + + @Column(nullable=false, length=30) + private String srcsmltormsgname; + + @Column(nullable=false, length=30) + private String trgsmltormsgname; + + private double trgsmltormsgserno; + + public Tseaicm09() { + } + + public String getErrsmltormsgname() { + return this.errsmltormsgname; + } + + public void setErrsmltormsgname(String errsmltormsgname) { + this.errsmltormsgname = errsmltormsgname; + } + + public double getErrsmltormsgserno() { + return this.errsmltormsgserno; + } + + public void setErrsmltormsgserno(double errsmltormsgserno) { + this.errsmltormsgserno = errsmltormsgserno; + } + + public BigDecimal getMsgfldlen1() { + return this.msgfldlen1; + } + + public void setMsgfldlen1(BigDecimal msgfldlen1) { + this.msgfldlen1 = msgfldlen1; + } + + public BigDecimal getMsgfldlen2() { + return this.msgfldlen2; + } + + public void setMsgfldlen2(BigDecimal msgfldlen2) { + this.msgfldlen2 = msgfldlen2; + } + + public BigDecimal getMsgfldstartsituval1() { + return this.msgfldstartsituval1; + } + + public void setMsgfldstartsituval1(BigDecimal msgfldstartsituval1) { + this.msgfldstartsituval1 = msgfldstartsituval1; + } + + public BigDecimal getMsgfldstartsituval2() { + return this.msgfldstartsituval2; + } + + public void setMsgfldstartsituval2(BigDecimal msgfldstartsituval2) { + this.msgfldstartsituval2 = msgfldstartsituval2; + } + + public String getResponsetype() { + return this.responsetype; + } + + public void setResponsetype(String responsetype) { + this.responsetype = responsetype; + } + + public BigDecimal getSleeptime() { + return this.sleeptime; + } + + public void setSleeptime(BigDecimal sleeptime) { + this.sleeptime = sleeptime; + } + + public String getSrcsmltormsgname() { + return this.srcsmltormsgname; + } + + public void setSrcsmltormsgname(String srcsmltormsgname) { + this.srcsmltormsgname = srcsmltormsgname; + } + + public String getTrgsmltormsgname() { + return this.trgsmltormsgname; + } + + public void setTrgsmltormsgname(String trgsmltormsgname) { + this.trgsmltormsgname = trgsmltormsgname; + } + + public double getTrgsmltormsgserno() { + return this.trgsmltormsgserno; + } + + public void setTrgsmltormsgserno(double trgsmltormsgserno) { + this.trgsmltormsgserno = trgsmltormsgserno; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm10.java b/src/model/Tseaicm10.java new file mode 100644 index 0000000..8683423 --- /dev/null +++ b/src/model/Tseaicm10.java @@ -0,0 +1,150 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaicm10 database table. + * + */ +@Entity +@Table(name="tseaicm10") +@NamedQuery(name="Tseaicm10.findAll", query="SELECT t FROM Tseaicm10 t") +public class Tseaicm10 implements Serializable { + private static final long serialVersionUID = 1L; + + private double gridserno; + + @Column(nullable=false, length=50) + private String loutitemname; + + private double loutitemptrnserno; + + @Column(precision=10) + private BigDecimal loutitemserno; + + @Column(nullable=false, length=3) + private String loutitemtype; + + @Column(nullable=false, length=50) + private String loutname; + + @Column(nullable=false, length=3) + private String menudstcd; + + @Column(nullable=false, length=1) + private String msgiodstcd; + + @Column(nullable=false, length=30) + private String smltormsgname; + + private double smltormsgserno; + + @Column(nullable=false, length=3) + private String typeserno; + + @Column(length=4000) + private String typevalue; + + public Tseaicm10() { + } + + public double getGridserno() { + return this.gridserno; + } + + public void setGridserno(double gridserno) { + this.gridserno = gridserno; + } + + public String getLoutitemname() { + return this.loutitemname; + } + + public void setLoutitemname(String loutitemname) { + this.loutitemname = loutitemname; + } + + public double getLoutitemptrnserno() { + return this.loutitemptrnserno; + } + + public void setLoutitemptrnserno(double loutitemptrnserno) { + this.loutitemptrnserno = loutitemptrnserno; + } + + public BigDecimal getLoutitemserno() { + return this.loutitemserno; + } + + public void setLoutitemserno(BigDecimal loutitemserno) { + this.loutitemserno = loutitemserno; + } + + public String getLoutitemtype() { + return this.loutitemtype; + } + + public void setLoutitemtype(String loutitemtype) { + this.loutitemtype = loutitemtype; + } + + public String getLoutname() { + return this.loutname; + } + + public void setLoutname(String loutname) { + this.loutname = loutname; + } + + public String getMenudstcd() { + return this.menudstcd; + } + + public void setMenudstcd(String menudstcd) { + this.menudstcd = menudstcd; + } + + public String getMsgiodstcd() { + return this.msgiodstcd; + } + + public void setMsgiodstcd(String msgiodstcd) { + this.msgiodstcd = msgiodstcd; + } + + public String getSmltormsgname() { + return this.smltormsgname; + } + + public void setSmltormsgname(String smltormsgname) { + this.smltormsgname = smltormsgname; + } + + public double getSmltormsgserno() { + return this.smltormsgserno; + } + + public void setSmltormsgserno(double smltormsgserno) { + this.smltormsgserno = smltormsgserno; + } + + public String getTypeserno() { + return this.typeserno; + } + + public void setTypeserno(String typeserno) { + this.typeserno = typeserno; + } + + public String getTypevalue() { + return this.typevalue; + } + + public void setTypevalue(String typevalue) { + this.typevalue = typevalue; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm11.java b/src/model/Tseaicm11.java new file mode 100644 index 0000000..31730ef --- /dev/null +++ b/src/model/Tseaicm11.java @@ -0,0 +1,54 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaicm11 database table. + * + */ +@Entity +@Table(name="tseaicm11") +@NamedQuery(name="Tseaicm11.findAll", query="SELECT t FROM Tseaicm11 t") +public class Tseaicm11 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=4) + private String chnlcode; + + @Column(nullable=false, length=8) + private String lastupdate; + + @Column(nullable=false, precision=10) + private BigDecimal seq; + + public Tseaicm11() { + } + + public String getChnlcode() { + return this.chnlcode; + } + + public void setChnlcode(String chnlcode) { + this.chnlcode = chnlcode; + } + + public String getLastupdate() { + return this.lastupdate; + } + + public void setLastupdate(String lastupdate) { + this.lastupdate = lastupdate; + } + + public BigDecimal getSeq() { + return this.seq; + } + + public void setSeq(BigDecimal seq) { + this.seq = seq; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm12.java b/src/model/Tseaicm12.java new file mode 100644 index 0000000..46bc682 --- /dev/null +++ b/src/model/Tseaicm12.java @@ -0,0 +1,128 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm12 database table. + * + */ +@Entity +@Table(name="tseaicm12") +@NamedQuery(name="Tseaicm12.findAll", query="SELECT t FROM Tseaicm12 t") +public class Tseaicm12 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=50) + private String loutitemname; + + @Column(length=3) + private String loutitemserno; + + @Column(length=50) + private String loutname; + + @Column(length=3) + private String menudstcd; + + @Column(length=1) + private String msgiodstcd; + + @Column(length=30) + private String smltormsgname; + + private double smltormsgserno; + + @Column(length=4000) + private String testitemctnt; + + @Column(length=1) + private String testitemmandanyn; + + private double testitemserno; + + public Tseaicm12() { + } + + public String getLoutitemname() { + return this.loutitemname; + } + + public void setLoutitemname(String loutitemname) { + this.loutitemname = loutitemname; + } + + public String getLoutitemserno() { + return this.loutitemserno; + } + + public void setLoutitemserno(String loutitemserno) { + this.loutitemserno = loutitemserno; + } + + public String getLoutname() { + return this.loutname; + } + + public void setLoutname(String loutname) { + this.loutname = loutname; + } + + public String getMenudstcd() { + return this.menudstcd; + } + + public void setMenudstcd(String menudstcd) { + this.menudstcd = menudstcd; + } + + public String getMsgiodstcd() { + return this.msgiodstcd; + } + + public void setMsgiodstcd(String msgiodstcd) { + this.msgiodstcd = msgiodstcd; + } + + public String getSmltormsgname() { + return this.smltormsgname; + } + + public void setSmltormsgname(String smltormsgname) { + this.smltormsgname = smltormsgname; + } + + public double getSmltormsgserno() { + return this.smltormsgserno; + } + + public void setSmltormsgserno(double smltormsgserno) { + this.smltormsgserno = smltormsgserno; + } + + public String getTestitemctnt() { + return this.testitemctnt; + } + + public void setTestitemctnt(String testitemctnt) { + this.testitemctnt = testitemctnt; + } + + public String getTestitemmandanyn() { + return this.testitemmandanyn; + } + + public void setTestitemmandanyn(String testitemmandanyn) { + this.testitemmandanyn = testitemmandanyn; + } + + public double getTestitemserno() { + return this.testitemserno; + } + + public void setTestitemserno(double testitemserno) { + this.testitemserno = testitemserno; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm13.java b/src/model/Tseaicm13.java new file mode 100644 index 0000000..3b2995e --- /dev/null +++ b/src/model/Tseaicm13.java @@ -0,0 +1,104 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm13 database table. + * + */ +@Entity +@Table(name="tseaicm13") +@NamedQuery(name="Tseaicm13.findAll", query="SELECT t FROM Tseaicm13 t") +public class Tseaicm13 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=200) + private String adptrbzwkgroupname; + + private double msgfldlen; + + private double msgfldoffset; + + private double msgfldrnk; + + private double msgfldserno; + + @Column(length=3) + private String msgfldtype; + + @Column(length=200) + private String msgfldvalue; + + @Column(length=3) + private String otsdchnlinstcd; + + public Tseaicm13() { + } + + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public double getMsgfldlen() { + return this.msgfldlen; + } + + public void setMsgfldlen(double msgfldlen) { + this.msgfldlen = msgfldlen; + } + + public double getMsgfldoffset() { + return this.msgfldoffset; + } + + public void setMsgfldoffset(double msgfldoffset) { + this.msgfldoffset = msgfldoffset; + } + + public double getMsgfldrnk() { + return this.msgfldrnk; + } + + public void setMsgfldrnk(double msgfldrnk) { + this.msgfldrnk = msgfldrnk; + } + + public double getMsgfldserno() { + return this.msgfldserno; + } + + public void setMsgfldserno(double msgfldserno) { + this.msgfldserno = msgfldserno; + } + + public String getMsgfldtype() { + return this.msgfldtype; + } + + public void setMsgfldtype(String msgfldtype) { + this.msgfldtype = msgfldtype; + } + + public String getMsgfldvalue() { + return this.msgfldvalue; + } + + public void setMsgfldvalue(String msgfldvalue) { + this.msgfldvalue = msgfldvalue; + } + + public String getOtsdchnlinstcd() { + return this.otsdchnlinstcd; + } + + public void setOtsdchnlinstcd(String otsdchnlinstcd) { + this.otsdchnlinstcd = otsdchnlinstcd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm14.java b/src/model/Tseaicm14.java new file mode 100644 index 0000000..0e43c94 --- /dev/null +++ b/src/model/Tseaicm14.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm14 database table. + * + */ +@Entity +@Table(name="tseaicm14") +@NamedQuery(name="Tseaicm14.findAll", query="SELECT t FROM Tseaicm14 t") +public class Tseaicm14 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=30) + private String smltormsgname; + + @Column(nullable=false) + private double smltormsgserno; + + public Tseaicm14() { + } + + public String getSmltormsgname() { + return this.smltormsgname; + } + + public void setSmltormsgname(String smltormsgname) { + this.smltormsgname = smltormsgname; + } + + public double getSmltormsgserno() { + return this.smltormsgserno; + } + + public void setSmltormsgserno(double smltormsgserno) { + this.smltormsgserno = smltormsgserno; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm15.java b/src/model/Tseaicm15.java new file mode 100644 index 0000000..d9a4548 --- /dev/null +++ b/src/model/Tseaicm15.java @@ -0,0 +1,87 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.sql.Timestamp; + + +/** + * The persistent class for the tseaicm15 database table. + * + */ +@Entity +@Table(name="tseaicm15") +@NamedQuery(name="Tseaicm15.findAll", query="SELECT t FROM Tseaicm15 t") +public class Tseaicm15 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=40) + private String uuid; + + @Column(length=20) + private String interfaceid; + + private Timestamp logdate; + + @Column(length=400) + private String message; + + @Column(length=10) + private String type; + + @Column(length=20) + private String userid; + + public Tseaicm15() { + } + + public String getUuid() { + return this.uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + + public String getInterfaceid() { + return this.interfaceid; + } + + public void setInterfaceid(String interfaceid) { + this.interfaceid = interfaceid; + } + + public Timestamp getLogdate() { + return this.logdate; + } + + public void setLogdate(Timestamp logdate) { + this.logdate = logdate; + } + + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } + + public String getType() { + return this.type; + } + + public void setType(String type) { + this.type = type; + } + + public String getUserid() { + return this.userid; + } + + public void setUserid(String userid) { + this.userid = userid; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm19.java b/src/model/Tseaicm19.java new file mode 100644 index 0000000..d647618 --- /dev/null +++ b/src/model/Tseaicm19.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm19 database table. + * + */ +@Entity +@Table(name="tseaicm19") +@NamedQuery(name="Tseaicm19.findAll", query="SELECT t FROM Tseaicm19 t") +public class Tseaicm19 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=50) + private String codegroup; + + @Column(length=1000) + private String description; + + public Tseaicm19() { + } + + public String getCodegroup() { + return this.codegroup; + } + + public void setCodegroup(String codegroup) { + this.codegroup = codegroup; + } + + public String getDescription() { + return this.description; + } + + public void setDescription(String description) { + this.description = description; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm20.java b/src/model/Tseaicm20.java new file mode 100644 index 0000000..2ba942a --- /dev/null +++ b/src/model/Tseaicm20.java @@ -0,0 +1,197 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaicm20 database table. + * + */ +@Entity +@Table(name="tseaicm20") +@NamedQuery(name="Tseaicm20.findAll", query="SELECT t FROM Tseaicm20 t") +public class Tseaicm20 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaicm20PK id; + + @Column(length=200) + private String codename; + + @Column(name="codename_en", length=200) + private String codenameEn; + + @Column(length=8) + private String createby; + + @Column(length=14) + private String createon; + + @Column(length=50) + private String ext1; + + @Column(length=50) + private String ext2; + + @Column(length=50) + private String ext3; + + @Column(length=50) + private String ext4; + + @Column(length=50) + private String ext5; + + @Column(length=50) + private String parentcode; + + @Column(length=50) + private String parentcodegroup; + + @Column(precision=10) + private BigDecimal seq; + + @Column(length=8) + private String updateby; + + @Column(length=14) + private String updateon; + + @Column(length=1) + private String useyn; + + public Tseaicm20() { + } + + public Tseaicm20PK getId() { + return this.id; + } + + public void setId(Tseaicm20PK id) { + this.id = id; + } + + public String getCodename() { + return this.codename; + } + + public void setCodename(String codename) { + this.codename = codename; + } + + public String getCodenameEn() { + return this.codenameEn; + } + + public void setCodenameEn(String codenameEn) { + this.codenameEn = codenameEn; + } + + public String getCreateby() { + return this.createby; + } + + public void setCreateby(String createby) { + this.createby = createby; + } + + public String getCreateon() { + return this.createon; + } + + public void setCreateon(String createon) { + this.createon = createon; + } + + public String getExt1() { + return this.ext1; + } + + public void setExt1(String ext1) { + this.ext1 = ext1; + } + + public String getExt2() { + return this.ext2; + } + + public void setExt2(String ext2) { + this.ext2 = ext2; + } + + public String getExt3() { + return this.ext3; + } + + public void setExt3(String ext3) { + this.ext3 = ext3; + } + + public String getExt4() { + return this.ext4; + } + + public void setExt4(String ext4) { + this.ext4 = ext4; + } + + public String getExt5() { + return this.ext5; + } + + public void setExt5(String ext5) { + this.ext5 = ext5; + } + + public String getParentcode() { + return this.parentcode; + } + + public void setParentcode(String parentcode) { + this.parentcode = parentcode; + } + + public String getParentcodegroup() { + return this.parentcodegroup; + } + + public void setParentcodegroup(String parentcodegroup) { + this.parentcodegroup = parentcodegroup; + } + + public BigDecimal getSeq() { + return this.seq; + } + + public void setSeq(BigDecimal seq) { + this.seq = seq; + } + + public String getUpdateby() { + return this.updateby; + } + + public void setUpdateby(String updateby) { + this.updateby = updateby; + } + + public String getUpdateon() { + return this.updateon; + } + + public void setUpdateon(String updateon) { + this.updateon = updateon; + } + + public String getUseyn() { + return this.useyn; + } + + public void setUseyn(String useyn) { + this.useyn = useyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaicm20PK.java b/src/model/Tseaicm20PK.java new file mode 100644 index 0000000..68a7448 --- /dev/null +++ b/src/model/Tseaicm20PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaicm20 database table. + * + */ +@Embeddable +public class Tseaicm20PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String codegroup; + + @Column(unique=true, nullable=false, length=100) + private String code; + + public Tseaicm20PK() { + } + public String getCodegroup() { + return this.codegroup; + } + public void setCodegroup(String codegroup) { + this.codegroup = codegroup; + } + public String getCode() { + return this.code; + } + public void setCode(String code) { + this.code = code; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaicm20PK)) { + return false; + } + Tseaicm20PK castOther = (Tseaicm20PK)other; + return + this.codegroup.equals(castOther.codegroup) + && this.code.equals(castOther.code); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.codegroup.hashCode(); + hash = hash * prime + this.code.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaicm23.java b/src/model/Tseaicm23.java new file mode 100644 index 0000000..3b1c3f0 --- /dev/null +++ b/src/model/Tseaicm23.java @@ -0,0 +1,65 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaicm23 database table. + * + */ +@Entity +@Table(name="tseaicm23") +@NamedQuery(name="Tseaicm23.findAll", query="SELECT t FROM Tseaicm23 t") +public class Tseaicm23 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=20) + private String domainnm; + + @Column(length=10) + private String domainoption; + + @Column(length=10) + private String domaintype; + + @Column(length=1000) + private String domainval; + + public Tseaicm23() { + } + + public String getDomainnm() { + return this.domainnm; + } + + public void setDomainnm(String domainnm) { + this.domainnm = domainnm; + } + + public String getDomainoption() { + return this.domainoption; + } + + public void setDomainoption(String domainoption) { + this.domainoption = domainoption; + } + + public String getDomaintype() { + return this.domaintype; + } + + public void setDomaintype(String domaintype) { + this.domaintype = domaintype; + } + + public String getDomainval() { + return this.domainval; + } + + public void setDomainval(String domainval) { + this.domainval = domainval; + } + +} \ No newline at end of file diff --git a/src/model/Tseaidc01.java b/src/model/Tseaidc01.java new file mode 100644 index 0000000..3614d85 --- /dev/null +++ b/src/model/Tseaidc01.java @@ -0,0 +1,43 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaidc01 database table. + * + */ +@Entity +@Table(name="tseaidc01") +@NamedQuery(name="Tseaidc01.findAll", query="SELECT t FROM Tseaidc01 t") +public class Tseaidc01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(length=8) + private String splizvaldymd; + + public Tseaidc01() { + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getSplizvaldymd() { + return this.splizvaldymd; + } + + public void setSplizvaldymd(String splizvaldymd) { + this.splizvaldymd = splizvaldymd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaidc02.java b/src/model/Tseaidc02.java new file mode 100644 index 0000000..c1d425e --- /dev/null +++ b/src/model/Tseaidc02.java @@ -0,0 +1,65 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaidc02 database table. + * + */ +@Entity +@Table(name="tseaidc02") +@NamedQuery(name="Tseaidc02.findAll", query="SELECT t FROM Tseaidc02 t") +public class Tseaidc02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=40) + private String evntrecvsysname; + + @Column(length=50) + private String adptrbzwkgroupname; + + @Column(length=1) + private String eaievntprcssdstcd; + + @Column(length=200) + private String evntrecvsysctnt; + + public Tseaidc02() { + } + + public String getEvntrecvsysname() { + return this.evntrecvsysname; + } + + public void setEvntrecvsysname(String evntrecvsysname) { + this.evntrecvsysname = evntrecvsysname; + } + + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public String getEaievntprcssdstcd() { + return this.eaievntprcssdstcd; + } + + public void setEaievntprcssdstcd(String eaievntprcssdstcd) { + this.eaievntprcssdstcd = eaievntprcssdstcd; + } + + public String getEvntrecvsysctnt() { + return this.evntrecvsysctnt; + } + + public void setEvntrecvsysctnt(String evntrecvsysctnt) { + this.evntrecvsysctnt = evntrecvsysctnt; + } + +} \ No newline at end of file diff --git a/src/model/Tseaidc03.java b/src/model/Tseaidc03.java new file mode 100644 index 0000000..9bf8bdb --- /dev/null +++ b/src/model/Tseaidc03.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaidc03 database table. + * + */ +@Entity +@Table(name="tseaidc03") +@NamedQuery(name="Tseaidc03.findAll", query="SELECT t FROM Tseaidc03 t") +public class Tseaidc03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaidc03PK id; + + @Column(length=14) + private String evntprcssrsultdpstyms; + + @Column(length=1) + private String prcssrsultyn; + + public Tseaidc03() { + } + + public Tseaidc03PK getId() { + return this.id; + } + + public void setId(Tseaidc03PK id) { + this.id = id; + } + + public String getEvntprcssrsultdpstyms() { + return this.evntprcssrsultdpstyms; + } + + public void setEvntprcssrsultdpstyms(String evntprcssrsultdpstyms) { + this.evntprcssrsultdpstyms = evntprcssrsultdpstyms; + } + + public String getPrcssrsultyn() { + return this.prcssrsultyn; + } + + public void setPrcssrsultyn(String prcssrsultyn) { + this.prcssrsultyn = prcssrsultyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaidc03PK.java b/src/model/Tseaidc03PK.java new file mode 100644 index 0000000..68e6626 --- /dev/null +++ b/src/model/Tseaidc03PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaidc03 database table. + * + */ +@Embeddable +public class Tseaidc03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=40) + private String evntrecvsysname; + + @Column(unique=true, nullable=false, length=1) + private String eaievntdstcd; + + @Column(unique=true, nullable=false, length=14) + private String evntsendyms; + + public Tseaidc03PK() { + } + public String getEvntrecvsysname() { + return this.evntrecvsysname; + } + public void setEvntrecvsysname(String evntrecvsysname) { + this.evntrecvsysname = evntrecvsysname; + } + public String getEaievntdstcd() { + return this.eaievntdstcd; + } + public void setEaievntdstcd(String eaievntdstcd) { + this.eaievntdstcd = eaievntdstcd; + } + public String getEvntsendyms() { + return this.evntsendyms; + } + public void setEvntsendyms(String evntsendyms) { + this.evntsendyms = evntsendyms; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaidc03PK)) { + return false; + } + Tseaidc03PK castOther = (Tseaidc03PK)other; + return + this.evntrecvsysname.equals(castOther.evntrecvsysname) + && this.eaievntdstcd.equals(castOther.eaievntdstcd) + && this.evntsendyms.equals(castOther.evntsendyms); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.evntrecvsysname.hashCode(); + hash = hash * prime + this.eaievntdstcd.hashCode(); + hash = hash * prime + this.evntsendyms.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaidr01.java b/src/model/Tseaidr01.java new file mode 100644 index 0000000..3984917 --- /dev/null +++ b/src/model/Tseaidr01.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaidr01 database table. + * + */ +@Entity +@Table(name="tseaidr01") +@NamedQuery(name="Tseaidr01.findAll", query="SELECT t FROM Tseaidr01 t") +public class Tseaidr01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaidr01PK id; + + @Column(length=15) + private String mcitrancd; + + @Column(length=100) + private String screnname; + + public Tseaidr01() { + } + + public Tseaidr01PK getId() { + return this.id; + } + + public void setId(Tseaidr01PK id) { + this.id = id; + } + + public String getMcitrancd() { + return this.mcitrancd; + } + + public void setMcitrancd(String mcitrancd) { + this.mcitrancd = mcitrancd; + } + + public String getScrenname() { + return this.screnname; + } + + public void setScrenname(String screnname) { + this.screnname = screnname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaidr01PK.java b/src/model/Tseaidr01PK.java new file mode 100644 index 0000000..db4d869 --- /dev/null +++ b/src/model/Tseaidr01PK.java @@ -0,0 +1,123 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaidr01 database table. + * + */ +@Embeddable +public class Tseaidr01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=1) + private String occursysdstcd; + + @Column(unique=true, nullable=false, length=1) + private String eaisysdstcd; + + @Column(unique=true, nullable=false, length=1) + private String sysobstclptrndstcd; + + @Column(unique=true, nullable=false, length=36) + private String guid; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=12) + private String osidinstino; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + public Tseaidr01PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getOccursysdstcd() { + return this.occursysdstcd; + } + public void setOccursysdstcd(String occursysdstcd) { + this.occursysdstcd = occursysdstcd; + } + public String getEaisysdstcd() { + return this.eaisysdstcd; + } + public void setEaisysdstcd(String eaisysdstcd) { + this.eaisysdstcd = eaisysdstcd; + } + public String getSysobstclptrndstcd() { + return this.sysobstclptrndstcd; + } + public void setSysobstclptrndstcd(String sysobstclptrndstcd) { + this.sysobstclptrndstcd = sysobstclptrndstcd; + } + public String getGuid() { + return this.guid; + } + public void setGuid(String guid) { + this.guid = guid; + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getOsidinstino() { + return this.osidinstino; + } + public void setOsidinstino(String osidinstino) { + this.osidinstino = osidinstino; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaidr01PK)) { + return false; + } + Tseaidr01PK castOther = (Tseaidr01PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.occursysdstcd.equals(castOther.occursysdstcd) + && this.eaisysdstcd.equals(castOther.eaisysdstcd) + && this.sysobstclptrndstcd.equals(castOther.sysobstclptrndstcd) + && this.guid.equals(castOther.guid) + && this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.osidinstino.equals(castOther.osidinstino) + && this.eaisvcname.equals(castOther.eaisvcname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.occursysdstcd.hashCode(); + hash = hash * prime + this.eaisysdstcd.hashCode(); + hash = hash * prime + this.sysobstclptrndstcd.hashCode(); + hash = hash * prime + this.guid.hashCode(); + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.osidinstino.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaidr02.java b/src/model/Tseaidr02.java new file mode 100644 index 0000000..62f8f52 --- /dev/null +++ b/src/model/Tseaidr02.java @@ -0,0 +1,54 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaidr02 database table. + * + */ +@Entity +@Table(name="tseaidr02") +@NamedQuery(name="Tseaidr02.findAll", query="SELECT t FROM Tseaidr02 t") +public class Tseaidr02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaidr02PK id; + + @Column(length=200) + private String rmarkitemctnt; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaidr02() { + } + + public Tseaidr02PK getId() { + return this.id; + } + + public void setId(Tseaidr02PK id) { + this.id = id; + } + + public String getRmarkitemctnt() { + return this.rmarkitemctnt; + } + + public void setRmarkitemctnt(String rmarkitemctnt) { + this.rmarkitemctnt = rmarkitemctnt; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaidr02PK.java b/src/model/Tseaidr02PK.java new file mode 100644 index 0000000..e296aa9 --- /dev/null +++ b/src/model/Tseaidr02PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaidr02 database table. + * + */ +@Embeddable +public class Tseaidr02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=1) + private String occursysdstcd; + + @Column(unique=true, nullable=false, length=1) + private String eaisysdstcd; + + @Column(unique=true, nullable=false, length=1) + private String sysobstclptrndstcd; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=12) + private String osidinstino; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + public Tseaidr02PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getOccursysdstcd() { + return this.occursysdstcd; + } + public void setOccursysdstcd(String occursysdstcd) { + this.occursysdstcd = occursysdstcd; + } + public String getEaisysdstcd() { + return this.eaisysdstcd; + } + public void setEaisysdstcd(String eaisysdstcd) { + this.eaisysdstcd = eaisysdstcd; + } + public String getSysobstclptrndstcd() { + return this.sysobstclptrndstcd; + } + public void setSysobstclptrndstcd(String sysobstclptrndstcd) { + this.sysobstclptrndstcd = sysobstclptrndstcd; + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getOsidinstino() { + return this.osidinstino; + } + public void setOsidinstino(String osidinstino) { + this.osidinstino = osidinstino; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaidr02PK)) { + return false; + } + Tseaidr02PK castOther = (Tseaidr02PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.occursysdstcd.equals(castOther.occursysdstcd) + && this.eaisysdstcd.equals(castOther.eaisysdstcd) + && this.sysobstclptrndstcd.equals(castOther.sysobstclptrndstcd) + && this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.osidinstino.equals(castOther.osidinstino) + && this.eaisvcname.equals(castOther.eaisvcname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.occursysdstcd.hashCode(); + hash = hash * prime + this.eaisysdstcd.hashCode(); + hash = hash * prime + this.sysobstclptrndstcd.hashCode(); + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.osidinstino.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr01.java b/src/model/Tseaifr01.java new file mode 100644 index 0000000..2369af9 --- /dev/null +++ b/src/model/Tseaifr01.java @@ -0,0 +1,74 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr01 database table. + * + */ +@Entity +@Table(name="tseaifr01") +@NamedQuery(name="Tseaifr01.findAll", query="SELECT t FROM Tseaifr01 t") +public class Tseaifr01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr01PK id; + + @Column(length=20) + private String cmprctnt; + + private Integer rsultprcssno; + + @Column(length=50) + private String rulefldgroupname; + + @Column(length=50) + private String rulefldname; + + public Tseaifr01() { + } + + public Tseaifr01PK getId() { + return this.id; + } + + public void setId(Tseaifr01PK id) { + this.id = id; + } + + public String getCmprctnt() { + return this.cmprctnt; + } + + public void setCmprctnt(String cmprctnt) { + this.cmprctnt = cmprctnt; + } + + public Integer getRsultprcssno() { + return this.rsultprcssno; + } + + public void setRsultprcssno(Integer rsultprcssno) { + this.rsultprcssno = rsultprcssno; + } + + public String getRulefldgroupname() { + return this.rulefldgroupname; + } + + public void setRulefldgroupname(String rulefldgroupname) { + this.rulefldgroupname = rulefldgroupname; + } + + public String getRulefldname() { + return this.rulefldname; + } + + public void setRulefldname(String rulefldname) { + this.rulefldname = rulefldname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr01PK.java b/src/model/Tseaifr01PK.java new file mode 100644 index 0000000..6ec5ef7 --- /dev/null +++ b/src/model/Tseaifr01PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr01 database table. + * + */ +@Embeddable +public class Tseaifr01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false) + private Integer svcprcssno; + + @Column(unique=true, nullable=false) + private Integer ruleserno; + + public Tseaifr01PK() { + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public Integer getSvcprcssno() { + return this.svcprcssno; + } + public void setSvcprcssno(Integer svcprcssno) { + this.svcprcssno = svcprcssno; + } + public Integer getRuleserno() { + return this.ruleserno; + } + public void setRuleserno(Integer ruleserno) { + this.ruleserno = ruleserno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr01PK)) { + return false; + } + Tseaifr01PK castOther = (Tseaifr01PK)other; + return + this.eaisvcname.equals(castOther.eaisvcname) + && this.svcprcssno.equals(castOther.svcprcssno) + && this.ruleserno.equals(castOther.ruleserno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.svcprcssno.hashCode(); + hash = hash * prime + this.ruleserno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr02.java b/src/model/Tseaifr02.java new file mode 100644 index 0000000..f2bcd7a --- /dev/null +++ b/src/model/Tseaifr02.java @@ -0,0 +1,76 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr02 database table. + * + */ +@Entity +@Table(name="tseaifr02") +@NamedQuery(name="Tseaifr02.findAll", query="SELECT t FROM Tseaifr02 t") +public class Tseaifr02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=50) + private String routname; + + @Column(length=3) + private String adptrcd; + + @Column(length=1) + private String layerdstcd; + + @Column(length=200) + private String motivrouturiname; + + @Column(length=200) + private String nonmotivrouturiname; + + public Tseaifr02() { + } + + public String getRoutname() { + return this.routname; + } + + public void setRoutname(String routname) { + this.routname = routname; + } + + public String getAdptrcd() { + return this.adptrcd; + } + + public void setAdptrcd(String adptrcd) { + this.adptrcd = adptrcd; + } + + public String getLayerdstcd() { + return this.layerdstcd; + } + + public void setLayerdstcd(String layerdstcd) { + this.layerdstcd = layerdstcd; + } + + public String getMotivrouturiname() { + return this.motivrouturiname; + } + + public void setMotivrouturiname(String motivrouturiname) { + this.motivrouturiname = motivrouturiname; + } + + public String getNonmotivrouturiname() { + return this.nonmotivrouturiname; + } + + public void setNonmotivrouturiname(String nonmotivrouturiname) { + this.nonmotivrouturiname = nonmotivrouturiname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr03.java b/src/model/Tseaifr03.java new file mode 100644 index 0000000..0e526d2 --- /dev/null +++ b/src/model/Tseaifr03.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr03 database table. + * + */ +@Entity +@Table(name="tseaifr03") +@NamedQuery(name="Tseaifr03.findAll", query="SELECT t FROM Tseaifr03 t") +public class Tseaifr03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr03PK id; + + @Column(length=200) + private String bzwkfldname; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=1) + private String modfimgtstusdstcd; + + @Column(length=3) + private String msgdstcd; + + public Tseaifr03() { + } + + public Tseaifr03PK getId() { + return this.id; + } + + public void setId(Tseaifr03PK id) { + this.id = id; + } + + public String getBzwkfldname() { + return this.bzwkfldname; + } + + public void setBzwkfldname(String bzwkfldname) { + this.bzwkfldname = bzwkfldname; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getModfimgtstusdstcd() { + return this.modfimgtstusdstcd; + } + + public void setModfimgtstusdstcd(String modfimgtstusdstcd) { + this.modfimgtstusdstcd = modfimgtstusdstcd; + } + + public String getMsgdstcd() { + return this.msgdstcd; + } + + public void setMsgdstcd(String msgdstcd) { + this.msgdstcd = msgdstcd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr03PK.java b/src/model/Tseaifr03PK.java new file mode 100644 index 0000000..aa7b36a --- /dev/null +++ b/src/model/Tseaifr03PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr03 database table. + * + */ +@Embeddable +public class Tseaifr03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=2) + private String etractdstcd; + + @Column(unique=true, nullable=false) + private Integer fldprcssno; + + public Tseaifr03PK() { + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getEtractdstcd() { + return this.etractdstcd; + } + public void setEtractdstcd(String etractdstcd) { + this.etractdstcd = etractdstcd; + } + public Integer getFldprcssno() { + return this.fldprcssno; + } + public void setFldprcssno(Integer fldprcssno) { + this.fldprcssno = fldprcssno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr03PK)) { + return false; + } + Tseaifr03PK castOther = (Tseaifr03PK)other; + return + this.eaisvcname.equals(castOther.eaisvcname) + && this.etractdstcd.equals(castOther.etractdstcd) + && this.fldprcssno.equals(castOther.fldprcssno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.etractdstcd.hashCode(); + hash = hash * prime + this.fldprcssno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr04.java b/src/model/Tseaifr04.java new file mode 100644 index 0000000..2000cc7 --- /dev/null +++ b/src/model/Tseaifr04.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaifr04 database table. + * + */ +@Entity +@Table(name="tseaifr04") +@NamedQuery(name="Tseaifr04.findAll", query="SELECT t FROM Tseaifr04 t") +public class Tseaifr04 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr04PK id; + + @Column(length=400) + private String bzwkfldname; + + @Column(length=100) + private String clsname; + + private Integer msgfldlen; + + @Column(precision=10) + private BigDecimal msgfldstartsituval; + + @Column(length=50) + private String nomalprcssctnt; + + public Tseaifr04() { + } + + public Tseaifr04PK getId() { + return this.id; + } + + public void setId(Tseaifr04PK id) { + this.id = id; + } + + public String getBzwkfldname() { + return this.bzwkfldname; + } + + public void setBzwkfldname(String bzwkfldname) { + this.bzwkfldname = bzwkfldname; + } + + public String getClsname() { + return this.clsname; + } + + public void setClsname(String clsname) { + this.clsname = clsname; + } + + public Integer getMsgfldlen() { + return this.msgfldlen; + } + + public void setMsgfldlen(Integer msgfldlen) { + this.msgfldlen = msgfldlen; + } + + public BigDecimal getMsgfldstartsituval() { + return this.msgfldstartsituval; + } + + public void setMsgfldstartsituval(BigDecimal msgfldstartsituval) { + this.msgfldstartsituval = msgfldstartsituval; + } + + public String getNomalprcssctnt() { + return this.nomalprcssctnt; + } + + public void setNomalprcssctnt(String nomalprcssctnt) { + this.nomalprcssctnt = nomalprcssctnt; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr04PK.java b/src/model/Tseaifr04PK.java new file mode 100644 index 0000000..9e604d8 --- /dev/null +++ b/src/model/Tseaifr04PK.java @@ -0,0 +1,90 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr04 database table. + * + */ +@Embeddable +public class Tseaifr04PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=3) + private String msgdstcd; + + @Column(unique=true, nullable=false, length=1) + private String iodstcd; + + @Column(unique=true, nullable=false) + private Integer groupinorno; + + @Column(unique=true, nullable=false) + private Integer fldprcssno; + + public Tseaifr04PK() { + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getMsgdstcd() { + return this.msgdstcd; + } + public void setMsgdstcd(String msgdstcd) { + this.msgdstcd = msgdstcd; + } + public String getIodstcd() { + return this.iodstcd; + } + public void setIodstcd(String iodstcd) { + this.iodstcd = iodstcd; + } + public Integer getGroupinorno() { + return this.groupinorno; + } + public void setGroupinorno(Integer groupinorno) { + this.groupinorno = groupinorno; + } + public Integer getFldprcssno() { + return this.fldprcssno; + } + public void setFldprcssno(Integer fldprcssno) { + this.fldprcssno = fldprcssno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr04PK)) { + return false; + } + Tseaifr04PK castOther = (Tseaifr04PK)other; + return + this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.msgdstcd.equals(castOther.msgdstcd) + && this.iodstcd.equals(castOther.iodstcd) + && this.groupinorno.equals(castOther.groupinorno) + && this.fldprcssno.equals(castOther.fldprcssno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.msgdstcd.hashCode(); + hash = hash * prime + this.iodstcd.hashCode(); + hash = hash * prime + this.groupinorno.hashCode(); + hash = hash * prime + this.fldprcssno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr05.java b/src/model/Tseaifr05.java new file mode 100644 index 0000000..7387521 --- /dev/null +++ b/src/model/Tseaifr05.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr05 database table. + * + */ +@Entity +@Table(name="tseaifr05") +@NamedQuery(name="Tseaifr05.findAll", query="SELECT t FROM Tseaifr05 t") +public class Tseaifr05 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=200) + private String lifecyclclsname; + + @Column(length=1) + private String lifecyclusedstcd; + + private Integer lodinseq; + + public Tseaifr05() { + } + + public String getLifecyclclsname() { + return this.lifecyclclsname; + } + + public void setLifecyclclsname(String lifecyclclsname) { + this.lifecyclclsname = lifecyclclsname; + } + + public String getLifecyclusedstcd() { + return this.lifecyclusedstcd; + } + + public void setLifecyclusedstcd(String lifecyclusedstcd) { + this.lifecyclusedstcd = lifecyclusedstcd; + } + + public Integer getLodinseq() { + return this.lodinseq; + } + + public void setLodinseq(Integer lodinseq) { + this.lodinseq = lodinseq; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr06.java b/src/model/Tseaifr06.java new file mode 100644 index 0000000..c131a73 --- /dev/null +++ b/src/model/Tseaifr06.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr06 database table. + * + */ +@Entity +@Table(name="tseaifr06") +@NamedQuery(name="Tseaifr06.findAll", query="SELECT t FROM Tseaifr06 t") +public class Tseaifr06 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr06PK id; + + @Column(length=100) + private String adptrroutclsname; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=1) + private String modfimgtstusdstcd; + + @Column(length=100) + private String svcroutclsname; + + public Tseaifr06() { + } + + public Tseaifr06PK getId() { + return this.id; + } + + public void setId(Tseaifr06PK id) { + this.id = id; + } + + public String getAdptrroutclsname() { + return this.adptrroutclsname; + } + + public void setAdptrroutclsname(String adptrroutclsname) { + this.adptrroutclsname = adptrroutclsname; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getModfimgtstusdstcd() { + return this.modfimgtstusdstcd; + } + + public void setModfimgtstusdstcd(String modfimgtstusdstcd) { + this.modfimgtstusdstcd = modfimgtstusdstcd; + } + + public String getSvcroutclsname() { + return this.svcroutclsname; + } + + public void setSvcroutclsname(String svcroutclsname) { + this.svcroutclsname = svcroutclsname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr06PK.java b/src/model/Tseaifr06PK.java new file mode 100644 index 0000000..01cd403 --- /dev/null +++ b/src/model/Tseaifr06PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr06 database table. + * + */ +@Embeddable +public class Tseaifr06PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false) + private Integer svcprcssno; + + public Tseaifr06PK() { + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public Integer getSvcprcssno() { + return this.svcprcssno; + } + public void setSvcprcssno(Integer svcprcssno) { + this.svcprcssno = svcprcssno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr06PK)) { + return false; + } + Tseaifr06PK castOther = (Tseaifr06PK)other; + return + this.eaisvcname.equals(castOther.eaisvcname) + && this.svcprcssno.equals(castOther.svcprcssno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.svcprcssno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr07.java b/src/model/Tseaifr07.java new file mode 100644 index 0000000..11f83f2 --- /dev/null +++ b/src/model/Tseaifr07.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr07 database table. + * + */ +@Entity +@Table(name="tseaifr07") +@NamedQuery(name="Tseaifr07.findAll", query="SELECT t FROM Tseaifr07 t") +public class Tseaifr07 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr07PK id; + + @Column(length=50) + private String adptrbzwkname; + + @Column(length=50) + private String psvsysadptrbzwkgroupname; + + public Tseaifr07() { + } + + public Tseaifr07PK getId() { + return this.id; + } + + public void setId(Tseaifr07PK id) { + this.id = id; + } + + public String getAdptrbzwkname() { + return this.adptrbzwkname; + } + + public void setAdptrbzwkname(String adptrbzwkname) { + this.adptrbzwkname = adptrbzwkname; + } + + public String getPsvsysadptrbzwkgroupname() { + return this.psvsysadptrbzwkgroupname; + } + + public void setPsvsysadptrbzwkgroupname(String psvsysadptrbzwkgroupname) { + this.psvsysadptrbzwkgroupname = psvsysadptrbzwkgroupname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr07PK.java b/src/model/Tseaifr07PK.java new file mode 100644 index 0000000..8d6326f --- /dev/null +++ b/src/model/Tseaifr07PK.java @@ -0,0 +1,79 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr07 database table. + * + */ +@Embeddable +public class Tseaifr07PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=8) + private String extnlinstiidnfiname; + + @Column(unique=true, nullable=false, length=30) + private String dmnddtalsbzwkdsticname; + + public Tseaifr07PK() { + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getExtnlinstiidnfiname() { + return this.extnlinstiidnfiname; + } + public void setExtnlinstiidnfiname(String extnlinstiidnfiname) { + this.extnlinstiidnfiname = extnlinstiidnfiname; + } + public String getDmnddtalsbzwkdsticname() { + return this.dmnddtalsbzwkdsticname; + } + public void setDmnddtalsbzwkdsticname(String dmnddtalsbzwkdsticname) { + this.dmnddtalsbzwkdsticname = dmnddtalsbzwkdsticname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr07PK)) { + return false; + } + Tseaifr07PK castOther = (Tseaifr07PK)other; + return + this.eaisevrinstncname.equals(castOther.eaisevrinstncname) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.extnlinstiidnfiname.equals(castOther.extnlinstiidnfiname) + && this.dmnddtalsbzwkdsticname.equals(castOther.dmnddtalsbzwkdsticname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisevrinstncname.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.extnlinstiidnfiname.hashCode(); + hash = hash * prime + this.dmnddtalsbzwkdsticname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr08.java b/src/model/Tseaifr08.java new file mode 100644 index 0000000..0805fae --- /dev/null +++ b/src/model/Tseaifr08.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr08 database table. + * + */ +@Entity +@Table(name="tseaifr08") +@NamedQuery(name="Tseaifr08.findAll", query="SELECT t FROM Tseaifr08 t") +public class Tseaifr08 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=10) + private String codename; + + @Column(length=40) + private String nodename; + + @Column(length=40) + private String queuename; + + public Tseaifr08() { + } + + public String getCodename() { + return this.codename; + } + + public void setCodename(String codename) { + this.codename = codename; + } + + public String getNodename() { + return this.nodename; + } + + public void setNodename(String nodename) { + this.nodename = nodename; + } + + public String getQueuename() { + return this.queuename; + } + + public void setQueuename(String queuename) { + this.queuename = queuename; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr09.java b/src/model/Tseaifr09.java new file mode 100644 index 0000000..e449ab5 --- /dev/null +++ b/src/model/Tseaifr09.java @@ -0,0 +1,73 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr09 database table. + * + */ +@Entity +@Table(name="tseaifr09") +@NamedQuery(name="Tseaifr09.findAll", query="SELECT t FROM Tseaifr09 t") +public class Tseaifr09 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr09PK id; + + private Integer threshold; + + private Integer thresholdpersecond; + + @Column(length=12) + private String thresholdtimeunit; + + @Column(length=1) + private String useyn; + + public Tseaifr09() { + } + + public Tseaifr09PK getId() { + return this.id; + } + + public void setId(Tseaifr09PK id) { + this.id = id; + } + + public Integer getThreshold() { + return this.threshold; + } + + public void setThreshold(Integer threshold) { + this.threshold = threshold; + } + + public Integer getThresholdpersecond() { + return this.thresholdpersecond; + } + + public void setThresholdpersecond(Integer thresholdpersecond) { + this.thresholdpersecond = thresholdpersecond; + } + + public String getThresholdtimeunit() { + return this.thresholdtimeunit; + } + + public void setThresholdtimeunit(String thresholdtimeunit) { + this.thresholdtimeunit = thresholdtimeunit; + } + + public String getUseyn() { + return this.useyn; + } + + public void setUseyn(String useyn) { + this.useyn = useyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr09PK.java b/src/model/Tseaifr09PK.java new file mode 100644 index 0000000..67c6c1a --- /dev/null +++ b/src/model/Tseaifr09PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr09 database table. + * + */ +@Embeddable +public class Tseaifr09PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=20) + private String type; + + @Column(unique=true, nullable=false, length=100) + private String name; + + public Tseaifr09PK() { + } + public String getType() { + return this.type; + } + public void setType(String type) { + this.type = type; + } + public String getName() { + return this.name; + } + public void setName(String name) { + this.name = name; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr09PK)) { + return false; + } + Tseaifr09PK castOther = (Tseaifr09PK)other; + return + this.type.equals(castOther.type) + && this.name.equals(castOther.name); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.type.hashCode(); + hash = hash * prime + this.name.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr10.java b/src/model/Tseaifr10.java new file mode 100644 index 0000000..1103a1e --- /dev/null +++ b/src/model/Tseaifr10.java @@ -0,0 +1,64 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr10 database table. + * + */ +@Entity +@Table(name="tseaifr10") +@NamedQuery(name="Tseaifr10.findAll", query="SELECT t FROM Tseaifr10 t") +public class Tseaifr10 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr10PK id; + + @Column(length=8) + private String enddate; + + @Column(length=8) + private String startdate; + + @Column(length=1) + private String useyn; + + public Tseaifr10() { + } + + public Tseaifr10PK getId() { + return this.id; + } + + public void setId(Tseaifr10PK id) { + this.id = id; + } + + public String getEnddate() { + return this.enddate; + } + + public void setEnddate(String enddate) { + this.enddate = enddate; + } + + public String getStartdate() { + return this.startdate; + } + + public void setStartdate(String startdate) { + this.startdate = startdate; + } + + public String getUseyn() { + return this.useyn; + } + + public void setUseyn(String useyn) { + this.useyn = useyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr10PK.java b/src/model/Tseaifr10PK.java new file mode 100644 index 0000000..093ea1e --- /dev/null +++ b/src/model/Tseaifr10PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr10 database table. + * + */ +@Embeddable +public class Tseaifr10PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=20) + private String type; + + @Column(unique=true, nullable=false, length=100) + private String name; + + public Tseaifr10PK() { + } + public String getType() { + return this.type; + } + public void setType(String type) { + this.type = type; + } + public String getName() { + return this.name; + } + public void setName(String name) { + this.name = name; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr10PK)) { + return false; + } + Tseaifr10PK castOther = (Tseaifr10PK)other; + return + this.type.equals(castOther.type) + && this.name.equals(castOther.name); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.type.hashCode(); + hash = hash * prime + this.name.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaifr11.java b/src/model/Tseaifr11.java new file mode 100644 index 0000000..46c783b --- /dev/null +++ b/src/model/Tseaifr11.java @@ -0,0 +1,95 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaifr11 database table. + * + */ +@Entity +@Table(name="tseaifr11") +@NamedQuery(name="Tseaifr11.findAll", query="SELECT t FROM Tseaifr11 t") +public class Tseaifr11 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaifr11PK id; + + @Column(length=50) + private String adptrbzwkgroupname; + + @Column(length=20) + private String eaisevrinstncname; + + @Column(length=30) + private String eaisvcname; + + private Integer threshold; + + private Integer thresholdpersecond; + + @Column(length=12) + private String thresholdtimeunit; + + public Tseaifr11() { + } + + public Tseaifr11PK getId() { + return this.id; + } + + public void setId(Tseaifr11PK id) { + this.id = id; + } + + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public Integer getThreshold() { + return this.threshold; + } + + public void setThreshold(Integer threshold) { + this.threshold = threshold; + } + + public Integer getThresholdpersecond() { + return this.thresholdpersecond; + } + + public void setThresholdpersecond(Integer thresholdpersecond) { + this.thresholdpersecond = thresholdpersecond; + } + + public String getThresholdtimeunit() { + return this.thresholdtimeunit; + } + + public void setThresholdtimeunit(String thresholdtimeunit) { + this.thresholdtimeunit = thresholdtimeunit; + } + +} \ No newline at end of file diff --git a/src/model/Tseaifr11PK.java b/src/model/Tseaifr11PK.java new file mode 100644 index 0000000..756ce3f --- /dev/null +++ b/src/model/Tseaifr11PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaifr11 database table. + * + */ +@Embeddable +public class Tseaifr11PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=17) + private String msgdpstyms; + + @Column(unique=true, nullable=false, length=41) + private String eaisvcserno; + + public Tseaifr11PK() { + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getMsgdpstyms() { + return this.msgdpstyms; + } + public void setMsgdpstyms(String msgdpstyms) { + this.msgdpstyms = msgdpstyms; + } + public String getEaisvcserno() { + return this.eaisvcserno; + } + public void setEaisvcserno(String eaisvcserno) { + this.eaisvcserno = eaisvcserno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaifr11PK)) { + return false; + } + Tseaifr11PK castOther = (Tseaifr11PK)other; + return + this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.msgdpstyms.equals(castOther.msgdpstyms) + && this.eaisvcserno.equals(castOther.eaisvcserno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.msgdpstyms.hashCode(); + hash = hash * prime + this.eaisvcserno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaihe01.java b/src/model/Tseaihe01.java new file mode 100644 index 0000000..1bc9a53 --- /dev/null +++ b/src/model/Tseaihe01.java @@ -0,0 +1,337 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaihe01 database table. + * + */ +@Entity +@Table(name="tseaihe01") +@NamedQuery(name="Tseaihe01.findAll", query="SELECT t FROM Tseaihe01 t") +public class Tseaihe01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=20) + private String author; + + @Column(length=50) + private String dmnderrchngidname; + + @Column(length=50) + private String dmnderrfldname; + + @Column(length=4) + private String eaibzwkdstcd; + + @Column(length=3) + private String eaigroupcocd; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=400) + private String eaisvcdesc; + + @Column(nullable=false, length=30) + private String eaisvcname; + + @Column(length=30) + private String erreaisvcname; + + @Column(length=5) + private String extbizcd; + + @Column(length=50) + private String flowctrlroutname; + + @Column(length=50) + private String gstatsysadptrbzwkgroupname; + + @Column(length=1) + private String internalexternaldvcd; + + @Column(length=6) + private String intgradsticname; + + @Column(length=1) + private String modfimgtstusdstcd; + + @Column(length=200) + private String refkey; + + @Column(length=50) + private String rspnserrchngidname; + + @Column(length=50) + private String rspnserrfldname; + + private Integer sevrloglvelno; + + @Column(length=1) + private String svcbfclmnlogyn; + + @Column(length=1) + private String svchmseonot; + + private Integer svcloglvelno; + + @Column(length=4) + private String svcmotivusedstcd; + + @Column(length=10) + private String svcprcesdsticname; + + @Column(length=1) + private String trantype; + + @Column(length=20) + private String txid; + + @Column(length=1) + private String useyn; + + @Column(length=5) + private String verinfo; + + public Tseaihe01() { + } + + public String getAuthor() { + return this.author; + } + + public void setAuthor(String author) { + this.author = author; + } + + public String getDmnderrchngidname() { + return this.dmnderrchngidname; + } + + public void setDmnderrchngidname(String dmnderrchngidname) { + this.dmnderrchngidname = dmnderrchngidname; + } + + public String getDmnderrfldname() { + return this.dmnderrfldname; + } + + public void setDmnderrfldname(String dmnderrfldname) { + this.dmnderrfldname = dmnderrfldname; + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public String getEaigroupcocd() { + return this.eaigroupcocd; + } + + public void setEaigroupcocd(String eaigroupcocd) { + this.eaigroupcocd = eaigroupcocd; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getEaisvcdesc() { + return this.eaisvcdesc; + } + + public void setEaisvcdesc(String eaisvcdesc) { + this.eaisvcdesc = eaisvcdesc; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getErreaisvcname() { + return this.erreaisvcname; + } + + public void setErreaisvcname(String erreaisvcname) { + this.erreaisvcname = erreaisvcname; + } + + public String getExtbizcd() { + return this.extbizcd; + } + + public void setExtbizcd(String extbizcd) { + this.extbizcd = extbizcd; + } + + public String getFlowctrlroutname() { + return this.flowctrlroutname; + } + + public void setFlowctrlroutname(String flowctrlroutname) { + this.flowctrlroutname = flowctrlroutname; + } + + public String getGstatsysadptrbzwkgroupname() { + return this.gstatsysadptrbzwkgroupname; + } + + public void setGstatsysadptrbzwkgroupname(String gstatsysadptrbzwkgroupname) { + this.gstatsysadptrbzwkgroupname = gstatsysadptrbzwkgroupname; + } + + public String getInternalexternaldvcd() { + return this.internalexternaldvcd; + } + + public void setInternalexternaldvcd(String internalexternaldvcd) { + this.internalexternaldvcd = internalexternaldvcd; + } + + public String getIntgradsticname() { + return this.intgradsticname; + } + + public void setIntgradsticname(String intgradsticname) { + this.intgradsticname = intgradsticname; + } + + public String getModfimgtstusdstcd() { + return this.modfimgtstusdstcd; + } + + public void setModfimgtstusdstcd(String modfimgtstusdstcd) { + this.modfimgtstusdstcd = modfimgtstusdstcd; + } + + public String getRefkey() { + return this.refkey; + } + + public void setRefkey(String refkey) { + this.refkey = refkey; + } + + public String getRspnserrchngidname() { + return this.rspnserrchngidname; + } + + public void setRspnserrchngidname(String rspnserrchngidname) { + this.rspnserrchngidname = rspnserrchngidname; + } + + public String getRspnserrfldname() { + return this.rspnserrfldname; + } + + public void setRspnserrfldname(String rspnserrfldname) { + this.rspnserrfldname = rspnserrfldname; + } + + public Integer getSevrloglvelno() { + return this.sevrloglvelno; + } + + public void setSevrloglvelno(Integer sevrloglvelno) { + this.sevrloglvelno = sevrloglvelno; + } + + public String getSvcbfclmnlogyn() { + return this.svcbfclmnlogyn; + } + + public void setSvcbfclmnlogyn(String svcbfclmnlogyn) { + this.svcbfclmnlogyn = svcbfclmnlogyn; + } + + public String getSvchmseonot() { + return this.svchmseonot; + } + + public void setSvchmseonot(String svchmseonot) { + this.svchmseonot = svchmseonot; + } + + public Integer getSvcloglvelno() { + return this.svcloglvelno; + } + + public void setSvcloglvelno(Integer svcloglvelno) { + this.svcloglvelno = svcloglvelno; + } + + public String getSvcmotivusedstcd() { + return this.svcmotivusedstcd; + } + + public void setSvcmotivusedstcd(String svcmotivusedstcd) { + this.svcmotivusedstcd = svcmotivusedstcd; + } + + public String getSvcprcesdsticname() { + return this.svcprcesdsticname; + } + + public void setSvcprcesdsticname(String svcprcesdsticname) { + this.svcprcesdsticname = svcprcesdsticname; + } + + public String getTrantype() { + return this.trantype; + } + + public void setTrantype(String trantype) { + this.trantype = trantype; + } + + public String getTxid() { + return this.txid; + } + + public void setTxid(String txid) { + this.txid = txid; + } + + public String getUseyn() { + return this.useyn; + } + + public void setUseyn(String useyn) { + this.useyn = useyn; + } + + public String getVerinfo() { + return this.verinfo; + } + + public void setVerinfo(String verinfo) { + this.verinfo = verinfo; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihe02.java b/src/model/Tseaihe02.java new file mode 100644 index 0000000..9c62dfa --- /dev/null +++ b/src/model/Tseaihe02.java @@ -0,0 +1,295 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaihe02 database table. + * + */ +@Entity +@Table(name="tseaihe02") +@NamedQuery(name="Tseaihe02.findAll", query="SELECT t FROM Tseaihe02 t") +public class Tseaihe02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=1) + private String bascrspnschngeonot; + + @Column(length=50) + private String bascrspnschngmsgidname; + + @Column(length=20) + private String bascrspnsmsgcmprctnt; + + @Column(length=1) + private String chngeonot; + + @Column(length=50) + private String chngmsgidname; + + @Column(length=20) + private String cmpensvcprcssdsticname; + + @Column(nullable=false, length=30) + private String eaisvcname; + + @Column(length=1) + private String errrspnschngeonot; + + @Column(length=50) + private String errrspnschngmsgidname; + + @Column(length=20) + private String errrspnsmsgcmprctnt; + + @Column(length=1) + private String flovryn; + + @Column(length=2) + private String hdrctrldstcd; + + @Column(length=100) + private String hdrrefclsname; + + private Integer nextsvcprcssno; + + @Column(length=50) + private String outbndroutname; + + @Column(length=4) + private String psvintfacdsticname; + + @Column(length=50) + private String psvsysadptrbzwkgroupname; + + @Column(length=4) + private String psvsysbzwkdstcd; + + @Column(length=12) + private String psvsysidname; + + @Column(length=20) + private String psvsyssvcdsticname; + + @Column(length=1000) + private String restoption; + + @Column(length=1) + private String suppldelyn; + + @Column(nullable=false) + private Integer svcprcssno; + + @Column(length=2) + private String timeoutcode; + + @Column(precision=10) + private BigDecimal toutval; + + public Tseaihe02() { + } + + public String getBascrspnschngeonot() { + return this.bascrspnschngeonot; + } + + public void setBascrspnschngeonot(String bascrspnschngeonot) { + this.bascrspnschngeonot = bascrspnschngeonot; + } + + public String getBascrspnschngmsgidname() { + return this.bascrspnschngmsgidname; + } + + public void setBascrspnschngmsgidname(String bascrspnschngmsgidname) { + this.bascrspnschngmsgidname = bascrspnschngmsgidname; + } + + public String getBascrspnsmsgcmprctnt() { + return this.bascrspnsmsgcmprctnt; + } + + public void setBascrspnsmsgcmprctnt(String bascrspnsmsgcmprctnt) { + this.bascrspnsmsgcmprctnt = bascrspnsmsgcmprctnt; + } + + public String getChngeonot() { + return this.chngeonot; + } + + public void setChngeonot(String chngeonot) { + this.chngeonot = chngeonot; + } + + public String getChngmsgidname() { + return this.chngmsgidname; + } + + public void setChngmsgidname(String chngmsgidname) { + this.chngmsgidname = chngmsgidname; + } + + public String getCmpensvcprcssdsticname() { + return this.cmpensvcprcssdsticname; + } + + public void setCmpensvcprcssdsticname(String cmpensvcprcssdsticname) { + this.cmpensvcprcssdsticname = cmpensvcprcssdsticname; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getErrrspnschngeonot() { + return this.errrspnschngeonot; + } + + public void setErrrspnschngeonot(String errrspnschngeonot) { + this.errrspnschngeonot = errrspnschngeonot; + } + + public String getErrrspnschngmsgidname() { + return this.errrspnschngmsgidname; + } + + public void setErrrspnschngmsgidname(String errrspnschngmsgidname) { + this.errrspnschngmsgidname = errrspnschngmsgidname; + } + + public String getErrrspnsmsgcmprctnt() { + return this.errrspnsmsgcmprctnt; + } + + public void setErrrspnsmsgcmprctnt(String errrspnsmsgcmprctnt) { + this.errrspnsmsgcmprctnt = errrspnsmsgcmprctnt; + } + + public String getFlovryn() { + return this.flovryn; + } + + public void setFlovryn(String flovryn) { + this.flovryn = flovryn; + } + + public String getHdrctrldstcd() { + return this.hdrctrldstcd; + } + + public void setHdrctrldstcd(String hdrctrldstcd) { + this.hdrctrldstcd = hdrctrldstcd; + } + + public String getHdrrefclsname() { + return this.hdrrefclsname; + } + + public void setHdrrefclsname(String hdrrefclsname) { + this.hdrrefclsname = hdrrefclsname; + } + + public Integer getNextsvcprcssno() { + return this.nextsvcprcssno; + } + + public void setNextsvcprcssno(Integer nextsvcprcssno) { + this.nextsvcprcssno = nextsvcprcssno; + } + + public String getOutbndroutname() { + return this.outbndroutname; + } + + public void setOutbndroutname(String outbndroutname) { + this.outbndroutname = outbndroutname; + } + + public String getPsvintfacdsticname() { + return this.psvintfacdsticname; + } + + public void setPsvintfacdsticname(String psvintfacdsticname) { + this.psvintfacdsticname = psvintfacdsticname; + } + + public String getPsvsysadptrbzwkgroupname() { + return this.psvsysadptrbzwkgroupname; + } + + public void setPsvsysadptrbzwkgroupname(String psvsysadptrbzwkgroupname) { + this.psvsysadptrbzwkgroupname = psvsysadptrbzwkgroupname; + } + + public String getPsvsysbzwkdstcd() { + return this.psvsysbzwkdstcd; + } + + public void setPsvsysbzwkdstcd(String psvsysbzwkdstcd) { + this.psvsysbzwkdstcd = psvsysbzwkdstcd; + } + + public String getPsvsysidname() { + return this.psvsysidname; + } + + public void setPsvsysidname(String psvsysidname) { + this.psvsysidname = psvsysidname; + } + + public String getPsvsyssvcdsticname() { + return this.psvsyssvcdsticname; + } + + public void setPsvsyssvcdsticname(String psvsyssvcdsticname) { + this.psvsyssvcdsticname = psvsyssvcdsticname; + } + + public String getRestoption() { + return this.restoption; + } + + public void setRestoption(String restoption) { + this.restoption = restoption; + } + + public String getSuppldelyn() { + return this.suppldelyn; + } + + public void setSuppldelyn(String suppldelyn) { + this.suppldelyn = suppldelyn; + } + + public Integer getSvcprcssno() { + return this.svcprcssno; + } + + public void setSvcprcssno(Integer svcprcssno) { + this.svcprcssno = svcprcssno; + } + + public String getTimeoutcode() { + return this.timeoutcode; + } + + public void setTimeoutcode(String timeoutcode) { + this.timeoutcode = timeoutcode; + } + + public BigDecimal getToutval() { + return this.toutval; + } + + public void setToutval(BigDecimal toutval) { + this.toutval = toutval; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihe03.java b/src/model/Tseaihe03.java new file mode 100644 index 0000000..5de11fc --- /dev/null +++ b/src/model/Tseaihe03.java @@ -0,0 +1,315 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaihe03 database table. + * + */ +@Entity +@Table(name="tseaihe03") +@NamedQuery(name="Tseaihe03.findAll", query="SELECT t FROM Tseaihe03 t") +public class Tseaihe03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaihe03PK id; + + @Column(length=200) + private String adptrbzwkgroupdesc; + + @Column(length=1) + private String bascrspnschngeonot; + + @Column(length=50) + private String bascrspnschngmsgidname; + + @Column(length=20) + private String bascrspnsmsgcmprctnt; + + @Column(length=1) + private String chngeonot; + + @Column(length=50) + private String chngmsgidname; + + @Column(length=20) + private String cmpensvcprcssdsticname; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=1) + private String errrspnschngeonot; + + @Column(length=50) + private String errrspnschngmsgidname; + + @Column(length=20) + private String errrspnsmsgcmprctnt; + + @Column(length=1) + private String flovryn; + + @Column(length=2) + private String hdrctrldstcd; + + @Column(length=100) + private String hdrrefclsname; + + @Column(length=1) + private String modfimgtstusdstcd; + + private Integer nextsvcprcssno; + + @Column(length=50) + private String outbndroutname; + + @Column(length=4) + private String psvintfacdsticname; + + @Column(length=50) + private String psvsysadptrbzwkgroupname; + + @Column(length=4) + private String psvsysbzwkdstcd; + + @Column(length=12) + private String psvsysidname; + + @Column(length=20) + private String psvsyssvcdsticname; + + @Column(length=1) + private String suppldelyn; + + private Integer toutval; + + @Column(length=1) + private String useyn; + + public Tseaihe03() { + } + + public Tseaihe03PK getId() { + return this.id; + } + + public void setId(Tseaihe03PK id) { + this.id = id; + } + + public String getAdptrbzwkgroupdesc() { + return this.adptrbzwkgroupdesc; + } + + public void setAdptrbzwkgroupdesc(String adptrbzwkgroupdesc) { + this.adptrbzwkgroupdesc = adptrbzwkgroupdesc; + } + + public String getBascrspnschngeonot() { + return this.bascrspnschngeonot; + } + + public void setBascrspnschngeonot(String bascrspnschngeonot) { + this.bascrspnschngeonot = bascrspnschngeonot; + } + + public String getBascrspnschngmsgidname() { + return this.bascrspnschngmsgidname; + } + + public void setBascrspnschngmsgidname(String bascrspnschngmsgidname) { + this.bascrspnschngmsgidname = bascrspnschngmsgidname; + } + + public String getBascrspnsmsgcmprctnt() { + return this.bascrspnsmsgcmprctnt; + } + + public void setBascrspnsmsgcmprctnt(String bascrspnsmsgcmprctnt) { + this.bascrspnsmsgcmprctnt = bascrspnsmsgcmprctnt; + } + + public String getChngeonot() { + return this.chngeonot; + } + + public void setChngeonot(String chngeonot) { + this.chngeonot = chngeonot; + } + + public String getChngmsgidname() { + return this.chngmsgidname; + } + + public void setChngmsgidname(String chngmsgidname) { + this.chngmsgidname = chngmsgidname; + } + + public String getCmpensvcprcssdsticname() { + return this.cmpensvcprcssdsticname; + } + + public void setCmpensvcprcssdsticname(String cmpensvcprcssdsticname) { + this.cmpensvcprcssdsticname = cmpensvcprcssdsticname; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getErrrspnschngeonot() { + return this.errrspnschngeonot; + } + + public void setErrrspnschngeonot(String errrspnschngeonot) { + this.errrspnschngeonot = errrspnschngeonot; + } + + public String getErrrspnschngmsgidname() { + return this.errrspnschngmsgidname; + } + + public void setErrrspnschngmsgidname(String errrspnschngmsgidname) { + this.errrspnschngmsgidname = errrspnschngmsgidname; + } + + public String getErrrspnsmsgcmprctnt() { + return this.errrspnsmsgcmprctnt; + } + + public void setErrrspnsmsgcmprctnt(String errrspnsmsgcmprctnt) { + this.errrspnsmsgcmprctnt = errrspnsmsgcmprctnt; + } + + public String getFlovryn() { + return this.flovryn; + } + + public void setFlovryn(String flovryn) { + this.flovryn = flovryn; + } + + public String getHdrctrldstcd() { + return this.hdrctrldstcd; + } + + public void setHdrctrldstcd(String hdrctrldstcd) { + this.hdrctrldstcd = hdrctrldstcd; + } + + public String getHdrrefclsname() { + return this.hdrrefclsname; + } + + public void setHdrrefclsname(String hdrrefclsname) { + this.hdrrefclsname = hdrrefclsname; + } + + public String getModfimgtstusdstcd() { + return this.modfimgtstusdstcd; + } + + public void setModfimgtstusdstcd(String modfimgtstusdstcd) { + this.modfimgtstusdstcd = modfimgtstusdstcd; + } + + public Integer getNextsvcprcssno() { + return this.nextsvcprcssno; + } + + public void setNextsvcprcssno(Integer nextsvcprcssno) { + this.nextsvcprcssno = nextsvcprcssno; + } + + public String getOutbndroutname() { + return this.outbndroutname; + } + + public void setOutbndroutname(String outbndroutname) { + this.outbndroutname = outbndroutname; + } + + public String getPsvintfacdsticname() { + return this.psvintfacdsticname; + } + + public void setPsvintfacdsticname(String psvintfacdsticname) { + this.psvintfacdsticname = psvintfacdsticname; + } + + public String getPsvsysadptrbzwkgroupname() { + return this.psvsysadptrbzwkgroupname; + } + + public void setPsvsysadptrbzwkgroupname(String psvsysadptrbzwkgroupname) { + this.psvsysadptrbzwkgroupname = psvsysadptrbzwkgroupname; + } + + public String getPsvsysbzwkdstcd() { + return this.psvsysbzwkdstcd; + } + + public void setPsvsysbzwkdstcd(String psvsysbzwkdstcd) { + this.psvsysbzwkdstcd = psvsysbzwkdstcd; + } + + public String getPsvsysidname() { + return this.psvsysidname; + } + + public void setPsvsysidname(String psvsysidname) { + this.psvsysidname = psvsysidname; + } + + public String getPsvsyssvcdsticname() { + return this.psvsyssvcdsticname; + } + + public void setPsvsyssvcdsticname(String psvsyssvcdsticname) { + this.psvsyssvcdsticname = psvsyssvcdsticname; + } + + public String getSuppldelyn() { + return this.suppldelyn; + } + + public void setSuppldelyn(String suppldelyn) { + this.suppldelyn = suppldelyn; + } + + public Integer getToutval() { + return this.toutval; + } + + public void setToutval(Integer toutval) { + this.toutval = toutval; + } + + public String getUseyn() { + return this.useyn; + } + + public void setUseyn(String useyn) { + this.useyn = useyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihe03PK.java b/src/model/Tseaihe03PK.java new file mode 100644 index 0000000..aa3d2cd --- /dev/null +++ b/src/model/Tseaihe03PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaihe03 database table. + * + */ +@Embeddable +public class Tseaihe03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String extnlinstiidnfiname; + + @Column(unique=true, nullable=false) + private Integer svcprcssno; + + public Tseaihe03PK() { + } + public String getExtnlinstiidnfiname() { + return this.extnlinstiidnfiname; + } + public void setExtnlinstiidnfiname(String extnlinstiidnfiname) { + this.extnlinstiidnfiname = extnlinstiidnfiname; + } + public Integer getSvcprcssno() { + return this.svcprcssno; + } + public void setSvcprcssno(Integer svcprcssno) { + this.svcprcssno = svcprcssno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaihe03PK)) { + return false; + } + Tseaihe03PK castOther = (Tseaihe03PK)other; + return + this.extnlinstiidnfiname.equals(castOther.extnlinstiidnfiname) + && this.svcprcssno.equals(castOther.svcprcssno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.extnlinstiidnfiname.hashCode(); + hash = hash * prime + this.svcprcssno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaihe04.java b/src/model/Tseaihe04.java new file mode 100644 index 0000000..fd2bd99 --- /dev/null +++ b/src/model/Tseaihe04.java @@ -0,0 +1,315 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaihe04 database table. + * + */ +@Entity +@Table(name="tseaihe04") +@NamedQuery(name="Tseaihe04.findAll", query="SELECT t FROM Tseaihe04 t") +public class Tseaihe04 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaihe04PK id; + + @Column(length=200) + private String adptrbzwkgroupdesc; + + @Column(length=1) + private String bascrspnschngeonot; + + @Column(length=50) + private String bascrspnschngmsgidname; + + @Column(length=20) + private String bascrspnsmsgcmprctnt; + + @Column(length=1) + private String chngeonot; + + @Column(length=50) + private String chngmsgidname; + + @Column(length=20) + private String cmpensvcprcssdsticname; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=1) + private String errrspnschngeonot; + + @Column(length=50) + private String errrspnschngmsgidname; + + @Column(length=20) + private String errrspnsmsgcmprctnt; + + @Column(length=1) + private String flovryn; + + @Column(length=2) + private String hdrctrldstcd; + + @Column(length=100) + private String hdrrefclsname; + + @Column(length=1) + private String modfimgtstusdstcd; + + private Integer nextsvcprcssno; + + @Column(length=50) + private String outbndroutname; + + @Column(length=4) + private String psvintfacdsticname; + + @Column(length=50) + private String psvsysadptrbzwkgroupname; + + @Column(length=4) + private String psvsysbzwkdstcd; + + @Column(length=12) + private String psvsysidname; + + @Column(length=20) + private String psvsyssvcdsticname; + + @Column(length=1) + private String suppldelyn; + + private Integer toutval; + + @Column(length=1) + private String useyn; + + public Tseaihe04() { + } + + public Tseaihe04PK getId() { + return this.id; + } + + public void setId(Tseaihe04PK id) { + this.id = id; + } + + public String getAdptrbzwkgroupdesc() { + return this.adptrbzwkgroupdesc; + } + + public void setAdptrbzwkgroupdesc(String adptrbzwkgroupdesc) { + this.adptrbzwkgroupdesc = adptrbzwkgroupdesc; + } + + public String getBascrspnschngeonot() { + return this.bascrspnschngeonot; + } + + public void setBascrspnschngeonot(String bascrspnschngeonot) { + this.bascrspnschngeonot = bascrspnschngeonot; + } + + public String getBascrspnschngmsgidname() { + return this.bascrspnschngmsgidname; + } + + public void setBascrspnschngmsgidname(String bascrspnschngmsgidname) { + this.bascrspnschngmsgidname = bascrspnschngmsgidname; + } + + public String getBascrspnsmsgcmprctnt() { + return this.bascrspnsmsgcmprctnt; + } + + public void setBascrspnsmsgcmprctnt(String bascrspnsmsgcmprctnt) { + this.bascrspnsmsgcmprctnt = bascrspnsmsgcmprctnt; + } + + public String getChngeonot() { + return this.chngeonot; + } + + public void setChngeonot(String chngeonot) { + this.chngeonot = chngeonot; + } + + public String getChngmsgidname() { + return this.chngmsgidname; + } + + public void setChngmsgidname(String chngmsgidname) { + this.chngmsgidname = chngmsgidname; + } + + public String getCmpensvcprcssdsticname() { + return this.cmpensvcprcssdsticname; + } + + public void setCmpensvcprcssdsticname(String cmpensvcprcssdsticname) { + this.cmpensvcprcssdsticname = cmpensvcprcssdsticname; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getErrrspnschngeonot() { + return this.errrspnschngeonot; + } + + public void setErrrspnschngeonot(String errrspnschngeonot) { + this.errrspnschngeonot = errrspnschngeonot; + } + + public String getErrrspnschngmsgidname() { + return this.errrspnschngmsgidname; + } + + public void setErrrspnschngmsgidname(String errrspnschngmsgidname) { + this.errrspnschngmsgidname = errrspnschngmsgidname; + } + + public String getErrrspnsmsgcmprctnt() { + return this.errrspnsmsgcmprctnt; + } + + public void setErrrspnsmsgcmprctnt(String errrspnsmsgcmprctnt) { + this.errrspnsmsgcmprctnt = errrspnsmsgcmprctnt; + } + + public String getFlovryn() { + return this.flovryn; + } + + public void setFlovryn(String flovryn) { + this.flovryn = flovryn; + } + + public String getHdrctrldstcd() { + return this.hdrctrldstcd; + } + + public void setHdrctrldstcd(String hdrctrldstcd) { + this.hdrctrldstcd = hdrctrldstcd; + } + + public String getHdrrefclsname() { + return this.hdrrefclsname; + } + + public void setHdrrefclsname(String hdrrefclsname) { + this.hdrrefclsname = hdrrefclsname; + } + + public String getModfimgtstusdstcd() { + return this.modfimgtstusdstcd; + } + + public void setModfimgtstusdstcd(String modfimgtstusdstcd) { + this.modfimgtstusdstcd = modfimgtstusdstcd; + } + + public Integer getNextsvcprcssno() { + return this.nextsvcprcssno; + } + + public void setNextsvcprcssno(Integer nextsvcprcssno) { + this.nextsvcprcssno = nextsvcprcssno; + } + + public String getOutbndroutname() { + return this.outbndroutname; + } + + public void setOutbndroutname(String outbndroutname) { + this.outbndroutname = outbndroutname; + } + + public String getPsvintfacdsticname() { + return this.psvintfacdsticname; + } + + public void setPsvintfacdsticname(String psvintfacdsticname) { + this.psvintfacdsticname = psvintfacdsticname; + } + + public String getPsvsysadptrbzwkgroupname() { + return this.psvsysadptrbzwkgroupname; + } + + public void setPsvsysadptrbzwkgroupname(String psvsysadptrbzwkgroupname) { + this.psvsysadptrbzwkgroupname = psvsysadptrbzwkgroupname; + } + + public String getPsvsysbzwkdstcd() { + return this.psvsysbzwkdstcd; + } + + public void setPsvsysbzwkdstcd(String psvsysbzwkdstcd) { + this.psvsysbzwkdstcd = psvsysbzwkdstcd; + } + + public String getPsvsysidname() { + return this.psvsysidname; + } + + public void setPsvsysidname(String psvsysidname) { + this.psvsysidname = psvsysidname; + } + + public String getPsvsyssvcdsticname() { + return this.psvsyssvcdsticname; + } + + public void setPsvsyssvcdsticname(String psvsyssvcdsticname) { + this.psvsyssvcdsticname = psvsyssvcdsticname; + } + + public String getSuppldelyn() { + return this.suppldelyn; + } + + public void setSuppldelyn(String suppldelyn) { + this.suppldelyn = suppldelyn; + } + + public Integer getToutval() { + return this.toutval; + } + + public void setToutval(Integer toutval) { + this.toutval = toutval; + } + + public String getUseyn() { + return this.useyn; + } + + public void setUseyn(String useyn) { + this.useyn = useyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihe04PK.java b/src/model/Tseaihe04PK.java new file mode 100644 index 0000000..d9f2909 --- /dev/null +++ b/src/model/Tseaihe04PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaihe04 database table. + * + */ +@Embeddable +public class Tseaihe04PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String extnlinstiidnfiname; + + @Column(unique=true, nullable=false) + private Integer svcprcssno; + + public Tseaihe04PK() { + } + public String getExtnlinstiidnfiname() { + return this.extnlinstiidnfiname; + } + public void setExtnlinstiidnfiname(String extnlinstiidnfiname) { + this.extnlinstiidnfiname = extnlinstiidnfiname; + } + public Integer getSvcprcssno() { + return this.svcprcssno; + } + public void setSvcprcssno(Integer svcprcssno) { + this.svcprcssno = svcprcssno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaihe04PK)) { + return false; + } + Tseaihe04PK castOther = (Tseaihe04PK)other; + return + this.extnlinstiidnfiname.equals(castOther.extnlinstiidnfiname) + && this.svcprcssno.equals(castOther.svcprcssno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.extnlinstiidnfiname.hashCode(); + hash = hash * prime + this.svcprcssno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaihs02.java b/src/model/Tseaihs02.java new file mode 100644 index 0000000..3a7f72b --- /dev/null +++ b/src/model/Tseaihs02.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaihs02 database table. + * + */ +@Entity +@Table(name="tseaihs02") +@NamedQuery(name="Tseaihs02.findAll", query="SELECT t FROM Tseaihs02 t") +public class Tseaihs02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaihs02PK id; + + @Column(length=8) + private String eaimsgstorgymd; + + @Column(length=4000) + private String msghdrctnt; + + public Tseaihs02() { + } + + public Tseaihs02PK getId() { + return this.id; + } + + public void setId(Tseaihs02PK id) { + this.id = id; + } + + public String getEaimsgstorgymd() { + return this.eaimsgstorgymd; + } + + public void setEaimsgstorgymd(String eaimsgstorgymd) { + this.eaimsgstorgymd = eaimsgstorgymd; + } + + public String getMsghdrctnt() { + return this.msghdrctnt; + } + + public void setMsghdrctnt(String msghdrctnt) { + this.msghdrctnt = msghdrctnt; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihs02PK.java b/src/model/Tseaihs02PK.java new file mode 100644 index 0000000..7812a69 --- /dev/null +++ b/src/model/Tseaihs02PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaihs02 database table. + * + */ +@Embeddable +public class Tseaihs02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=3) + private String nwuapplcd; + + @Column(unique=true, nullable=false, length=50) + private String keymgtmsgctnt; + + public Tseaihs02PK() { + } + public String getNwuapplcd() { + return this.nwuapplcd; + } + public void setNwuapplcd(String nwuapplcd) { + this.nwuapplcd = nwuapplcd; + } + public String getKeymgtmsgctnt() { + return this.keymgtmsgctnt; + } + public void setKeymgtmsgctnt(String keymgtmsgctnt) { + this.keymgtmsgctnt = keymgtmsgctnt; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaihs02PK)) { + return false; + } + Tseaihs02PK castOther = (Tseaihs02PK)other; + return + this.nwuapplcd.equals(castOther.nwuapplcd) + && this.keymgtmsgctnt.equals(castOther.keymgtmsgctnt); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.nwuapplcd.hashCode(); + hash = hash * prime + this.keymgtmsgctnt.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaihs03.java b/src/model/Tseaihs03.java new file mode 100644 index 0000000..bb06330 --- /dev/null +++ b/src/model/Tseaihs03.java @@ -0,0 +1,132 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaihs03 database table. + * + */ +@Entity +@Table(name="tseaihs03") +@NamedQuery(name="Tseaihs03.findAll", query="SELECT t FROM Tseaihs03 t") +public class Tseaihs03 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=50) + private String columnname; + + @Column(length=200) + private String columndefault; + + @Column(length=400) + private String columndesc; + + @Column(precision=10) + private BigDecimal columnlength; + + @Column(precision=10) + private BigDecimal combodepth; + + @Column(length=40) + private String comboname; + + @Column(length=1) + private String isinterface; + + @Column(length=1) + private String iskey; + + @Column(precision=10) + private BigDecimal keyseq; + + @Column(precision=10) + private BigDecimal orderseq; + + public Tseaihs03() { + } + + public String getColumnname() { + return this.columnname; + } + + public void setColumnname(String columnname) { + this.columnname = columnname; + } + + public String getColumndefault() { + return this.columndefault; + } + + public void setColumndefault(String columndefault) { + this.columndefault = columndefault; + } + + public String getColumndesc() { + return this.columndesc; + } + + public void setColumndesc(String columndesc) { + this.columndesc = columndesc; + } + + public BigDecimal getColumnlength() { + return this.columnlength; + } + + public void setColumnlength(BigDecimal columnlength) { + this.columnlength = columnlength; + } + + public BigDecimal getCombodepth() { + return this.combodepth; + } + + public void setCombodepth(BigDecimal combodepth) { + this.combodepth = combodepth; + } + + public String getComboname() { + return this.comboname; + } + + public void setComboname(String comboname) { + this.comboname = comboname; + } + + public String getIsinterface() { + return this.isinterface; + } + + public void setIsinterface(String isinterface) { + this.isinterface = isinterface; + } + + public String getIskey() { + return this.iskey; + } + + public void setIskey(String iskey) { + this.iskey = iskey; + } + + public BigDecimal getKeyseq() { + return this.keyseq; + } + + public void setKeyseq(BigDecimal keyseq) { + this.keyseq = keyseq; + } + + public BigDecimal getOrderseq() { + return this.orderseq; + } + + public void setOrderseq(BigDecimal orderseq) { + this.orderseq = orderseq; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihs04.java b/src/model/Tseaihs04.java new file mode 100644 index 0000000..4fec143 --- /dev/null +++ b/src/model/Tseaihs04.java @@ -0,0 +1,108 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaihs04 database table. + * + */ +@Entity +@Table(name="tseaihs04") +@NamedQuery(name="Tseaihs04.findAll", query="SELECT t FROM Tseaihs04 t") +public class Tseaihs04 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=200) + private String bzwksvckeyname; + + @Column(length=1) + private String eaidirection; + + @Column(length=17) + private String eailastamndyms; + + @Column(length=1) + private String eaisendrecv; + + @Column(length=1) + private String eaisevrdstcd; + + @Column(length=40) + private String eaisvcname; + + @Column(length=24) + private String eaitranname; + + @Column(length=1) + private String modfimgtstusdstcd; + + public Tseaihs04() { + } + + public String getBzwksvckeyname() { + return this.bzwksvckeyname; + } + + public void setBzwksvckeyname(String bzwksvckeyname) { + this.bzwksvckeyname = bzwksvckeyname; + } + + public String getEaidirection() { + return this.eaidirection; + } + + public void setEaidirection(String eaidirection) { + this.eaidirection = eaidirection; + } + + public String getEailastamndyms() { + return this.eailastamndyms; + } + + public void setEailastamndyms(String eailastamndyms) { + this.eailastamndyms = eailastamndyms; + } + + public String getEaisendrecv() { + return this.eaisendrecv; + } + + public void setEaisendrecv(String eaisendrecv) { + this.eaisendrecv = eaisendrecv; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getEaitranname() { + return this.eaitranname; + } + + public void setEaitranname(String eaitranname) { + this.eaitranname = eaitranname; + } + + public String getModfimgtstusdstcd() { + return this.modfimgtstusdstcd; + } + + public void setModfimgtstusdstcd(String modfimgtstusdstcd) { + this.modfimgtstusdstcd = modfimgtstusdstcd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihs05.java b/src/model/Tseaihs05.java new file mode 100644 index 0000000..bde43d7 --- /dev/null +++ b/src/model/Tseaihs05.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaihs05 database table. + * + */ +@Entity +@Table(name="tseaihs05") +@NamedQuery(name="Tseaihs05.findAll", query="SELECT t FROM Tseaihs05 t") +public class Tseaihs05 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaihs05PK id; + + @Column(length=200) + private String columnvalue; + + public Tseaihs05() { + } + + public Tseaihs05PK getId() { + return this.id; + } + + public void setId(Tseaihs05PK id) { + this.id = id; + } + + public String getColumnvalue() { + return this.columnvalue; + } + + public void setColumnvalue(String columnvalue) { + this.columnvalue = columnvalue; + } + +} \ No newline at end of file diff --git a/src/model/Tseaihs05PK.java b/src/model/Tseaihs05PK.java new file mode 100644 index 0000000..410cf88 --- /dev/null +++ b/src/model/Tseaihs05PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaihs05 database table. + * + */ +@Embeddable +public class Tseaihs05PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=200) + private String bzwksvckeyname; + + @Column(unique=true, nullable=false, length=50) + private String columnname; + + public Tseaihs05PK() { + } + public String getBzwksvckeyname() { + return this.bzwksvckeyname; + } + public void setBzwksvckeyname(String bzwksvckeyname) { + this.bzwksvckeyname = bzwksvckeyname; + } + public String getColumnname() { + return this.columnname; + } + public void setColumnname(String columnname) { + this.columnname = columnname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaihs05PK)) { + return false; + } + Tseaihs05PK castOther = (Tseaihs05PK)other; + return + this.bzwksvckeyname.equals(castOther.bzwksvckeyname) + && this.columnname.equals(castOther.columnname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.bzwksvckeyname.hashCode(); + hash = hash * prime + this.columnname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiif03.java b/src/model/Tseaiif03.java new file mode 100644 index 0000000..e4aa492 --- /dev/null +++ b/src/model/Tseaiif03.java @@ -0,0 +1,163 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiif03 database table. + * + */ +@Entity +@Table(name="tseaiif03") +@NamedQuery(name="Tseaiif03.findAll", query="SELECT t FROM Tseaiif03 t") +public class Tseaiif03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiif03PK id; + + @Column(length=42) + private String bzwkcontactname; + + @Column(length=52) + private String bzwkcontactperson; + + @Column(length=42) + private String bzwkname; + + @Column(length=52) + private String companyitcontactname; + + @Column(length=16) + private String companyitcontacttelno; + + @Column(length=42) + private String companyname; + + @Column(length=20) + private String connetinsticode; + + @Column(length=42) + private String connetinsticodename; + + @Column(length=42) + private String itcontactpointname; + + @Column(length=52) + private String itcontactpointperson1; + + @Column(length=52) + private String itcontactpointperson2; + + @Column(length=1) + private String onlineyn; + + public Tseaiif03() { + } + + public Tseaiif03PK getId() { + return this.id; + } + + public void setId(Tseaiif03PK id) { + this.id = id; + } + + public String getBzwkcontactname() { + return this.bzwkcontactname; + } + + public void setBzwkcontactname(String bzwkcontactname) { + this.bzwkcontactname = bzwkcontactname; + } + + public String getBzwkcontactperson() { + return this.bzwkcontactperson; + } + + public void setBzwkcontactperson(String bzwkcontactperson) { + this.bzwkcontactperson = bzwkcontactperson; + } + + public String getBzwkname() { + return this.bzwkname; + } + + public void setBzwkname(String bzwkname) { + this.bzwkname = bzwkname; + } + + public String getCompanyitcontactname() { + return this.companyitcontactname; + } + + public void setCompanyitcontactname(String companyitcontactname) { + this.companyitcontactname = companyitcontactname; + } + + public String getCompanyitcontacttelno() { + return this.companyitcontacttelno; + } + + public void setCompanyitcontacttelno(String companyitcontacttelno) { + this.companyitcontacttelno = companyitcontacttelno; + } + + public String getCompanyname() { + return this.companyname; + } + + public void setCompanyname(String companyname) { + this.companyname = companyname; + } + + public String getConnetinsticode() { + return this.connetinsticode; + } + + public void setConnetinsticode(String connetinsticode) { + this.connetinsticode = connetinsticode; + } + + public String getConnetinsticodename() { + return this.connetinsticodename; + } + + public void setConnetinsticodename(String connetinsticodename) { + this.connetinsticodename = connetinsticodename; + } + + public String getItcontactpointname() { + return this.itcontactpointname; + } + + public void setItcontactpointname(String itcontactpointname) { + this.itcontactpointname = itcontactpointname; + } + + public String getItcontactpointperson1() { + return this.itcontactpointperson1; + } + + public void setItcontactpointperson1(String itcontactpointperson1) { + this.itcontactpointperson1 = itcontactpointperson1; + } + + public String getItcontactpointperson2() { + return this.itcontactpointperson2; + } + + public void setItcontactpointperson2(String itcontactpointperson2) { + this.itcontactpointperson2 = itcontactpointperson2; + } + + public String getOnlineyn() { + return this.onlineyn; + } + + public void setOnlineyn(String onlineyn) { + this.onlineyn = onlineyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiif03PK.java b/src/model/Tseaiif03PK.java new file mode 100644 index 0000000..a552b5c --- /dev/null +++ b/src/model/Tseaiif03PK.java @@ -0,0 +1,79 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiif03 database table. + * + */ +@Embeddable +public class Tseaiif03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=3) + private String groupcocd; + + @Column(unique=true, nullable=false, length=20) + private String companycode; + + @Column(unique=true, nullable=false, length=3) + private String appcode; + + @Column(unique=true, nullable=false, length=3) + private String bzwkdstcode; + + public Tseaiif03PK() { + } + public String getGroupcocd() { + return this.groupcocd; + } + public void setGroupcocd(String groupcocd) { + this.groupcocd = groupcocd; + } + public String getCompanycode() { + return this.companycode; + } + public void setCompanycode(String companycode) { + this.companycode = companycode; + } + public String getAppcode() { + return this.appcode; + } + public void setAppcode(String appcode) { + this.appcode = appcode; + } + public String getBzwkdstcode() { + return this.bzwkdstcode; + } + public void setBzwkdstcode(String bzwkdstcode) { + this.bzwkdstcode = bzwkdstcode; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiif03PK)) { + return false; + } + Tseaiif03PK castOther = (Tseaiif03PK)other; + return + this.groupcocd.equals(castOther.groupcocd) + && this.companycode.equals(castOther.companycode) + && this.appcode.equals(castOther.appcode) + && this.bzwkdstcode.equals(castOther.bzwkdstcode); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.groupcocd.hashCode(); + hash = hash * prime + this.companycode.hashCode(); + hash = hash * prime + this.appcode.hashCode(); + hash = hash * prime + this.bzwkdstcode.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiil01.java b/src/model/Tseaiil01.java new file mode 100644 index 0000000..9b351c8 --- /dev/null +++ b/src/model/Tseaiil01.java @@ -0,0 +1,108 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiil01 database table. + * + */ +@Entity +@Table(name="tseaiil01") +@NamedQuery(name="Tseaiil01.findAll", query="SELECT t FROM Tseaiil01 t") +public class Tseaiil01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=3) + private String chmnerrcd; + + @Column(nullable=false, length=1) + private String chmnknddstcd; + + @Column(nullable=false, length=1) + private String dtecnvsnyn; + + @Column(nullable=false, length=1) + private String eaiaplyyn; + + @Column(nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(nullable=false, length=50) + private String hostname; + + @Column(nullable=false, length=14) + private String modfimgtmodfiyms; + + @Column(nullable=false, length=20) + private String modfimgtpckagno; + + public Tseaiil01() { + } + + public String getChmnerrcd() { + return this.chmnerrcd; + } + + public void setChmnerrcd(String chmnerrcd) { + this.chmnerrcd = chmnerrcd; + } + + public String getChmnknddstcd() { + return this.chmnknddstcd; + } + + public void setChmnknddstcd(String chmnknddstcd) { + this.chmnknddstcd = chmnknddstcd; + } + + public String getDtecnvsnyn() { + return this.dtecnvsnyn; + } + + public void setDtecnvsnyn(String dtecnvsnyn) { + this.dtecnvsnyn = dtecnvsnyn; + } + + public String getEaiaplyyn() { + return this.eaiaplyyn; + } + + public void setEaiaplyyn(String eaiaplyyn) { + this.eaiaplyyn = eaiaplyyn; + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public String getHostname() { + return this.hostname; + } + + public void setHostname(String hostname) { + this.hostname = hostname; + } + + public String getModfimgtmodfiyms() { + return this.modfimgtmodfiyms; + } + + public void setModfimgtmodfiyms(String modfimgtmodfiyms) { + this.modfimgtmodfiyms = modfimgtmodfiyms; + } + + public String getModfimgtpckagno() { + return this.modfimgtpckagno; + } + + public void setModfimgtpckagno(String modfimgtpckagno) { + this.modfimgtpckagno = modfimgtpckagno; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiil02.java b/src/model/Tseaiil02.java new file mode 100644 index 0000000..83bd058 --- /dev/null +++ b/src/model/Tseaiil02.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiil02 database table. + * + */ +@Entity +@Table(name="tseaiil02") +@NamedQuery(name="Tseaiil02.findAll", query="SELECT t FROM Tseaiil02 t") +public class Tseaiil02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=30) + private String aplychngmsgfldname; + + @Column(nullable=false, length=50) + private String bascrspnschngmsgidname; + + @Column(nullable=false, length=50) + private String chngmsgidname; + + @Column(nullable=false, length=30) + private String eaisvcname; + + @Column(nullable=false, length=50) + private String errrspnschngmsgidname; + + @Column(nullable=false, length=10) + private String psvintfacdsticname; + + public Tseaiil02() { + } + + public String getAplychngmsgfldname() { + return this.aplychngmsgfldname; + } + + public void setAplychngmsgfldname(String aplychngmsgfldname) { + this.aplychngmsgfldname = aplychngmsgfldname; + } + + public String getBascrspnschngmsgidname() { + return this.bascrspnschngmsgidname; + } + + public void setBascrspnschngmsgidname(String bascrspnschngmsgidname) { + this.bascrspnschngmsgidname = bascrspnschngmsgidname; + } + + public String getChngmsgidname() { + return this.chngmsgidname; + } + + public void setChngmsgidname(String chngmsgidname) { + this.chngmsgidname = chngmsgidname; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getErrrspnschngmsgidname() { + return this.errrspnschngmsgidname; + } + + public void setErrrspnschngmsgidname(String errrspnschngmsgidname) { + this.errrspnschngmsgidname = errrspnschngmsgidname; + } + + public String getPsvintfacdsticname() { + return this.psvintfacdsticname; + } + + public void setPsvintfacdsticname(String psvintfacdsticname) { + this.psvintfacdsticname = psvintfacdsticname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiil03.java b/src/model/Tseaiil03.java new file mode 100644 index 0000000..a7a0f43 --- /dev/null +++ b/src/model/Tseaiil03.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiil03 database table. + * + */ +@Entity +@Table(name="tseaiil03") +@NamedQuery(name="Tseaiil03.findAll", query="SELECT t FROM Tseaiil03 t") +public class Tseaiil03 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=3) + private String chmnerrcd; + + @Column(nullable=false, length=100) + private String chmnerrcdhanglname; + + public Tseaiil03() { + } + + public String getChmnerrcd() { + return this.chmnerrcd; + } + + public void setChmnerrcd(String chmnerrcd) { + this.chmnerrcd = chmnerrcd; + } + + public String getChmnerrcdhanglname() { + return this.chmnerrcdhanglname; + } + + public void setChmnerrcdhanglname(String chmnerrcdhanglname) { + this.chmnerrcdhanglname = chmnerrcdhanglname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiil04.java b/src/model/Tseaiil04.java new file mode 100644 index 0000000..5582666 --- /dev/null +++ b/src/model/Tseaiil04.java @@ -0,0 +1,43 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiil04 database table. + * + */ +@Entity +@Table(name="tseaiil04") +@NamedQuery(name="Tseaiil04.findAll", query="SELECT t FROM Tseaiil04 t") +public class Tseaiil04 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=4) + private String eaicardbzwkdstcd; + + @Column(length=4) + private String eaibzwkdstcd; + + public Tseaiil04() { + } + + public String getEaicardbzwkdstcd() { + return this.eaicardbzwkdstcd; + } + + public void setEaicardbzwkdstcd(String eaicardbzwkdstcd) { + this.eaicardbzwkdstcd = eaicardbzwkdstcd; + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaimo01.java b/src/model/Tseaimo01.java new file mode 100644 index 0000000..a82fe77 --- /dev/null +++ b/src/model/Tseaimo01.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaimo01 database table. + * + */ +@Entity +@Table(name="tseaimo01") +@NamedQuery(name="Tseaimo01.findAll", query="SELECT t FROM Tseaimo01 t") +public class Tseaimo01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=8) + private String baseymd; + + @Column(nullable=false, length=200) + private String eaiosidinstiname; + + @Column(nullable=false, length=1) + private String eaisevrdstcd; + + public Tseaimo01() { + } + + public String getBaseymd() { + return this.baseymd; + } + + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + + public String getEaiosidinstiname() { + return this.eaiosidinstiname; + } + + public void setEaiosidinstiname(String eaiosidinstiname) { + this.eaiosidinstiname = eaiosidinstiname; + } + + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaimo02.java b/src/model/Tseaimo02.java new file mode 100644 index 0000000..10f6422 --- /dev/null +++ b/src/model/Tseaimo02.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaimo02 database table. + * + */ +@Entity +@Table(name="tseaimo02") +@NamedQuery(name="Tseaimo02.findAll", query="SELECT t FROM Tseaimo02 t") +public class Tseaimo02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaimo02PK id; + + @Column(length=8) + private String baseymd; + + public Tseaimo02() { + } + + public Tseaimo02PK getId() { + return this.id; + } + + public void setId(Tseaimo02PK id) { + this.id = id; + } + + public String getBaseymd() { + return this.baseymd; + } + + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + +} \ No newline at end of file diff --git a/src/model/Tseaimo02PK.java b/src/model/Tseaimo02PK.java new file mode 100644 index 0000000..4e36116 --- /dev/null +++ b/src/model/Tseaimo02PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaimo02 database table. + * + */ +@Embeddable +public class Tseaimo02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=1) + private String eaisevrdstcd; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=100) + private String bzwkdsticname; + + public Tseaimo02PK() { + } + public String getEaisevrdstcd() { + return this.eaisevrdstcd; + } + public void setEaisevrdstcd(String eaisevrdstcd) { + this.eaisevrdstcd = eaisevrdstcd; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getBzwkdsticname() { + return this.bzwkdsticname; + } + public void setBzwkdsticname(String bzwkdsticname) { + this.bzwkdsticname = bzwkdsticname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaimo02PK)) { + return false; + } + Tseaimo02PK castOther = (Tseaimo02PK)other; + return + this.eaisevrdstcd.equals(castOther.eaisevrdstcd) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.bzwkdsticname.equals(castOther.bzwkdsticname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisevrdstcd.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.bzwkdsticname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaims01.java b/src/model/Tseaims01.java new file mode 100644 index 0000000..835a5a0 --- /dev/null +++ b/src/model/Tseaims01.java @@ -0,0 +1,54 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaims01 database table. + * + */ +@Entity +@Table(name="tseaims01") +@NamedQuery(name="Tseaims01.findAll", query="SELECT t FROM Tseaims01 t") +public class Tseaims01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=12) + private String msg; + + @Column(length=400) + private String msgctnt; + + @Column(length=400) + private String treatmatrctnt; + + public Tseaims01() { + } + + public String getMsg() { + return this.msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getMsgctnt() { + return this.msgctnt; + } + + public void setMsgctnt(String msgctnt) { + this.msgctnt = msgctnt; + } + + public String getTreatmatrctnt() { + return this.treatmatrctnt; + } + + public void setTreatmatrctnt(String treatmatrctnt) { + this.treatmatrctnt = treatmatrctnt; + } + +} \ No newline at end of file diff --git a/src/model/Tseaims02.java b/src/model/Tseaims02.java new file mode 100644 index 0000000..74f78d1 --- /dev/null +++ b/src/model/Tseaims02.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaims02 database table. + * + */ +@Entity +@Table(name="tseaims02") +@NamedQuery(name="Tseaims02.findAll", query="SELECT t FROM Tseaims02 t") +public class Tseaims02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaims02PK id; + + @Column(length=50) + private String refmsgidname; + + public Tseaims02() { + } + + public Tseaims02PK getId() { + return this.id; + } + + public void setId(Tseaims02PK id) { + this.id = id; + } + + public String getRefmsgidname() { + return this.refmsgidname; + } + + public void setRefmsgidname(String refmsgidname) { + this.refmsgidname = refmsgidname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaims02PK.java b/src/model/Tseaims02PK.java new file mode 100644 index 0000000..cd4bbce --- /dev/null +++ b/src/model/Tseaims02PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaims02 database table. + * + */ +@Embeddable +public class Tseaims02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false) + private Integer svcprcssno; + + @Column(unique=true, nullable=false) + private Integer refmsgidno; + + public Tseaims02PK() { + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public Integer getSvcprcssno() { + return this.svcprcssno; + } + public void setSvcprcssno(Integer svcprcssno) { + this.svcprcssno = svcprcssno; + } + public Integer getRefmsgidno() { + return this.refmsgidno; + } + public void setRefmsgidno(Integer refmsgidno) { + this.refmsgidno = refmsgidno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaims02PK)) { + return false; + } + Tseaims02PK castOther = (Tseaims02PK)other; + return + this.eaisvcname.equals(castOther.eaisvcname) + && this.svcprcssno.equals(castOther.svcprcssno) + && this.refmsgidno.equals(castOther.refmsgidno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.svcprcssno.hashCode(); + hash = hash * prime + this.refmsgidno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiqm01.java b/src/model/Tseaiqm01.java new file mode 100644 index 0000000..ca9a828 --- /dev/null +++ b/src/model/Tseaiqm01.java @@ -0,0 +1,98 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaiqm01 database table. + * + */ +@Entity +@Table(name="tseaiqm01") +@NamedQuery(name="Tseaiqm01.findAll", query="SELECT t FROM Tseaiqm01 t") +public class Tseaiqm01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaiqm01PK id; + + @Column(length=4) + private String eaibzwkdstcd; + + @Column(length=200) + private String eaiquebzwkctnt; + + @Column(length=400) + private String eaiquebzwkdtalsctnt; + + @Column(precision=10) + private BigDecimal eaiquecrtcnmvlval; + + @Column(length=1) + private String queusagdstcd; + + @Column(length=1) + private String queuseyn; + + public Tseaiqm01() { + } + + public Tseaiqm01PK getId() { + return this.id; + } + + public void setId(Tseaiqm01PK id) { + this.id = id; + } + + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public String getEaiquebzwkctnt() { + return this.eaiquebzwkctnt; + } + + public void setEaiquebzwkctnt(String eaiquebzwkctnt) { + this.eaiquebzwkctnt = eaiquebzwkctnt; + } + + public String getEaiquebzwkdtalsctnt() { + return this.eaiquebzwkdtalsctnt; + } + + public void setEaiquebzwkdtalsctnt(String eaiquebzwkdtalsctnt) { + this.eaiquebzwkdtalsctnt = eaiquebzwkdtalsctnt; + } + + public BigDecimal getEaiquecrtcnmvlval() { + return this.eaiquecrtcnmvlval; + } + + public void setEaiquecrtcnmvlval(BigDecimal eaiquecrtcnmvlval) { + this.eaiquecrtcnmvlval = eaiquecrtcnmvlval; + } + + public String getQueusagdstcd() { + return this.queusagdstcd; + } + + public void setQueusagdstcd(String queusagdstcd) { + this.queusagdstcd = queusagdstcd; + } + + public String getQueuseyn() { + return this.queuseyn; + } + + public void setQueuseyn(String queuseyn) { + this.queuseyn = queuseyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiqm01PK.java b/src/model/Tseaiqm01PK.java new file mode 100644 index 0000000..5f70ffd --- /dev/null +++ b/src/model/Tseaiqm01PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaiqm01 database table. + * + */ +@Embeddable +public class Tseaiqm01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=100) + private String nonsyncztranquename; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + public Tseaiqm01PK() { + } + public String getNonsyncztranquename() { + return this.nonsyncztranquename; + } + public void setNonsyncztranquename(String nonsyncztranquename) { + this.nonsyncztranquename = nonsyncztranquename; + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaiqm01PK)) { + return false; + } + Tseaiqm01PK castOther = (Tseaiqm01PK)other; + return + this.nonsyncztranquename.equals(castOther.nonsyncztranquename) + && this.eaisevrinstncname.equals(castOther.eaisevrinstncname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.nonsyncztranquename.hashCode(); + hash = hash * prime + this.eaisevrinstncname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaiqm02.java b/src/model/Tseaiqm02.java new file mode 100644 index 0000000..f4907ef --- /dev/null +++ b/src/model/Tseaiqm02.java @@ -0,0 +1,131 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaiqm02 database table. + * + */ +@Entity +@Table(name="tseaiqm02") +@NamedQuery(name="Tseaiqm02.findAll", query="SELECT t FROM Tseaiqm02 t") +public class Tseaiqm02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=100) + private String quercvername; + + @Column(length=1) + private String bascquercveryn; + + @Column(length=20) + private String eaisevrinstncname; + + @Column(length=100) + private String nonsyncztranobstclquename; + + @Column(length=100) + private String nonsyncztranquename; + + @Column(length=1000) + private String quemsgselctctnt; + + @Column(precision=10) + private BigDecimal quercvercnt; + + @Column(length=200) + private String quercverdtalsctnt; + + @Column(precision=10) + private BigDecimal senddlayttmval; + + private Integer sendretralnotms; + + public Tseaiqm02() { + } + + public String getQuercvername() { + return this.quercvername; + } + + public void setQuercvername(String quercvername) { + this.quercvername = quercvername; + } + + public String getBascquercveryn() { + return this.bascquercveryn; + } + + public void setBascquercveryn(String bascquercveryn) { + this.bascquercveryn = bascquercveryn; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public String getNonsyncztranobstclquename() { + return this.nonsyncztranobstclquename; + } + + public void setNonsyncztranobstclquename(String nonsyncztranobstclquename) { + this.nonsyncztranobstclquename = nonsyncztranobstclquename; + } + + public String getNonsyncztranquename() { + return this.nonsyncztranquename; + } + + public void setNonsyncztranquename(String nonsyncztranquename) { + this.nonsyncztranquename = nonsyncztranquename; + } + + public String getQuemsgselctctnt() { + return this.quemsgselctctnt; + } + + public void setQuemsgselctctnt(String quemsgselctctnt) { + this.quemsgselctctnt = quemsgselctctnt; + } + + public BigDecimal getQuercvercnt() { + return this.quercvercnt; + } + + public void setQuercvercnt(BigDecimal quercvercnt) { + this.quercvercnt = quercvercnt; + } + + public String getQuercverdtalsctnt() { + return this.quercverdtalsctnt; + } + + public void setQuercverdtalsctnt(String quercverdtalsctnt) { + this.quercverdtalsctnt = quercverdtalsctnt; + } + + public BigDecimal getSenddlayttmval() { + return this.senddlayttmval; + } + + public void setSenddlayttmval(BigDecimal senddlayttmval) { + this.senddlayttmval = senddlayttmval; + } + + public Integer getSendretralnotms() { + return this.sendretralnotms; + } + + public void setSendretralnotms(Integer sendretralnotms) { + this.sendretralnotms = sendretralnotms; + } + +} \ No newline at end of file diff --git a/src/model/Tseairm06.java b/src/model/Tseairm06.java new file mode 100644 index 0000000..fb99a26 --- /dev/null +++ b/src/model/Tseairm06.java @@ -0,0 +1,42 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseairm06 database table. + * + */ +@Entity +@Table(name="tseairm06") +@NamedQuery(name="Tseairm06.findAll", query="SELECT t FROM Tseairm06 t") +public class Tseairm06 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseairm06PK id; + + @Column(length=1) + private String savetype; + + public Tseairm06() { + } + + public Tseairm06PK getId() { + return this.id; + } + + public void setId(Tseairm06PK id) { + this.id = id; + } + + public String getSavetype() { + return this.savetype; + } + + public void setSavetype(String savetype) { + this.savetype = savetype; + } + +} \ No newline at end of file diff --git a/src/model/Tseairm06PK.java b/src/model/Tseairm06PK.java new file mode 100644 index 0000000..f1f88bd --- /dev/null +++ b/src/model/Tseairm06PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseairm06 database table. + * + */ +@Embeddable +public class Tseairm06PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=20) + private String userid; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + public Tseairm06PK() { + } + public String getUserid() { + return this.userid; + } + public void setUserid(String userid) { + this.userid = userid; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseairm06PK)) { + return false; + } + Tseairm06PK castOther = (Tseairm06PK)other; + return + this.userid.equals(castOther.userid) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.userid.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseairm11.java b/src/model/Tseairm11.java new file mode 100644 index 0000000..15111af --- /dev/null +++ b/src/model/Tseairm11.java @@ -0,0 +1,76 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseairm11 database table. + * + */ +@Entity +@Table(name="tseairm11") +@NamedQuery(name="Tseairm11.findAll", query="SELECT t FROM Tseairm11 t") +public class Tseairm11 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseairm11PK id; + + @Column(precision=10) + private BigDecimal eaimonierrnoitm; + + @Column(precision=10) + private BigDecimal eaimoniprcssnoitm; + + @Column(precision=10) + private BigDecimal eaimonitoutnoitm; + + @Column(precision=10, scale=2) + private BigDecimal maxssperprcssqanty; + + public Tseairm11() { + } + + public Tseairm11PK getId() { + return this.id; + } + + public void setId(Tseairm11PK id) { + this.id = id; + } + + public BigDecimal getEaimonierrnoitm() { + return this.eaimonierrnoitm; + } + + public void setEaimonierrnoitm(BigDecimal eaimonierrnoitm) { + this.eaimonierrnoitm = eaimonierrnoitm; + } + + public BigDecimal getEaimoniprcssnoitm() { + return this.eaimoniprcssnoitm; + } + + public void setEaimoniprcssnoitm(BigDecimal eaimoniprcssnoitm) { + this.eaimoniprcssnoitm = eaimoniprcssnoitm; + } + + public BigDecimal getEaimonitoutnoitm() { + return this.eaimonitoutnoitm; + } + + public void setEaimonitoutnoitm(BigDecimal eaimonitoutnoitm) { + this.eaimonitoutnoitm = eaimonitoutnoitm; + } + + public BigDecimal getMaxssperprcssqanty() { + return this.maxssperprcssqanty; + } + + public void setMaxssperprcssqanty(BigDecimal maxssperprcssqanty) { + this.maxssperprcssqanty = maxssperprcssqanty; + } + +} \ No newline at end of file diff --git a/src/model/Tseairm11PK.java b/src/model/Tseairm11PK.java new file mode 100644 index 0000000..3665884 --- /dev/null +++ b/src/model/Tseairm11PK.java @@ -0,0 +1,90 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseairm11 database table. + * + */ +@Embeddable +public class Tseairm11PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=1) + private String eaimonijobdstcd; + + @Column(unique=true, nullable=false, length=1) + private String eaimonisvcdstcd; + + @Column(unique=true, nullable=false, length=8) + private String statcymd; + + @Column(unique=true, nullable=false, length=6) + private String statchms; + + @Column(unique=true, nullable=false, length=20) + private String eaimonisyshostname; + + public Tseairm11PK() { + } + public String getEaimonijobdstcd() { + return this.eaimonijobdstcd; + } + public void setEaimonijobdstcd(String eaimonijobdstcd) { + this.eaimonijobdstcd = eaimonijobdstcd; + } + public String getEaimonisvcdstcd() { + return this.eaimonisvcdstcd; + } + public void setEaimonisvcdstcd(String eaimonisvcdstcd) { + this.eaimonisvcdstcd = eaimonisvcdstcd; + } + public String getStatcymd() { + return this.statcymd; + } + public void setStatcymd(String statcymd) { + this.statcymd = statcymd; + } + public String getStatchms() { + return this.statchms; + } + public void setStatchms(String statchms) { + this.statchms = statchms; + } + public String getEaimonisyshostname() { + return this.eaimonisyshostname; + } + public void setEaimonisyshostname(String eaimonisyshostname) { + this.eaimonisyshostname = eaimonisyshostname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseairm11PK)) { + return false; + } + Tseairm11PK castOther = (Tseairm11PK)other; + return + this.eaimonijobdstcd.equals(castOther.eaimonijobdstcd) + && this.eaimonisvcdstcd.equals(castOther.eaimonisvcdstcd) + && this.statcymd.equals(castOther.statcymd) + && this.statchms.equals(castOther.statchms) + && this.eaimonisyshostname.equals(castOther.eaimonisyshostname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaimonijobdstcd.hashCode(); + hash = hash * prime + this.eaimonisvcdstcd.hashCode(); + hash = hash * prime + this.statcymd.hashCode(); + hash = hash * prime + this.statchms.hashCode(); + hash = hash * prime + this.eaimonisyshostname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseairm13.java b/src/model/Tseairm13.java new file mode 100644 index 0000000..0138918 --- /dev/null +++ b/src/model/Tseairm13.java @@ -0,0 +1,76 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseairm13 database table. + * + */ +@Entity +@Table(name="tseairm13") +@NamedQuery(name="Tseairm13.findAll", query="SELECT t FROM Tseairm13 t") +public class Tseairm13 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseairm13PK id; + + @Column(precision=10) + private BigDecimal eaitranfailnoitm; + + @Column(precision=10) + private BigDecimal eaitransucssnoitm; + + @Column(precision=10) + private BigDecimal eaitranwholnoitm; + + @Column(length=12) + private String osidinstino; + + public Tseairm13() { + } + + public Tseairm13PK getId() { + return this.id; + } + + public void setId(Tseairm13PK id) { + this.id = id; + } + + public BigDecimal getEaitranfailnoitm() { + return this.eaitranfailnoitm; + } + + public void setEaitranfailnoitm(BigDecimal eaitranfailnoitm) { + this.eaitranfailnoitm = eaitranfailnoitm; + } + + public BigDecimal getEaitransucssnoitm() { + return this.eaitransucssnoitm; + } + + public void setEaitransucssnoitm(BigDecimal eaitransucssnoitm) { + this.eaitransucssnoitm = eaitransucssnoitm; + } + + public BigDecimal getEaitranwholnoitm() { + return this.eaitranwholnoitm; + } + + public void setEaitranwholnoitm(BigDecimal eaitranwholnoitm) { + this.eaitranwholnoitm = eaitranwholnoitm; + } + + public String getOsidinstino() { + return this.osidinstino; + } + + public void setOsidinstino(String osidinstino) { + this.osidinstino = osidinstino; + } + +} \ No newline at end of file diff --git a/src/model/Tseairm13PK.java b/src/model/Tseairm13PK.java new file mode 100644 index 0000000..ac9624a --- /dev/null +++ b/src/model/Tseairm13PK.java @@ -0,0 +1,134 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseairm13 database table. + * + */ +@Embeddable +public class Tseairm13PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String statcymd; + + @Column(unique=true, nullable=false, length=1) + private String eaimonisvcdstcd; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=15) + private String intfacsendtrancd; + + @Column(unique=true, nullable=false, length=1) + private String testautonyn; + + @Column(unique=true, nullable=false, length=50) + private String gstatsysadptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=50) + private String psvsysadptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=11) + private String screnno; + + public Tseairm13PK() { + } + public String getStatcymd() { + return this.statcymd; + } + public void setStatcymd(String statcymd) { + this.statcymd = statcymd; + } + public String getEaimonisvcdstcd() { + return this.eaimonisvcdstcd; + } + public void setEaimonisvcdstcd(String eaimonisvcdstcd) { + this.eaimonisvcdstcd = eaimonisvcdstcd; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getIntfacsendtrancd() { + return this.intfacsendtrancd; + } + public void setIntfacsendtrancd(String intfacsendtrancd) { + this.intfacsendtrancd = intfacsendtrancd; + } + public String getTestautonyn() { + return this.testautonyn; + } + public void setTestautonyn(String testautonyn) { + this.testautonyn = testautonyn; + } + public String getGstatsysadptrbzwkgroupname() { + return this.gstatsysadptrbzwkgroupname; + } + public void setGstatsysadptrbzwkgroupname(String gstatsysadptrbzwkgroupname) { + this.gstatsysadptrbzwkgroupname = gstatsysadptrbzwkgroupname; + } + public String getPsvsysadptrbzwkgroupname() { + return this.psvsysadptrbzwkgroupname; + } + public void setPsvsysadptrbzwkgroupname(String psvsysadptrbzwkgroupname) { + this.psvsysadptrbzwkgroupname = psvsysadptrbzwkgroupname; + } + public String getScrenno() { + return this.screnno; + } + public void setScrenno(String screnno) { + this.screnno = screnno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseairm13PK)) { + return false; + } + Tseairm13PK castOther = (Tseairm13PK)other; + return + this.statcymd.equals(castOther.statcymd) + && this.eaimonisvcdstcd.equals(castOther.eaimonisvcdstcd) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.intfacsendtrancd.equals(castOther.intfacsendtrancd) + && this.testautonyn.equals(castOther.testautonyn) + && this.gstatsysadptrbzwkgroupname.equals(castOther.gstatsysadptrbzwkgroupname) + && this.psvsysadptrbzwkgroupname.equals(castOther.psvsysadptrbzwkgroupname) + && this.screnno.equals(castOther.screnno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.statcymd.hashCode(); + hash = hash * prime + this.eaimonisvcdstcd.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.intfacsendtrancd.hashCode(); + hash = hash * prime + this.testautonyn.hashCode(); + hash = hash * prime + this.gstatsysadptrbzwkgroupname.hashCode(); + hash = hash * prime + this.psvsysadptrbzwkgroupname.hashCode(); + hash = hash * prime + this.screnno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseairm14.java b/src/model/Tseairm14.java new file mode 100644 index 0000000..c335013 --- /dev/null +++ b/src/model/Tseairm14.java @@ -0,0 +1,53 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseairm14 database table. + * + */ +@Entity +@Table(name="tseairm14") +@NamedQuery(name="Tseairm14.findAll", query="SELECT t FROM Tseairm14 t") +public class Tseairm14 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseairm14PK id; + + @Column(length=50) + private String eaiinstitestctnt; + + @Column(nullable=false, length=1) + private String eaiinstitestyn; + + public Tseairm14() { + } + + public Tseairm14PK getId() { + return this.id; + } + + public void setId(Tseairm14PK id) { + this.id = id; + } + + public String getEaiinstitestctnt() { + return this.eaiinstitestctnt; + } + + public void setEaiinstitestctnt(String eaiinstitestctnt) { + this.eaiinstitestctnt = eaiinstitestctnt; + } + + public String getEaiinstitestyn() { + return this.eaiinstitestyn; + } + + public void setEaiinstitestyn(String eaiinstitestyn) { + this.eaiinstitestyn = eaiinstitestyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseairm14PK.java b/src/model/Tseairm14PK.java new file mode 100644 index 0000000..41bdcee --- /dev/null +++ b/src/model/Tseairm14PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseairm14 database table. + * + */ +@Embeddable +public class Tseairm14PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + public Tseairm14PK() { + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseairm14PK)) { + return false; + } + Tseairm14PK castOther = (Tseairm14PK)other; + return + this.eaisvcname.equals(castOther.eaisvcname) + && this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseairm15.java b/src/model/Tseairm15.java new file mode 100644 index 0000000..531968b --- /dev/null +++ b/src/model/Tseairm15.java @@ -0,0 +1,54 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseairm15 database table. + * + */ +@Entity +@Table(name="tseairm15") +@NamedQuery(name="Tseairm15.findAll", query="SELECT t FROM Tseairm15 t") +public class Tseairm15 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseairm15PK id; + + @Column(precision=10) + private BigDecimal prcssnoitm; + + @Column(precision=10) + private BigDecimal tpsnoitm; + + public Tseairm15() { + } + + public Tseairm15PK getId() { + return this.id; + } + + public void setId(Tseairm15PK id) { + this.id = id; + } + + public BigDecimal getPrcssnoitm() { + return this.prcssnoitm; + } + + public void setPrcssnoitm(BigDecimal prcssnoitm) { + this.prcssnoitm = prcssnoitm; + } + + public BigDecimal getTpsnoitm() { + return this.tpsnoitm; + } + + public void setTpsnoitm(BigDecimal tpsnoitm) { + this.tpsnoitm = tpsnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseairm15PK.java b/src/model/Tseairm15PK.java new file mode 100644 index 0000000..8da6f4b --- /dev/null +++ b/src/model/Tseairm15PK.java @@ -0,0 +1,79 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseairm15 database table. + * + */ +@Embeddable +public class Tseairm15PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=3) + private String baseinfodstcd; + + @Column(unique=true, nullable=false, length=5) + private String bzwkgroupname; + + @Column(unique=true, nullable=false, length=3) + private String eaigroupcodstcd; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + public Tseairm15PK() { + } + public String getBaseinfodstcd() { + return this.baseinfodstcd; + } + public void setBaseinfodstcd(String baseinfodstcd) { + this.baseinfodstcd = baseinfodstcd; + } + public String getBzwkgroupname() { + return this.bzwkgroupname; + } + public void setBzwkgroupname(String bzwkgroupname) { + this.bzwkgroupname = bzwkgroupname; + } + public String getEaigroupcodstcd() { + return this.eaigroupcodstcd; + } + public void setEaigroupcodstcd(String eaigroupcodstcd) { + this.eaigroupcodstcd = eaigroupcodstcd; + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseairm15PK)) { + return false; + } + Tseairm15PK castOther = (Tseairm15PK)other; + return + this.baseinfodstcd.equals(castOther.baseinfodstcd) + && this.bzwkgroupname.equals(castOther.bzwkgroupname) + && this.eaigroupcodstcd.equals(castOther.eaigroupcodstcd) + && this.baseymd.equals(castOther.baseymd); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseinfodstcd.hashCode(); + hash = hash * prime + this.bzwkgroupname.hashCode(); + hash = hash * prime + this.eaigroupcodstcd.hashCode(); + hash = hash * prime + this.baseymd.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaise01.java b/src/model/Tseaise01.java new file mode 100644 index 0000000..78fd56f --- /dev/null +++ b/src/model/Tseaise01.java @@ -0,0 +1,97 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaise01 database table. + * + */ +@Entity +@Table(name="tseaise01") +@NamedQuery(name="Tseaise01.findAll", query="SELECT t FROM Tseaise01 t") +public class Tseaise01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=200) + private String eaisvcdesc; + + @Column(nullable=false, length=30) + private String eaisvcname; + + @Column(nullable=false, length=50) + private String gstatsysadptrbzwkgroupname; + + @Column(nullable=false, length=30) + private String instiname; + + @Column(nullable=false, length=30) + private String kbbzwkrsempname; + + @Column(nullable=false, length=50) + private String psvsysadptrbzwkgroupname; + + @Column(nullable=false, length=15) + private String recvtranname; + + public Tseaise01() { + } + + public String getEaisvcdesc() { + return this.eaisvcdesc; + } + + public void setEaisvcdesc(String eaisvcdesc) { + this.eaisvcdesc = eaisvcdesc; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + + public String getGstatsysadptrbzwkgroupname() { + return this.gstatsysadptrbzwkgroupname; + } + + public void setGstatsysadptrbzwkgroupname(String gstatsysadptrbzwkgroupname) { + this.gstatsysadptrbzwkgroupname = gstatsysadptrbzwkgroupname; + } + + public String getInstiname() { + return this.instiname; + } + + public void setInstiname(String instiname) { + this.instiname = instiname; + } + + public String getKbbzwkrsempname() { + return this.kbbzwkrsempname; + } + + public void setKbbzwkrsempname(String kbbzwkrsempname) { + this.kbbzwkrsempname = kbbzwkrsempname; + } + + public String getPsvsysadptrbzwkgroupname() { + return this.psvsysadptrbzwkgroupname; + } + + public void setPsvsysadptrbzwkgroupname(String psvsysadptrbzwkgroupname) { + this.psvsysadptrbzwkgroupname = psvsysadptrbzwkgroupname; + } + + public String getRecvtranname() { + return this.recvtranname; + } + + public void setRecvtranname(String recvtranname) { + this.recvtranname = recvtranname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaism01.java b/src/model/Tseaism01.java new file mode 100644 index 0000000..3dd0b9c --- /dev/null +++ b/src/model/Tseaism01.java @@ -0,0 +1,153 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaism01 database table. + * + */ +@Entity +@Table(name="tseaism01") +@NamedQuery(name="Tseaism01.findAll", query="SELECT t FROM Tseaism01 t") +public class Tseaism01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=30) + private String userid; + + @Column(name="brn_cd", length=10) + private String brnCd; + + @Column(name="brn_name", length=200) + private String brnName; + + @Column(name="create_time", length=14) + private String createTime; + + @Column(name="rofc_cd", length=10) + private String rofcCd; + + @Column(name="session_id", length=150) + private String sessionId; + + @Column(name="session_status", length=10) + private String sessionStatus; + + @Column(name="terminal_id", length=30) + private String terminalId; + + @Column(name="user_name", length=30) + private String userName; + + @Column(name="wsoc_instance", length=30) + private String wsocInstance; + + @Column(name="wsoc_remote_addr", length=40) + private String wsocRemoteAddr; + + @Column(name="wsoc_session_status", length=10) + private String wsocSessionStatus; + + public Tseaism01() { + } + + public String getUserid() { + return this.userid; + } + + public void setUserid(String userid) { + this.userid = userid; + } + + public String getBrnCd() { + return this.brnCd; + } + + public void setBrnCd(String brnCd) { + this.brnCd = brnCd; + } + + public String getBrnName() { + return this.brnName; + } + + public void setBrnName(String brnName) { + this.brnName = brnName; + } + + public String getCreateTime() { + return this.createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getRofcCd() { + return this.rofcCd; + } + + public void setRofcCd(String rofcCd) { + this.rofcCd = rofcCd; + } + + public String getSessionId() { + return this.sessionId; + } + + public void setSessionId(String sessionId) { + this.sessionId = sessionId; + } + + public String getSessionStatus() { + return this.sessionStatus; + } + + public void setSessionStatus(String sessionStatus) { + this.sessionStatus = sessionStatus; + } + + public String getTerminalId() { + return this.terminalId; + } + + public void setTerminalId(String terminalId) { + this.terminalId = terminalId; + } + + public String getUserName() { + return this.userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public String getWsocInstance() { + return this.wsocInstance; + } + + public void setWsocInstance(String wsocInstance) { + this.wsocInstance = wsocInstance; + } + + public String getWsocRemoteAddr() { + return this.wsocRemoteAddr; + } + + public void setWsocRemoteAddr(String wsocRemoteAddr) { + this.wsocRemoteAddr = wsocRemoteAddr; + } + + public String getWsocSessionStatus() { + return this.wsocSessionStatus; + } + + public void setWsocSessionStatus(String wsocSessionStatus) { + this.wsocSessionStatus = wsocSessionStatus; + } + +} \ No newline at end of file diff --git a/src/model/Tseaism02.java b/src/model/Tseaism02.java new file mode 100644 index 0000000..d095f0f --- /dev/null +++ b/src/model/Tseaism02.java @@ -0,0 +1,76 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaism02 database table. + * + */ +@Entity +@Table(name="tseaism02") +@NamedQuery(name="Tseaism02.findAll", query="SELECT t FROM Tseaism02 t") +public class Tseaism02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(nullable=false, length=150) + private String guid; + + @Column(name="push_datetime", length=14) + private String pushDatetime; + + @Column(name="push_dvsn_cd", length=1) + private String pushDvsnCd; + + @Column(name="push_target", length=1000) + private String pushTarget; + + @Column(name="push_target_count", precision=10) + private BigDecimal pushTargetCount; + + public Tseaism02() { + } + + public String getGuid() { + return this.guid; + } + + public void setGuid(String guid) { + this.guid = guid; + } + + public String getPushDatetime() { + return this.pushDatetime; + } + + public void setPushDatetime(String pushDatetime) { + this.pushDatetime = pushDatetime; + } + + public String getPushDvsnCd() { + return this.pushDvsnCd; + } + + public void setPushDvsnCd(String pushDvsnCd) { + this.pushDvsnCd = pushDvsnCd; + } + + public String getPushTarget() { + return this.pushTarget; + } + + public void setPushTarget(String pushTarget) { + this.pushTarget = pushTarget; + } + + public BigDecimal getPushTargetCount() { + return this.pushTargetCount; + } + + public void setPushTargetCount(BigDecimal pushTargetCount) { + this.pushTargetCount = pushTargetCount; + } + +} \ No newline at end of file diff --git a/src/model/Tseaism03.java b/src/model/Tseaism03.java new file mode 100644 index 0000000..d95344a --- /dev/null +++ b/src/model/Tseaism03.java @@ -0,0 +1,108 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaism03 database table. + * + */ +@Entity +@Table(name="tseaism03") +@NamedQuery(name="Tseaism03.findAll", query="SELECT t FROM Tseaism03 t") +public class Tseaism03 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(name="error_content", length=4000) + private String errorContent; + + @Column(nullable=false, length=150) + private String guid; + + @Column(name="instance_id", length=30) + private String instanceId; + + @Column(name="push_datetime", length=14) + private String pushDatetime; + + @Column(name="push_result", length=10) + private String pushResult; + + @Column(name="session_id", length=150) + private String sessionId; + + @Column(length=30) + private String userid; + + @Column(name="wsoc_remote_addr", length=40) + private String wsocRemoteAddr; + + public Tseaism03() { + } + + public String getErrorContent() { + return this.errorContent; + } + + public void setErrorContent(String errorContent) { + this.errorContent = errorContent; + } + + public String getGuid() { + return this.guid; + } + + public void setGuid(String guid) { + this.guid = guid; + } + + public String getInstanceId() { + return this.instanceId; + } + + public void setInstanceId(String instanceId) { + this.instanceId = instanceId; + } + + public String getPushDatetime() { + return this.pushDatetime; + } + + public void setPushDatetime(String pushDatetime) { + this.pushDatetime = pushDatetime; + } + + public String getPushResult() { + return this.pushResult; + } + + public void setPushResult(String pushResult) { + this.pushResult = pushResult; + } + + public String getSessionId() { + return this.sessionId; + } + + public void setSessionId(String sessionId) { + this.sessionId = sessionId; + } + + public String getUserid() { + return this.userid; + } + + public void setUserid(String userid) { + this.userid = userid; + } + + public String getWsocRemoteAddr() { + return this.wsocRemoteAddr; + } + + public void setWsocRemoteAddr(String wsocRemoteAddr) { + this.wsocRemoteAddr = wsocRemoteAddr; + } + +} \ No newline at end of file diff --git a/src/model/Tseaism04.java b/src/model/Tseaism04.java new file mode 100644 index 0000000..692672e --- /dev/null +++ b/src/model/Tseaism04.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaism04 database table. + * + */ +@Entity +@Table(name="tseaism04") +@NamedQuery(name="Tseaism04.findAll", query="SELECT t FROM Tseaism04 t") +public class Tseaism04 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(name="terminal_no", unique=true, nullable=false, length=30) + private String terminalNo; + + @Column(name="brn_cd", length=10) + private String brnCd; + + @Column(name="brn_name", length=200) + private String brnName; + + @Column(name="create_time", length=14) + private String createTime; + + @Column(name="rofc_cd", length=10) + private String rofcCd; + + @Column(name="soc_instance", length=30) + private String socInstance; + + @Column(name="soc_remote_addr", length=40) + private String socRemoteAddr; + + @Column(name="soc_session_status", length=10) + private String socSessionStatus; + + public Tseaism04() { + } + + public String getTerminalNo() { + return this.terminalNo; + } + + public void setTerminalNo(String terminalNo) { + this.terminalNo = terminalNo; + } + + public String getBrnCd() { + return this.brnCd; + } + + public void setBrnCd(String brnCd) { + this.brnCd = brnCd; + } + + public String getBrnName() { + return this.brnName; + } + + public void setBrnName(String brnName) { + this.brnName = brnName; + } + + public String getCreateTime() { + return this.createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getRofcCd() { + return this.rofcCd; + } + + public void setRofcCd(String rofcCd) { + this.rofcCd = rofcCd; + } + + public String getSocInstance() { + return this.socInstance; + } + + public void setSocInstance(String socInstance) { + this.socInstance = socInstance; + } + + public String getSocRemoteAddr() { + return this.socRemoteAddr; + } + + public void setSocRemoteAddr(String socRemoteAddr) { + this.socRemoteAddr = socRemoteAddr; + } + + public String getSocSessionStatus() { + return this.socSessionStatus; + } + + public void setSocSessionStatus(String socSessionStatus) { + this.socSessionStatus = socSessionStatus; + } + +} \ No newline at end of file diff --git a/src/model/Tseaism05.java b/src/model/Tseaism05.java new file mode 100644 index 0000000..0722e52 --- /dev/null +++ b/src/model/Tseaism05.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaism05 database table. + * + */ +@Entity +@Table(name="tseaism05") +@NamedQuery(name="Tseaism05.findAll", query="SELECT t FROM Tseaism05 t") +public class Tseaism05 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=40) + private String historyid; + + @Column(length=1000) + private String body; + + @Column(length=38) + private String guid; + + @Column(length=10) + private String historydstcd; + + @Column(length=1) + private String rspnsrsltdvsn; + + @Column(length=20) + private String trantime; + + @Column(length=20) + private String userid; + + @Column(length=40) + private String uuid; + + public Tseaism05() { + } + + public String getHistoryid() { + return this.historyid; + } + + public void setHistoryid(String historyid) { + this.historyid = historyid; + } + + public String getBody() { + return this.body; + } + + public void setBody(String body) { + this.body = body; + } + + public String getGuid() { + return this.guid; + } + + public void setGuid(String guid) { + this.guid = guid; + } + + public String getHistorydstcd() { + return this.historydstcd; + } + + public void setHistorydstcd(String historydstcd) { + this.historydstcd = historydstcd; + } + + public String getRspnsrsltdvsn() { + return this.rspnsrsltdvsn; + } + + public void setRspnsrsltdvsn(String rspnsrsltdvsn) { + this.rspnsrsltdvsn = rspnsrsltdvsn; + } + + public String getTrantime() { + return this.trantime; + } + + public void setTrantime(String trantime) { + this.trantime = trantime; + } + + public String getUserid() { + return this.userid; + } + + public void setUserid(String userid) { + this.userid = userid; + } + + public String getUuid() { + return this.uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr01.java b/src/model/Tseaisr01.java new file mode 100644 index 0000000..14f1142 --- /dev/null +++ b/src/model/Tseaisr01.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaisr01 database table. + * + */ +@Entity +@Table(name="tseaisr01") +@NamedQuery(name="Tseaisr01.findAll", query="SELECT t FROM Tseaisr01 t") +public class Tseaisr01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaisr01PK id; + + @Column(precision=10, scale=6) + private BigDecimal eaiprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaipsvprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaitotalprcssttmval; + + @Column(precision=10) + private BigDecimal errznoitm; + + @Column(precision=10) + private BigDecimal nomalnoitm; + + @Column(precision=10) + private BigDecimal toutnoitm; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaisr01() { + } + + public Tseaisr01PK getId() { + return this.id; + } + + public void setId(Tseaisr01PK id) { + this.id = id; + } + + public BigDecimal getEaiprcssttmval() { + return this.eaiprcssttmval; + } + + public void setEaiprcssttmval(BigDecimal eaiprcssttmval) { + this.eaiprcssttmval = eaiprcssttmval; + } + + public BigDecimal getEaipsvprcssttmval() { + return this.eaipsvprcssttmval; + } + + public void setEaipsvprcssttmval(BigDecimal eaipsvprcssttmval) { + this.eaipsvprcssttmval = eaipsvprcssttmval; + } + + public BigDecimal getEaitotalprcssttmval() { + return this.eaitotalprcssttmval; + } + + public void setEaitotalprcssttmval(BigDecimal eaitotalprcssttmval) { + this.eaitotalprcssttmval = eaitotalprcssttmval; + } + + public BigDecimal getErrznoitm() { + return this.errznoitm; + } + + public void setErrznoitm(BigDecimal errznoitm) { + this.errznoitm = errznoitm; + } + + public BigDecimal getNomalnoitm() { + return this.nomalnoitm; + } + + public void setNomalnoitm(BigDecimal nomalnoitm) { + this.nomalnoitm = nomalnoitm; + } + + public BigDecimal getToutnoitm() { + return this.toutnoitm; + } + + public void setToutnoitm(BigDecimal toutnoitm) { + this.toutnoitm = toutnoitm; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr01PK.java b/src/model/Tseaisr01PK.java new file mode 100644 index 0000000..9b2f145 --- /dev/null +++ b/src/model/Tseaisr01PK.java @@ -0,0 +1,101 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaisr01 database table. + * + */ +@Embeddable +public class Tseaisr01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=2) + private String basehh; + + @Column(unique=true, nullable=false, length=4) + private String basehhmm; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + public Tseaisr01PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getBasehh() { + return this.basehh; + } + public void setBasehh(String basehh) { + this.basehh = basehh; + } + public String getBasehhmm() { + return this.basehhmm; + } + public void setBasehhmm(String basehhmm) { + this.basehhmm = basehhmm; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaisr01PK)) { + return false; + } + Tseaisr01PK castOther = (Tseaisr01PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.basehh.equals(castOther.basehh) + && this.basehhmm.equals(castOther.basehhmm) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.eaisevrinstncname.equals(castOther.eaisevrinstncname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.basehh.hashCode(); + hash = hash * prime + this.basehhmm.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.eaisevrinstncname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaisr02.java b/src/model/Tseaisr02.java new file mode 100644 index 0000000..c5b1bad --- /dev/null +++ b/src/model/Tseaisr02.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaisr02 database table. + * + */ +@Entity +@Table(name="tseaisr02") +@NamedQuery(name="Tseaisr02.findAll", query="SELECT t FROM Tseaisr02 t") +public class Tseaisr02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaisr02PK id; + + @Column(precision=10, scale=6) + private BigDecimal eaiprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaipsvprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaitotalprcssttmval; + + @Column(precision=10) + private BigDecimal errznoitm; + + @Column(precision=10) + private BigDecimal nomalnoitm; + + @Column(precision=10) + private BigDecimal toutnoitm; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaisr02() { + } + + public Tseaisr02PK getId() { + return this.id; + } + + public void setId(Tseaisr02PK id) { + this.id = id; + } + + public BigDecimal getEaiprcssttmval() { + return this.eaiprcssttmval; + } + + public void setEaiprcssttmval(BigDecimal eaiprcssttmval) { + this.eaiprcssttmval = eaiprcssttmval; + } + + public BigDecimal getEaipsvprcssttmval() { + return this.eaipsvprcssttmval; + } + + public void setEaipsvprcssttmval(BigDecimal eaipsvprcssttmval) { + this.eaipsvprcssttmval = eaipsvprcssttmval; + } + + public BigDecimal getEaitotalprcssttmval() { + return this.eaitotalprcssttmval; + } + + public void setEaitotalprcssttmval(BigDecimal eaitotalprcssttmval) { + this.eaitotalprcssttmval = eaitotalprcssttmval; + } + + public BigDecimal getErrznoitm() { + return this.errznoitm; + } + + public void setErrznoitm(BigDecimal errznoitm) { + this.errznoitm = errznoitm; + } + + public BigDecimal getNomalnoitm() { + return this.nomalnoitm; + } + + public void setNomalnoitm(BigDecimal nomalnoitm) { + this.nomalnoitm = nomalnoitm; + } + + public BigDecimal getToutnoitm() { + return this.toutnoitm; + } + + public void setToutnoitm(BigDecimal toutnoitm) { + this.toutnoitm = toutnoitm; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr02PK.java b/src/model/Tseaisr02PK.java new file mode 100644 index 0000000..e3de07a --- /dev/null +++ b/src/model/Tseaisr02PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaisr02 database table. + * + */ +@Embeddable +public class Tseaisr02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=2) + private String basehh; + + @Column(unique=true, nullable=false, length=4) + private String basehhmm; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=15) + private String intfacsendtrancd; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + public Tseaisr02PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getBasehh() { + return this.basehh; + } + public void setBasehh(String basehh) { + this.basehh = basehh; + } + public String getBasehhmm() { + return this.basehhmm; + } + public void setBasehhmm(String basehhmm) { + this.basehhmm = basehhmm; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getIntfacsendtrancd() { + return this.intfacsendtrancd; + } + public void setIntfacsendtrancd(String intfacsendtrancd) { + this.intfacsendtrancd = intfacsendtrancd; + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaisr02PK)) { + return false; + } + Tseaisr02PK castOther = (Tseaisr02PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.basehh.equals(castOther.basehh) + && this.basehhmm.equals(castOther.basehhmm) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.intfacsendtrancd.equals(castOther.intfacsendtrancd) + && this.eaisevrinstncname.equals(castOther.eaisevrinstncname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.basehh.hashCode(); + hash = hash * prime + this.basehhmm.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.intfacsendtrancd.hashCode(); + hash = hash * prime + this.eaisevrinstncname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaisr03.java b/src/model/Tseaisr03.java new file mode 100644 index 0000000..c181eb1 --- /dev/null +++ b/src/model/Tseaisr03.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaisr03 database table. + * + */ +@Entity +@Table(name="tseaisr03") +@NamedQuery(name="Tseaisr03.findAll", query="SELECT t FROM Tseaisr03 t") +public class Tseaisr03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaisr03PK id; + + @Column(precision=10, scale=6) + private BigDecimal eaiprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaipsvprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaitotalprcssttmval; + + @Column(precision=10) + private BigDecimal errznoitm; + + @Column(precision=10) + private BigDecimal nomalnoitm; + + @Column(precision=10) + private BigDecimal toutnoitm; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaisr03() { + } + + public Tseaisr03PK getId() { + return this.id; + } + + public void setId(Tseaisr03PK id) { + this.id = id; + } + + public BigDecimal getEaiprcssttmval() { + return this.eaiprcssttmval; + } + + public void setEaiprcssttmval(BigDecimal eaiprcssttmval) { + this.eaiprcssttmval = eaiprcssttmval; + } + + public BigDecimal getEaipsvprcssttmval() { + return this.eaipsvprcssttmval; + } + + public void setEaipsvprcssttmval(BigDecimal eaipsvprcssttmval) { + this.eaipsvprcssttmval = eaipsvprcssttmval; + } + + public BigDecimal getEaitotalprcssttmval() { + return this.eaitotalprcssttmval; + } + + public void setEaitotalprcssttmval(BigDecimal eaitotalprcssttmval) { + this.eaitotalprcssttmval = eaitotalprcssttmval; + } + + public BigDecimal getErrznoitm() { + return this.errznoitm; + } + + public void setErrznoitm(BigDecimal errznoitm) { + this.errznoitm = errznoitm; + } + + public BigDecimal getNomalnoitm() { + return this.nomalnoitm; + } + + public void setNomalnoitm(BigDecimal nomalnoitm) { + this.nomalnoitm = nomalnoitm; + } + + public BigDecimal getToutnoitm() { + return this.toutnoitm; + } + + public void setToutnoitm(BigDecimal toutnoitm) { + this.toutnoitm = toutnoitm; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr03PK.java b/src/model/Tseaisr03PK.java new file mode 100644 index 0000000..e0441bf --- /dev/null +++ b/src/model/Tseaisr03PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaisr03 database table. + * + */ +@Embeddable +public class Tseaisr03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=2) + private String basehh; + + @Column(unique=true, nullable=false, length=4) + private String basehhmm; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=11) + private String screnno; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + public Tseaisr03PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getBasehh() { + return this.basehh; + } + public void setBasehh(String basehh) { + this.basehh = basehh; + } + public String getBasehhmm() { + return this.basehhmm; + } + public void setBasehhmm(String basehhmm) { + this.basehhmm = basehhmm; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getScrenno() { + return this.screnno; + } + public void setScrenno(String screnno) { + this.screnno = screnno; + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaisr03PK)) { + return false; + } + Tseaisr03PK castOther = (Tseaisr03PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.basehh.equals(castOther.basehh) + && this.basehhmm.equals(castOther.basehhmm) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.screnno.equals(castOther.screnno) + && this.eaisevrinstncname.equals(castOther.eaisevrinstncname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.basehh.hashCode(); + hash = hash * prime + this.basehhmm.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.screnno.hashCode(); + hash = hash * prime + this.eaisevrinstncname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaisr04.java b/src/model/Tseaisr04.java new file mode 100644 index 0000000..3206789 --- /dev/null +++ b/src/model/Tseaisr04.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaisr04 database table. + * + */ +@Entity +@Table(name="tseaisr04") +@NamedQuery(name="Tseaisr04.findAll", query="SELECT t FROM Tseaisr04 t") +public class Tseaisr04 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaisr04PK id; + + @Column(precision=10, scale=6) + private BigDecimal eaiprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaipsvprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaitotalprcssttmval; + + @Column(precision=10) + private BigDecimal errznoitm; + + @Column(precision=10) + private BigDecimal nomalnoitm; + + @Column(precision=10) + private BigDecimal toutnoitm; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaisr04() { + } + + public Tseaisr04PK getId() { + return this.id; + } + + public void setId(Tseaisr04PK id) { + this.id = id; + } + + public BigDecimal getEaiprcssttmval() { + return this.eaiprcssttmval; + } + + public void setEaiprcssttmval(BigDecimal eaiprcssttmval) { + this.eaiprcssttmval = eaiprcssttmval; + } + + public BigDecimal getEaipsvprcssttmval() { + return this.eaipsvprcssttmval; + } + + public void setEaipsvprcssttmval(BigDecimal eaipsvprcssttmval) { + this.eaipsvprcssttmval = eaipsvprcssttmval; + } + + public BigDecimal getEaitotalprcssttmval() { + return this.eaitotalprcssttmval; + } + + public void setEaitotalprcssttmval(BigDecimal eaitotalprcssttmval) { + this.eaitotalprcssttmval = eaitotalprcssttmval; + } + + public BigDecimal getErrznoitm() { + return this.errznoitm; + } + + public void setErrznoitm(BigDecimal errznoitm) { + this.errznoitm = errznoitm; + } + + public BigDecimal getNomalnoitm() { + return this.nomalnoitm; + } + + public void setNomalnoitm(BigDecimal nomalnoitm) { + this.nomalnoitm = nomalnoitm; + } + + public BigDecimal getToutnoitm() { + return this.toutnoitm; + } + + public void setToutnoitm(BigDecimal toutnoitm) { + this.toutnoitm = toutnoitm; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr04PK.java b/src/model/Tseaisr04PK.java new file mode 100644 index 0000000..afa8e2f --- /dev/null +++ b/src/model/Tseaisr04PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaisr04 database table. + * + */ +@Embeddable +public class Tseaisr04PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=2) + private String basehh; + + @Column(unique=true, nullable=false, length=4) + private String basehhmm; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=50) + private String adptrbzwkgroupname; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + public Tseaisr04PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getBasehh() { + return this.basehh; + } + public void setBasehh(String basehh) { + this.basehh = basehh; + } + public String getBasehhmm() { + return this.basehhmm; + } + public void setBasehhmm(String basehhmm) { + this.basehhmm = basehhmm; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getAdptrbzwkgroupname() { + return this.adptrbzwkgroupname; + } + public void setAdptrbzwkgroupname(String adptrbzwkgroupname) { + this.adptrbzwkgroupname = adptrbzwkgroupname; + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaisr04PK)) { + return false; + } + Tseaisr04PK castOther = (Tseaisr04PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.basehh.equals(castOther.basehh) + && this.basehhmm.equals(castOther.basehhmm) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.adptrbzwkgroupname.equals(castOther.adptrbzwkgroupname) + && this.eaisevrinstncname.equals(castOther.eaisevrinstncname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.basehh.hashCode(); + hash = hash * prime + this.basehhmm.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.adptrbzwkgroupname.hashCode(); + hash = hash * prime + this.eaisevrinstncname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaisr05.java b/src/model/Tseaisr05.java new file mode 100644 index 0000000..52a73f4 --- /dev/null +++ b/src/model/Tseaisr05.java @@ -0,0 +1,109 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaisr05 database table. + * + */ +@Entity +@Table(name="tseaisr05") +@NamedQuery(name="Tseaisr05.findAll", query="SELECT t FROM Tseaisr05 t") +public class Tseaisr05 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaisr05PK id; + + @Column(precision=10, scale=6) + private BigDecimal eaiprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaipsvprcssttmval; + + @Column(precision=10, scale=6) + private BigDecimal eaitotalprcssttmval; + + @Column(precision=10) + private BigDecimal errznoitm; + + @Column(precision=10) + private BigDecimal nomalnoitm; + + @Column(precision=10) + private BigDecimal toutnoitm; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaisr05() { + } + + public Tseaisr05PK getId() { + return this.id; + } + + public void setId(Tseaisr05PK id) { + this.id = id; + } + + public BigDecimal getEaiprcssttmval() { + return this.eaiprcssttmval; + } + + public void setEaiprcssttmval(BigDecimal eaiprcssttmval) { + this.eaiprcssttmval = eaiprcssttmval; + } + + public BigDecimal getEaipsvprcssttmval() { + return this.eaipsvprcssttmval; + } + + public void setEaipsvprcssttmval(BigDecimal eaipsvprcssttmval) { + this.eaipsvprcssttmval = eaipsvprcssttmval; + } + + public BigDecimal getEaitotalprcssttmval() { + return this.eaitotalprcssttmval; + } + + public void setEaitotalprcssttmval(BigDecimal eaitotalprcssttmval) { + this.eaitotalprcssttmval = eaitotalprcssttmval; + } + + public BigDecimal getErrznoitm() { + return this.errznoitm; + } + + public void setErrznoitm(BigDecimal errznoitm) { + this.errznoitm = errznoitm; + } + + public BigDecimal getNomalnoitm() { + return this.nomalnoitm; + } + + public void setNomalnoitm(BigDecimal nomalnoitm) { + this.nomalnoitm = nomalnoitm; + } + + public BigDecimal getToutnoitm() { + return this.toutnoitm; + } + + public void setToutnoitm(BigDecimal toutnoitm) { + this.toutnoitm = toutnoitm; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr05PK.java b/src/model/Tseaisr05PK.java new file mode 100644 index 0000000..a56de22 --- /dev/null +++ b/src/model/Tseaisr05PK.java @@ -0,0 +1,79 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaisr05 database table. + * + */ +@Embeddable +public class Tseaisr05PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=20) + private String eaisevrinstncname; + + public Tseaisr05PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaisr05PK)) { + return false; + } + Tseaisr05PK castOther = (Tseaisr05PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.eaisevrinstncname.equals(castOther.eaisevrinstncname); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.eaisevrinstncname.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaisr06.java b/src/model/Tseaisr06.java new file mode 100644 index 0000000..28e71c5 --- /dev/null +++ b/src/model/Tseaisr06.java @@ -0,0 +1,65 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaisr06 database table. + * + */ +@Entity +@Table(name="tseaisr06") +@NamedQuery(name="Tseaisr06.findAll", query="SELECT t FROM Tseaisr06 t") +public class Tseaisr06 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaisr06PK id; + + @Column(precision=10) + private BigDecimal tpsnoitm; + + @Column(length=6) + private String tpsoccurhms; + + @Column(precision=10) + private BigDecimal wholprcssnoitm; + + public Tseaisr06() { + } + + public Tseaisr06PK getId() { + return this.id; + } + + public void setId(Tseaisr06PK id) { + this.id = id; + } + + public BigDecimal getTpsnoitm() { + return this.tpsnoitm; + } + + public void setTpsnoitm(BigDecimal tpsnoitm) { + this.tpsnoitm = tpsnoitm; + } + + public String getTpsoccurhms() { + return this.tpsoccurhms; + } + + public void setTpsoccurhms(String tpsoccurhms) { + this.tpsoccurhms = tpsoccurhms; + } + + public BigDecimal getWholprcssnoitm() { + return this.wholprcssnoitm; + } + + public void setWholprcssnoitm(BigDecimal wholprcssnoitm) { + this.wholprcssnoitm = wholprcssnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisr06PK.java b/src/model/Tseaisr06PK.java new file mode 100644 index 0000000..421e300 --- /dev/null +++ b/src/model/Tseaisr06PK.java @@ -0,0 +1,79 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaisr06 database table. + * + */ +@Embeddable +public class Tseaisr06PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String baseymd; + + @Column(unique=true, nullable=false, length=3) + private String sevrdstcd; + + @Column(unique=true, nullable=false, length=3) + private String groupcocd; + + @Column(unique=true, nullable=false, length=6) + private String tranfmatdstcd; + + public Tseaisr06PK() { + } + public String getBaseymd() { + return this.baseymd; + } + public void setBaseymd(String baseymd) { + this.baseymd = baseymd; + } + public String getSevrdstcd() { + return this.sevrdstcd; + } + public void setSevrdstcd(String sevrdstcd) { + this.sevrdstcd = sevrdstcd; + } + public String getGroupcocd() { + return this.groupcocd; + } + public void setGroupcocd(String groupcocd) { + this.groupcocd = groupcocd; + } + public String getTranfmatdstcd() { + return this.tranfmatdstcd; + } + public void setTranfmatdstcd(String tranfmatdstcd) { + this.tranfmatdstcd = tranfmatdstcd; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaisr06PK)) { + return false; + } + Tseaisr06PK castOther = (Tseaisr06PK)other; + return + this.baseymd.equals(castOther.baseymd) + && this.sevrdstcd.equals(castOther.sevrdstcd) + && this.groupcocd.equals(castOther.groupcocd) + && this.tranfmatdstcd.equals(castOther.tranfmatdstcd); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.baseymd.hashCode(); + hash = hash * prime + this.sevrdstcd.hashCode(); + hash = hash * prime + this.groupcocd.hashCode(); + hash = hash * prime + this.tranfmatdstcd.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaist01.java b/src/model/Tseaist01.java new file mode 100644 index 0000000..5c4c2f4 --- /dev/null +++ b/src/model/Tseaist01.java @@ -0,0 +1,75 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaist01 database table. + * + */ +@Entity +@Table(name="tseaist01") +@NamedQuery(name="Tseaist01.findAll", query="SELECT t FROM Tseaist01 t") +public class Tseaist01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaist01PK id; + + @Column(length=4000) + private String errmsg; + + @Column(length=16) + private String statcjobendhms; + + @Column(nullable=false, length=16) + private String statcjobstarthms; + + @Column(length=1) + private String sucssyn; + + public Tseaist01() { + } + + public Tseaist01PK getId() { + return this.id; + } + + public void setId(Tseaist01PK id) { + this.id = id; + } + + public String getErrmsg() { + return this.errmsg; + } + + public void setErrmsg(String errmsg) { + this.errmsg = errmsg; + } + + public String getStatcjobendhms() { + return this.statcjobendhms; + } + + public void setStatcjobendhms(String statcjobendhms) { + this.statcjobendhms = statcjobendhms; + } + + public String getStatcjobstarthms() { + return this.statcjobstarthms; + } + + public void setStatcjobstarthms(String statcjobstarthms) { + this.statcjobstarthms = statcjobstarthms; + } + + public String getSucssyn() { + return this.sucssyn; + } + + public void setSucssyn(String sucssyn) { + this.sucssyn = sucssyn; + } + +} \ No newline at end of file diff --git a/src/model/Tseaist01PK.java b/src/model/Tseaist01PK.java new file mode 100644 index 0000000..3e1782f --- /dev/null +++ b/src/model/Tseaist01PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaist01 database table. + * + */ +@Embeddable +public class Tseaist01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String statcjobymd; + + @Column(unique=true, nullable=false, length=1) + private String statcjobcycldstcd; + + public Tseaist01PK() { + } + public String getStatcjobymd() { + return this.statcjobymd; + } + public void setStatcjobymd(String statcjobymd) { + this.statcjobymd = statcjobymd; + } + public String getStatcjobcycldstcd() { + return this.statcjobcycldstcd; + } + public void setStatcjobcycldstcd(String statcjobcycldstcd) { + this.statcjobcycldstcd = statcjobcycldstcd; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaist01PK)) { + return false; + } + Tseaist01PK castOther = (Tseaist01PK)other; + return + this.statcjobymd.equals(castOther.statcjobymd) + && this.statcjobcycldstcd.equals(castOther.statcjobcycldstcd); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.statcjobymd.hashCode(); + hash = hash * prime + this.statcjobcycldstcd.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaist02.java b/src/model/Tseaist02.java new file mode 100644 index 0000000..ca5e3de --- /dev/null +++ b/src/model/Tseaist02.java @@ -0,0 +1,1088 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaist02 database table. + * + */ +@Entity +@Table(name="tseaist02") +@NamedQuery(name="Tseaist02.findAll", query="SELECT t FROM Tseaist02 t") +public class Tseaist02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaist02PK id; + + @Column(precision=10) + private BigDecimal s0hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s0hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s0hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s0hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s10hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s10hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s10hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s10hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s11hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s11hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s11hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s11hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s12hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s12hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s12hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s12hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s13hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s13hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s13hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s13hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s14hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s14hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s14hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s14hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s15hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s15hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s15hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s15hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s16hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s16hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s16hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s16hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s17hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s17hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s17hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s17hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s18hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s18hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s18hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s18hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s19hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s19hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s19hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s19hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s1hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s1hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s1hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s1hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s20hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s20hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s20hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s20hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s21hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s21hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s21hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s21hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s22hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s22hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s22hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s22hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s23hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s23hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s23hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s23hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s2hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s2hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s2hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s2hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s3hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s3hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s3hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s3hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s4hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s4hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s4hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s4hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s5hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s5hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s5hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s5hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s6hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s6hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s6hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s6hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s7hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s7hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s7hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s7hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s8hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s8hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s8hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s8hhtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s9hherrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s9hhrspnsavgval; + + @Column(precision=10, scale=3) + private BigDecimal s9hhrspnsmaxval; + + @Column(precision=10) + private BigDecimal s9hhtrsmtnoitm; + + public Tseaist02() { + } + + public Tseaist02PK getId() { + return this.id; + } + + public void setId(Tseaist02PK id) { + this.id = id; + } + + public BigDecimal getS0hherrnoitm() { + return this.s0hherrnoitm; + } + + public void setS0hherrnoitm(BigDecimal s0hherrnoitm) { + this.s0hherrnoitm = s0hherrnoitm; + } + + public BigDecimal getS0hhrspnsavgval() { + return this.s0hhrspnsavgval; + } + + public void setS0hhrspnsavgval(BigDecimal s0hhrspnsavgval) { + this.s0hhrspnsavgval = s0hhrspnsavgval; + } + + public BigDecimal getS0hhrspnsmaxval() { + return this.s0hhrspnsmaxval; + } + + public void setS0hhrspnsmaxval(BigDecimal s0hhrspnsmaxval) { + this.s0hhrspnsmaxval = s0hhrspnsmaxval; + } + + public BigDecimal getS0hhtrsmtnoitm() { + return this.s0hhtrsmtnoitm; + } + + public void setS0hhtrsmtnoitm(BigDecimal s0hhtrsmtnoitm) { + this.s0hhtrsmtnoitm = s0hhtrsmtnoitm; + } + + public BigDecimal getS10hherrnoitm() { + return this.s10hherrnoitm; + } + + public void setS10hherrnoitm(BigDecimal s10hherrnoitm) { + this.s10hherrnoitm = s10hherrnoitm; + } + + public BigDecimal getS10hhrspnsavgval() { + return this.s10hhrspnsavgval; + } + + public void setS10hhrspnsavgval(BigDecimal s10hhrspnsavgval) { + this.s10hhrspnsavgval = s10hhrspnsavgval; + } + + public BigDecimal getS10hhrspnsmaxval() { + return this.s10hhrspnsmaxval; + } + + public void setS10hhrspnsmaxval(BigDecimal s10hhrspnsmaxval) { + this.s10hhrspnsmaxval = s10hhrspnsmaxval; + } + + public BigDecimal getS10hhtrsmtnoitm() { + return this.s10hhtrsmtnoitm; + } + + public void setS10hhtrsmtnoitm(BigDecimal s10hhtrsmtnoitm) { + this.s10hhtrsmtnoitm = s10hhtrsmtnoitm; + } + + public BigDecimal getS11hherrnoitm() { + return this.s11hherrnoitm; + } + + public void setS11hherrnoitm(BigDecimal s11hherrnoitm) { + this.s11hherrnoitm = s11hherrnoitm; + } + + public BigDecimal getS11hhrspnsavgval() { + return this.s11hhrspnsavgval; + } + + public void setS11hhrspnsavgval(BigDecimal s11hhrspnsavgval) { + this.s11hhrspnsavgval = s11hhrspnsavgval; + } + + public BigDecimal getS11hhrspnsmaxval() { + return this.s11hhrspnsmaxval; + } + + public void setS11hhrspnsmaxval(BigDecimal s11hhrspnsmaxval) { + this.s11hhrspnsmaxval = s11hhrspnsmaxval; + } + + public BigDecimal getS11hhtrsmtnoitm() { + return this.s11hhtrsmtnoitm; + } + + public void setS11hhtrsmtnoitm(BigDecimal s11hhtrsmtnoitm) { + this.s11hhtrsmtnoitm = s11hhtrsmtnoitm; + } + + public BigDecimal getS12hherrnoitm() { + return this.s12hherrnoitm; + } + + public void setS12hherrnoitm(BigDecimal s12hherrnoitm) { + this.s12hherrnoitm = s12hherrnoitm; + } + + public BigDecimal getS12hhrspnsavgval() { + return this.s12hhrspnsavgval; + } + + public void setS12hhrspnsavgval(BigDecimal s12hhrspnsavgval) { + this.s12hhrspnsavgval = s12hhrspnsavgval; + } + + public BigDecimal getS12hhrspnsmaxval() { + return this.s12hhrspnsmaxval; + } + + public void setS12hhrspnsmaxval(BigDecimal s12hhrspnsmaxval) { + this.s12hhrspnsmaxval = s12hhrspnsmaxval; + } + + public BigDecimal getS12hhtrsmtnoitm() { + return this.s12hhtrsmtnoitm; + } + + public void setS12hhtrsmtnoitm(BigDecimal s12hhtrsmtnoitm) { + this.s12hhtrsmtnoitm = s12hhtrsmtnoitm; + } + + public BigDecimal getS13hherrnoitm() { + return this.s13hherrnoitm; + } + + public void setS13hherrnoitm(BigDecimal s13hherrnoitm) { + this.s13hherrnoitm = s13hherrnoitm; + } + + public BigDecimal getS13hhrspnsavgval() { + return this.s13hhrspnsavgval; + } + + public void setS13hhrspnsavgval(BigDecimal s13hhrspnsavgval) { + this.s13hhrspnsavgval = s13hhrspnsavgval; + } + + public BigDecimal getS13hhrspnsmaxval() { + return this.s13hhrspnsmaxval; + } + + public void setS13hhrspnsmaxval(BigDecimal s13hhrspnsmaxval) { + this.s13hhrspnsmaxval = s13hhrspnsmaxval; + } + + public BigDecimal getS13hhtrsmtnoitm() { + return this.s13hhtrsmtnoitm; + } + + public void setS13hhtrsmtnoitm(BigDecimal s13hhtrsmtnoitm) { + this.s13hhtrsmtnoitm = s13hhtrsmtnoitm; + } + + public BigDecimal getS14hherrnoitm() { + return this.s14hherrnoitm; + } + + public void setS14hherrnoitm(BigDecimal s14hherrnoitm) { + this.s14hherrnoitm = s14hherrnoitm; + } + + public BigDecimal getS14hhrspnsavgval() { + return this.s14hhrspnsavgval; + } + + public void setS14hhrspnsavgval(BigDecimal s14hhrspnsavgval) { + this.s14hhrspnsavgval = s14hhrspnsavgval; + } + + public BigDecimal getS14hhrspnsmaxval() { + return this.s14hhrspnsmaxval; + } + + public void setS14hhrspnsmaxval(BigDecimal s14hhrspnsmaxval) { + this.s14hhrspnsmaxval = s14hhrspnsmaxval; + } + + public BigDecimal getS14hhtrsmtnoitm() { + return this.s14hhtrsmtnoitm; + } + + public void setS14hhtrsmtnoitm(BigDecimal s14hhtrsmtnoitm) { + this.s14hhtrsmtnoitm = s14hhtrsmtnoitm; + } + + public BigDecimal getS15hherrnoitm() { + return this.s15hherrnoitm; + } + + public void setS15hherrnoitm(BigDecimal s15hherrnoitm) { + this.s15hherrnoitm = s15hherrnoitm; + } + + public BigDecimal getS15hhrspnsavgval() { + return this.s15hhrspnsavgval; + } + + public void setS15hhrspnsavgval(BigDecimal s15hhrspnsavgval) { + this.s15hhrspnsavgval = s15hhrspnsavgval; + } + + public BigDecimal getS15hhrspnsmaxval() { + return this.s15hhrspnsmaxval; + } + + public void setS15hhrspnsmaxval(BigDecimal s15hhrspnsmaxval) { + this.s15hhrspnsmaxval = s15hhrspnsmaxval; + } + + public BigDecimal getS15hhtrsmtnoitm() { + return this.s15hhtrsmtnoitm; + } + + public void setS15hhtrsmtnoitm(BigDecimal s15hhtrsmtnoitm) { + this.s15hhtrsmtnoitm = s15hhtrsmtnoitm; + } + + public BigDecimal getS16hherrnoitm() { + return this.s16hherrnoitm; + } + + public void setS16hherrnoitm(BigDecimal s16hherrnoitm) { + this.s16hherrnoitm = s16hherrnoitm; + } + + public BigDecimal getS16hhrspnsavgval() { + return this.s16hhrspnsavgval; + } + + public void setS16hhrspnsavgval(BigDecimal s16hhrspnsavgval) { + this.s16hhrspnsavgval = s16hhrspnsavgval; + } + + public BigDecimal getS16hhrspnsmaxval() { + return this.s16hhrspnsmaxval; + } + + public void setS16hhrspnsmaxval(BigDecimal s16hhrspnsmaxval) { + this.s16hhrspnsmaxval = s16hhrspnsmaxval; + } + + public BigDecimal getS16hhtrsmtnoitm() { + return this.s16hhtrsmtnoitm; + } + + public void setS16hhtrsmtnoitm(BigDecimal s16hhtrsmtnoitm) { + this.s16hhtrsmtnoitm = s16hhtrsmtnoitm; + } + + public BigDecimal getS17hherrnoitm() { + return this.s17hherrnoitm; + } + + public void setS17hherrnoitm(BigDecimal s17hherrnoitm) { + this.s17hherrnoitm = s17hherrnoitm; + } + + public BigDecimal getS17hhrspnsavgval() { + return this.s17hhrspnsavgval; + } + + public void setS17hhrspnsavgval(BigDecimal s17hhrspnsavgval) { + this.s17hhrspnsavgval = s17hhrspnsavgval; + } + + public BigDecimal getS17hhrspnsmaxval() { + return this.s17hhrspnsmaxval; + } + + public void setS17hhrspnsmaxval(BigDecimal s17hhrspnsmaxval) { + this.s17hhrspnsmaxval = s17hhrspnsmaxval; + } + + public BigDecimal getS17hhtrsmtnoitm() { + return this.s17hhtrsmtnoitm; + } + + public void setS17hhtrsmtnoitm(BigDecimal s17hhtrsmtnoitm) { + this.s17hhtrsmtnoitm = s17hhtrsmtnoitm; + } + + public BigDecimal getS18hherrnoitm() { + return this.s18hherrnoitm; + } + + public void setS18hherrnoitm(BigDecimal s18hherrnoitm) { + this.s18hherrnoitm = s18hherrnoitm; + } + + public BigDecimal getS18hhrspnsavgval() { + return this.s18hhrspnsavgval; + } + + public void setS18hhrspnsavgval(BigDecimal s18hhrspnsavgval) { + this.s18hhrspnsavgval = s18hhrspnsavgval; + } + + public BigDecimal getS18hhrspnsmaxval() { + return this.s18hhrspnsmaxval; + } + + public void setS18hhrspnsmaxval(BigDecimal s18hhrspnsmaxval) { + this.s18hhrspnsmaxval = s18hhrspnsmaxval; + } + + public BigDecimal getS18hhtrsmtnoitm() { + return this.s18hhtrsmtnoitm; + } + + public void setS18hhtrsmtnoitm(BigDecimal s18hhtrsmtnoitm) { + this.s18hhtrsmtnoitm = s18hhtrsmtnoitm; + } + + public BigDecimal getS19hherrnoitm() { + return this.s19hherrnoitm; + } + + public void setS19hherrnoitm(BigDecimal s19hherrnoitm) { + this.s19hherrnoitm = s19hherrnoitm; + } + + public BigDecimal getS19hhrspnsavgval() { + return this.s19hhrspnsavgval; + } + + public void setS19hhrspnsavgval(BigDecimal s19hhrspnsavgval) { + this.s19hhrspnsavgval = s19hhrspnsavgval; + } + + public BigDecimal getS19hhrspnsmaxval() { + return this.s19hhrspnsmaxval; + } + + public void setS19hhrspnsmaxval(BigDecimal s19hhrspnsmaxval) { + this.s19hhrspnsmaxval = s19hhrspnsmaxval; + } + + public BigDecimal getS19hhtrsmtnoitm() { + return this.s19hhtrsmtnoitm; + } + + public void setS19hhtrsmtnoitm(BigDecimal s19hhtrsmtnoitm) { + this.s19hhtrsmtnoitm = s19hhtrsmtnoitm; + } + + public BigDecimal getS1hherrnoitm() { + return this.s1hherrnoitm; + } + + public void setS1hherrnoitm(BigDecimal s1hherrnoitm) { + this.s1hherrnoitm = s1hherrnoitm; + } + + public BigDecimal getS1hhrspnsavgval() { + return this.s1hhrspnsavgval; + } + + public void setS1hhrspnsavgval(BigDecimal s1hhrspnsavgval) { + this.s1hhrspnsavgval = s1hhrspnsavgval; + } + + public BigDecimal getS1hhrspnsmaxval() { + return this.s1hhrspnsmaxval; + } + + public void setS1hhrspnsmaxval(BigDecimal s1hhrspnsmaxval) { + this.s1hhrspnsmaxval = s1hhrspnsmaxval; + } + + public BigDecimal getS1hhtrsmtnoitm() { + return this.s1hhtrsmtnoitm; + } + + public void setS1hhtrsmtnoitm(BigDecimal s1hhtrsmtnoitm) { + this.s1hhtrsmtnoitm = s1hhtrsmtnoitm; + } + + public BigDecimal getS20hherrnoitm() { + return this.s20hherrnoitm; + } + + public void setS20hherrnoitm(BigDecimal s20hherrnoitm) { + this.s20hherrnoitm = s20hherrnoitm; + } + + public BigDecimal getS20hhrspnsavgval() { + return this.s20hhrspnsavgval; + } + + public void setS20hhrspnsavgval(BigDecimal s20hhrspnsavgval) { + this.s20hhrspnsavgval = s20hhrspnsavgval; + } + + public BigDecimal getS20hhrspnsmaxval() { + return this.s20hhrspnsmaxval; + } + + public void setS20hhrspnsmaxval(BigDecimal s20hhrspnsmaxval) { + this.s20hhrspnsmaxval = s20hhrspnsmaxval; + } + + public BigDecimal getS20hhtrsmtnoitm() { + return this.s20hhtrsmtnoitm; + } + + public void setS20hhtrsmtnoitm(BigDecimal s20hhtrsmtnoitm) { + this.s20hhtrsmtnoitm = s20hhtrsmtnoitm; + } + + public BigDecimal getS21hherrnoitm() { + return this.s21hherrnoitm; + } + + public void setS21hherrnoitm(BigDecimal s21hherrnoitm) { + this.s21hherrnoitm = s21hherrnoitm; + } + + public BigDecimal getS21hhrspnsavgval() { + return this.s21hhrspnsavgval; + } + + public void setS21hhrspnsavgval(BigDecimal s21hhrspnsavgval) { + this.s21hhrspnsavgval = s21hhrspnsavgval; + } + + public BigDecimal getS21hhrspnsmaxval() { + return this.s21hhrspnsmaxval; + } + + public void setS21hhrspnsmaxval(BigDecimal s21hhrspnsmaxval) { + this.s21hhrspnsmaxval = s21hhrspnsmaxval; + } + + public BigDecimal getS21hhtrsmtnoitm() { + return this.s21hhtrsmtnoitm; + } + + public void setS21hhtrsmtnoitm(BigDecimal s21hhtrsmtnoitm) { + this.s21hhtrsmtnoitm = s21hhtrsmtnoitm; + } + + public BigDecimal getS22hherrnoitm() { + return this.s22hherrnoitm; + } + + public void setS22hherrnoitm(BigDecimal s22hherrnoitm) { + this.s22hherrnoitm = s22hherrnoitm; + } + + public BigDecimal getS22hhrspnsavgval() { + return this.s22hhrspnsavgval; + } + + public void setS22hhrspnsavgval(BigDecimal s22hhrspnsavgval) { + this.s22hhrspnsavgval = s22hhrspnsavgval; + } + + public BigDecimal getS22hhrspnsmaxval() { + return this.s22hhrspnsmaxval; + } + + public void setS22hhrspnsmaxval(BigDecimal s22hhrspnsmaxval) { + this.s22hhrspnsmaxval = s22hhrspnsmaxval; + } + + public BigDecimal getS22hhtrsmtnoitm() { + return this.s22hhtrsmtnoitm; + } + + public void setS22hhtrsmtnoitm(BigDecimal s22hhtrsmtnoitm) { + this.s22hhtrsmtnoitm = s22hhtrsmtnoitm; + } + + public BigDecimal getS23hherrnoitm() { + return this.s23hherrnoitm; + } + + public void setS23hherrnoitm(BigDecimal s23hherrnoitm) { + this.s23hherrnoitm = s23hherrnoitm; + } + + public BigDecimal getS23hhrspnsavgval() { + return this.s23hhrspnsavgval; + } + + public void setS23hhrspnsavgval(BigDecimal s23hhrspnsavgval) { + this.s23hhrspnsavgval = s23hhrspnsavgval; + } + + public BigDecimal getS23hhrspnsmaxval() { + return this.s23hhrspnsmaxval; + } + + public void setS23hhrspnsmaxval(BigDecimal s23hhrspnsmaxval) { + this.s23hhrspnsmaxval = s23hhrspnsmaxval; + } + + public BigDecimal getS23hhtrsmtnoitm() { + return this.s23hhtrsmtnoitm; + } + + public void setS23hhtrsmtnoitm(BigDecimal s23hhtrsmtnoitm) { + this.s23hhtrsmtnoitm = s23hhtrsmtnoitm; + } + + public BigDecimal getS2hherrnoitm() { + return this.s2hherrnoitm; + } + + public void setS2hherrnoitm(BigDecimal s2hherrnoitm) { + this.s2hherrnoitm = s2hherrnoitm; + } + + public BigDecimal getS2hhrspnsavgval() { + return this.s2hhrspnsavgval; + } + + public void setS2hhrspnsavgval(BigDecimal s2hhrspnsavgval) { + this.s2hhrspnsavgval = s2hhrspnsavgval; + } + + public BigDecimal getS2hhrspnsmaxval() { + return this.s2hhrspnsmaxval; + } + + public void setS2hhrspnsmaxval(BigDecimal s2hhrspnsmaxval) { + this.s2hhrspnsmaxval = s2hhrspnsmaxval; + } + + public BigDecimal getS2hhtrsmtnoitm() { + return this.s2hhtrsmtnoitm; + } + + public void setS2hhtrsmtnoitm(BigDecimal s2hhtrsmtnoitm) { + this.s2hhtrsmtnoitm = s2hhtrsmtnoitm; + } + + public BigDecimal getS3hherrnoitm() { + return this.s3hherrnoitm; + } + + public void setS3hherrnoitm(BigDecimal s3hherrnoitm) { + this.s3hherrnoitm = s3hherrnoitm; + } + + public BigDecimal getS3hhrspnsavgval() { + return this.s3hhrspnsavgval; + } + + public void setS3hhrspnsavgval(BigDecimal s3hhrspnsavgval) { + this.s3hhrspnsavgval = s3hhrspnsavgval; + } + + public BigDecimal getS3hhrspnsmaxval() { + return this.s3hhrspnsmaxval; + } + + public void setS3hhrspnsmaxval(BigDecimal s3hhrspnsmaxval) { + this.s3hhrspnsmaxval = s3hhrspnsmaxval; + } + + public BigDecimal getS3hhtrsmtnoitm() { + return this.s3hhtrsmtnoitm; + } + + public void setS3hhtrsmtnoitm(BigDecimal s3hhtrsmtnoitm) { + this.s3hhtrsmtnoitm = s3hhtrsmtnoitm; + } + + public BigDecimal getS4hherrnoitm() { + return this.s4hherrnoitm; + } + + public void setS4hherrnoitm(BigDecimal s4hherrnoitm) { + this.s4hherrnoitm = s4hherrnoitm; + } + + public BigDecimal getS4hhrspnsavgval() { + return this.s4hhrspnsavgval; + } + + public void setS4hhrspnsavgval(BigDecimal s4hhrspnsavgval) { + this.s4hhrspnsavgval = s4hhrspnsavgval; + } + + public BigDecimal getS4hhrspnsmaxval() { + return this.s4hhrspnsmaxval; + } + + public void setS4hhrspnsmaxval(BigDecimal s4hhrspnsmaxval) { + this.s4hhrspnsmaxval = s4hhrspnsmaxval; + } + + public BigDecimal getS4hhtrsmtnoitm() { + return this.s4hhtrsmtnoitm; + } + + public void setS4hhtrsmtnoitm(BigDecimal s4hhtrsmtnoitm) { + this.s4hhtrsmtnoitm = s4hhtrsmtnoitm; + } + + public BigDecimal getS5hherrnoitm() { + return this.s5hherrnoitm; + } + + public void setS5hherrnoitm(BigDecimal s5hherrnoitm) { + this.s5hherrnoitm = s5hherrnoitm; + } + + public BigDecimal getS5hhrspnsavgval() { + return this.s5hhrspnsavgval; + } + + public void setS5hhrspnsavgval(BigDecimal s5hhrspnsavgval) { + this.s5hhrspnsavgval = s5hhrspnsavgval; + } + + public BigDecimal getS5hhrspnsmaxval() { + return this.s5hhrspnsmaxval; + } + + public void setS5hhrspnsmaxval(BigDecimal s5hhrspnsmaxval) { + this.s5hhrspnsmaxval = s5hhrspnsmaxval; + } + + public BigDecimal getS5hhtrsmtnoitm() { + return this.s5hhtrsmtnoitm; + } + + public void setS5hhtrsmtnoitm(BigDecimal s5hhtrsmtnoitm) { + this.s5hhtrsmtnoitm = s5hhtrsmtnoitm; + } + + public BigDecimal getS6hherrnoitm() { + return this.s6hherrnoitm; + } + + public void setS6hherrnoitm(BigDecimal s6hherrnoitm) { + this.s6hherrnoitm = s6hherrnoitm; + } + + public BigDecimal getS6hhrspnsavgval() { + return this.s6hhrspnsavgval; + } + + public void setS6hhrspnsavgval(BigDecimal s6hhrspnsavgval) { + this.s6hhrspnsavgval = s6hhrspnsavgval; + } + + public BigDecimal getS6hhrspnsmaxval() { + return this.s6hhrspnsmaxval; + } + + public void setS6hhrspnsmaxval(BigDecimal s6hhrspnsmaxval) { + this.s6hhrspnsmaxval = s6hhrspnsmaxval; + } + + public BigDecimal getS6hhtrsmtnoitm() { + return this.s6hhtrsmtnoitm; + } + + public void setS6hhtrsmtnoitm(BigDecimal s6hhtrsmtnoitm) { + this.s6hhtrsmtnoitm = s6hhtrsmtnoitm; + } + + public BigDecimal getS7hherrnoitm() { + return this.s7hherrnoitm; + } + + public void setS7hherrnoitm(BigDecimal s7hherrnoitm) { + this.s7hherrnoitm = s7hherrnoitm; + } + + public BigDecimal getS7hhrspnsavgval() { + return this.s7hhrspnsavgval; + } + + public void setS7hhrspnsavgval(BigDecimal s7hhrspnsavgval) { + this.s7hhrspnsavgval = s7hhrspnsavgval; + } + + public BigDecimal getS7hhrspnsmaxval() { + return this.s7hhrspnsmaxval; + } + + public void setS7hhrspnsmaxval(BigDecimal s7hhrspnsmaxval) { + this.s7hhrspnsmaxval = s7hhrspnsmaxval; + } + + public BigDecimal getS7hhtrsmtnoitm() { + return this.s7hhtrsmtnoitm; + } + + public void setS7hhtrsmtnoitm(BigDecimal s7hhtrsmtnoitm) { + this.s7hhtrsmtnoitm = s7hhtrsmtnoitm; + } + + public BigDecimal getS8hherrnoitm() { + return this.s8hherrnoitm; + } + + public void setS8hherrnoitm(BigDecimal s8hherrnoitm) { + this.s8hherrnoitm = s8hherrnoitm; + } + + public BigDecimal getS8hhrspnsavgval() { + return this.s8hhrspnsavgval; + } + + public void setS8hhrspnsavgval(BigDecimal s8hhrspnsavgval) { + this.s8hhrspnsavgval = s8hhrspnsavgval; + } + + public BigDecimal getS8hhrspnsmaxval() { + return this.s8hhrspnsmaxval; + } + + public void setS8hhrspnsmaxval(BigDecimal s8hhrspnsmaxval) { + this.s8hhrspnsmaxval = s8hhrspnsmaxval; + } + + public BigDecimal getS8hhtrsmtnoitm() { + return this.s8hhtrsmtnoitm; + } + + public void setS8hhtrsmtnoitm(BigDecimal s8hhtrsmtnoitm) { + this.s8hhtrsmtnoitm = s8hhtrsmtnoitm; + } + + public BigDecimal getS9hherrnoitm() { + return this.s9hherrnoitm; + } + + public void setS9hherrnoitm(BigDecimal s9hherrnoitm) { + this.s9hherrnoitm = s9hherrnoitm; + } + + public BigDecimal getS9hhrspnsavgval() { + return this.s9hhrspnsavgval; + } + + public void setS9hhrspnsavgval(BigDecimal s9hhrspnsavgval) { + this.s9hhrspnsavgval = s9hhrspnsavgval; + } + + public BigDecimal getS9hhrspnsmaxval() { + return this.s9hhrspnsmaxval; + } + + public void setS9hhrspnsmaxval(BigDecimal s9hhrspnsmaxval) { + this.s9hhrspnsmaxval = s9hhrspnsmaxval; + } + + public BigDecimal getS9hhtrsmtnoitm() { + return this.s9hhtrsmtnoitm; + } + + public void setS9hhtrsmtnoitm(BigDecimal s9hhtrsmtnoitm) { + this.s9hhtrsmtnoitm = s9hhtrsmtnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaist02PK.java b/src/model/Tseaist02PK.java new file mode 100644 index 0000000..4be101f --- /dev/null +++ b/src/model/Tseaist02PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaist02 database table. + * + */ +@Embeddable +public class Tseaist02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String statcymd; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=2) + private String intfacptrncd; + + @Column(unique=true, nullable=false, length=4) + private String chnlmdiadstcd; + + @Column(unique=true, nullable=false, length=3) + private String logprcssserno; + + @Column(unique=true, nullable=false, length=1) + private String stndmsguseyn; + + public Tseaist02PK() { + } + public String getStatcymd() { + return this.statcymd; + } + public void setStatcymd(String statcymd) { + this.statcymd = statcymd; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getIntfacptrncd() { + return this.intfacptrncd; + } + public void setIntfacptrncd(String intfacptrncd) { + this.intfacptrncd = intfacptrncd; + } + public String getChnlmdiadstcd() { + return this.chnlmdiadstcd; + } + public void setChnlmdiadstcd(String chnlmdiadstcd) { + this.chnlmdiadstcd = chnlmdiadstcd; + } + public String getLogprcssserno() { + return this.logprcssserno; + } + public void setLogprcssserno(String logprcssserno) { + this.logprcssserno = logprcssserno; + } + public String getStndmsguseyn() { + return this.stndmsguseyn; + } + public void setStndmsguseyn(String stndmsguseyn) { + this.stndmsguseyn = stndmsguseyn; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaist02PK)) { + return false; + } + Tseaist02PK castOther = (Tseaist02PK)other; + return + this.statcymd.equals(castOther.statcymd) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.intfacptrncd.equals(castOther.intfacptrncd) + && this.chnlmdiadstcd.equals(castOther.chnlmdiadstcd) + && this.logprcssserno.equals(castOther.logprcssserno) + && this.stndmsguseyn.equals(castOther.stndmsguseyn); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.statcymd.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.intfacptrncd.hashCode(); + hash = hash * prime + this.chnlmdiadstcd.hashCode(); + hash = hash * prime + this.logprcssserno.hashCode(); + hash = hash * prime + this.stndmsguseyn.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaist03.java b/src/model/Tseaist03.java new file mode 100644 index 0000000..4b5894f --- /dev/null +++ b/src/model/Tseaist03.java @@ -0,0 +1,1055 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaist03 database table. + * + */ +@Entity +@Table(name="tseaist03") +@NamedQuery(name="Tseaist03.findAll", query="SELECT t FROM Tseaist03 t") +public class Tseaist03 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaist03PK id; + + @Column(precision=10) + private BigDecimal s10dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s10ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s10ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s11dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s11ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s11ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s12dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s12ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s12ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s13dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s13ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s13ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s14dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s14ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s14ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s15dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s15ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s15ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s16dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s16ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s16ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s17dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s17ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s17ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s18dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s18ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s18ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s19dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s19ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s19ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s1dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s1ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s1ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s20dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s20ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s20ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s21dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s21ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s21ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s22dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s22ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s22ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s23dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s23ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s23ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s24dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s24ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s24ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s25dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s25ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s25ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s26dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s26ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s26ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s27dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s27ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s27ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s28dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s28ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s28ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s29dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s29ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s29ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s2dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s2ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s2ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s30dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s30ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s30ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s31dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s31ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s31ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s3dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s3ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s3ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s4dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s4ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s4ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s5dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s5ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s5ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s6dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s6ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s6ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s7dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s7ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s7ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s8dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s8ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s8ddtrsmtnoitm; + + @Column(precision=10) + private BigDecimal s9dderrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s9ddrspnsavgval; + + @Column(precision=10) + private BigDecimal s9ddtrsmtnoitm; + + public Tseaist03() { + } + + public Tseaist03PK getId() { + return this.id; + } + + public void setId(Tseaist03PK id) { + this.id = id; + } + + public BigDecimal getS10dderrnoitm() { + return this.s10dderrnoitm; + } + + public void setS10dderrnoitm(BigDecimal s10dderrnoitm) { + this.s10dderrnoitm = s10dderrnoitm; + } + + public BigDecimal getS10ddrspnsavgval() { + return this.s10ddrspnsavgval; + } + + public void setS10ddrspnsavgval(BigDecimal s10ddrspnsavgval) { + this.s10ddrspnsavgval = s10ddrspnsavgval; + } + + public BigDecimal getS10ddtrsmtnoitm() { + return this.s10ddtrsmtnoitm; + } + + public void setS10ddtrsmtnoitm(BigDecimal s10ddtrsmtnoitm) { + this.s10ddtrsmtnoitm = s10ddtrsmtnoitm; + } + + public BigDecimal getS11dderrnoitm() { + return this.s11dderrnoitm; + } + + public void setS11dderrnoitm(BigDecimal s11dderrnoitm) { + this.s11dderrnoitm = s11dderrnoitm; + } + + public BigDecimal getS11ddrspnsavgval() { + return this.s11ddrspnsavgval; + } + + public void setS11ddrspnsavgval(BigDecimal s11ddrspnsavgval) { + this.s11ddrspnsavgval = s11ddrspnsavgval; + } + + public BigDecimal getS11ddtrsmtnoitm() { + return this.s11ddtrsmtnoitm; + } + + public void setS11ddtrsmtnoitm(BigDecimal s11ddtrsmtnoitm) { + this.s11ddtrsmtnoitm = s11ddtrsmtnoitm; + } + + public BigDecimal getS12dderrnoitm() { + return this.s12dderrnoitm; + } + + public void setS12dderrnoitm(BigDecimal s12dderrnoitm) { + this.s12dderrnoitm = s12dderrnoitm; + } + + public BigDecimal getS12ddrspnsavgval() { + return this.s12ddrspnsavgval; + } + + public void setS12ddrspnsavgval(BigDecimal s12ddrspnsavgval) { + this.s12ddrspnsavgval = s12ddrspnsavgval; + } + + public BigDecimal getS12ddtrsmtnoitm() { + return this.s12ddtrsmtnoitm; + } + + public void setS12ddtrsmtnoitm(BigDecimal s12ddtrsmtnoitm) { + this.s12ddtrsmtnoitm = s12ddtrsmtnoitm; + } + + public BigDecimal getS13dderrnoitm() { + return this.s13dderrnoitm; + } + + public void setS13dderrnoitm(BigDecimal s13dderrnoitm) { + this.s13dderrnoitm = s13dderrnoitm; + } + + public BigDecimal getS13ddrspnsavgval() { + return this.s13ddrspnsavgval; + } + + public void setS13ddrspnsavgval(BigDecimal s13ddrspnsavgval) { + this.s13ddrspnsavgval = s13ddrspnsavgval; + } + + public BigDecimal getS13ddtrsmtnoitm() { + return this.s13ddtrsmtnoitm; + } + + public void setS13ddtrsmtnoitm(BigDecimal s13ddtrsmtnoitm) { + this.s13ddtrsmtnoitm = s13ddtrsmtnoitm; + } + + public BigDecimal getS14dderrnoitm() { + return this.s14dderrnoitm; + } + + public void setS14dderrnoitm(BigDecimal s14dderrnoitm) { + this.s14dderrnoitm = s14dderrnoitm; + } + + public BigDecimal getS14ddrspnsavgval() { + return this.s14ddrspnsavgval; + } + + public void setS14ddrspnsavgval(BigDecimal s14ddrspnsavgval) { + this.s14ddrspnsavgval = s14ddrspnsavgval; + } + + public BigDecimal getS14ddtrsmtnoitm() { + return this.s14ddtrsmtnoitm; + } + + public void setS14ddtrsmtnoitm(BigDecimal s14ddtrsmtnoitm) { + this.s14ddtrsmtnoitm = s14ddtrsmtnoitm; + } + + public BigDecimal getS15dderrnoitm() { + return this.s15dderrnoitm; + } + + public void setS15dderrnoitm(BigDecimal s15dderrnoitm) { + this.s15dderrnoitm = s15dderrnoitm; + } + + public BigDecimal getS15ddrspnsavgval() { + return this.s15ddrspnsavgval; + } + + public void setS15ddrspnsavgval(BigDecimal s15ddrspnsavgval) { + this.s15ddrspnsavgval = s15ddrspnsavgval; + } + + public BigDecimal getS15ddtrsmtnoitm() { + return this.s15ddtrsmtnoitm; + } + + public void setS15ddtrsmtnoitm(BigDecimal s15ddtrsmtnoitm) { + this.s15ddtrsmtnoitm = s15ddtrsmtnoitm; + } + + public BigDecimal getS16dderrnoitm() { + return this.s16dderrnoitm; + } + + public void setS16dderrnoitm(BigDecimal s16dderrnoitm) { + this.s16dderrnoitm = s16dderrnoitm; + } + + public BigDecimal getS16ddrspnsavgval() { + return this.s16ddrspnsavgval; + } + + public void setS16ddrspnsavgval(BigDecimal s16ddrspnsavgval) { + this.s16ddrspnsavgval = s16ddrspnsavgval; + } + + public BigDecimal getS16ddtrsmtnoitm() { + return this.s16ddtrsmtnoitm; + } + + public void setS16ddtrsmtnoitm(BigDecimal s16ddtrsmtnoitm) { + this.s16ddtrsmtnoitm = s16ddtrsmtnoitm; + } + + public BigDecimal getS17dderrnoitm() { + return this.s17dderrnoitm; + } + + public void setS17dderrnoitm(BigDecimal s17dderrnoitm) { + this.s17dderrnoitm = s17dderrnoitm; + } + + public BigDecimal getS17ddrspnsavgval() { + return this.s17ddrspnsavgval; + } + + public void setS17ddrspnsavgval(BigDecimal s17ddrspnsavgval) { + this.s17ddrspnsavgval = s17ddrspnsavgval; + } + + public BigDecimal getS17ddtrsmtnoitm() { + return this.s17ddtrsmtnoitm; + } + + public void setS17ddtrsmtnoitm(BigDecimal s17ddtrsmtnoitm) { + this.s17ddtrsmtnoitm = s17ddtrsmtnoitm; + } + + public BigDecimal getS18dderrnoitm() { + return this.s18dderrnoitm; + } + + public void setS18dderrnoitm(BigDecimal s18dderrnoitm) { + this.s18dderrnoitm = s18dderrnoitm; + } + + public BigDecimal getS18ddrspnsavgval() { + return this.s18ddrspnsavgval; + } + + public void setS18ddrspnsavgval(BigDecimal s18ddrspnsavgval) { + this.s18ddrspnsavgval = s18ddrspnsavgval; + } + + public BigDecimal getS18ddtrsmtnoitm() { + return this.s18ddtrsmtnoitm; + } + + public void setS18ddtrsmtnoitm(BigDecimal s18ddtrsmtnoitm) { + this.s18ddtrsmtnoitm = s18ddtrsmtnoitm; + } + + public BigDecimal getS19dderrnoitm() { + return this.s19dderrnoitm; + } + + public void setS19dderrnoitm(BigDecimal s19dderrnoitm) { + this.s19dderrnoitm = s19dderrnoitm; + } + + public BigDecimal getS19ddrspnsavgval() { + return this.s19ddrspnsavgval; + } + + public void setS19ddrspnsavgval(BigDecimal s19ddrspnsavgval) { + this.s19ddrspnsavgval = s19ddrspnsavgval; + } + + public BigDecimal getS19ddtrsmtnoitm() { + return this.s19ddtrsmtnoitm; + } + + public void setS19ddtrsmtnoitm(BigDecimal s19ddtrsmtnoitm) { + this.s19ddtrsmtnoitm = s19ddtrsmtnoitm; + } + + public BigDecimal getS1dderrnoitm() { + return this.s1dderrnoitm; + } + + public void setS1dderrnoitm(BigDecimal s1dderrnoitm) { + this.s1dderrnoitm = s1dderrnoitm; + } + + public BigDecimal getS1ddrspnsavgval() { + return this.s1ddrspnsavgval; + } + + public void setS1ddrspnsavgval(BigDecimal s1ddrspnsavgval) { + this.s1ddrspnsavgval = s1ddrspnsavgval; + } + + public BigDecimal getS1ddtrsmtnoitm() { + return this.s1ddtrsmtnoitm; + } + + public void setS1ddtrsmtnoitm(BigDecimal s1ddtrsmtnoitm) { + this.s1ddtrsmtnoitm = s1ddtrsmtnoitm; + } + + public BigDecimal getS20dderrnoitm() { + return this.s20dderrnoitm; + } + + public void setS20dderrnoitm(BigDecimal s20dderrnoitm) { + this.s20dderrnoitm = s20dderrnoitm; + } + + public BigDecimal getS20ddrspnsavgval() { + return this.s20ddrspnsavgval; + } + + public void setS20ddrspnsavgval(BigDecimal s20ddrspnsavgval) { + this.s20ddrspnsavgval = s20ddrspnsavgval; + } + + public BigDecimal getS20ddtrsmtnoitm() { + return this.s20ddtrsmtnoitm; + } + + public void setS20ddtrsmtnoitm(BigDecimal s20ddtrsmtnoitm) { + this.s20ddtrsmtnoitm = s20ddtrsmtnoitm; + } + + public BigDecimal getS21dderrnoitm() { + return this.s21dderrnoitm; + } + + public void setS21dderrnoitm(BigDecimal s21dderrnoitm) { + this.s21dderrnoitm = s21dderrnoitm; + } + + public BigDecimal getS21ddrspnsavgval() { + return this.s21ddrspnsavgval; + } + + public void setS21ddrspnsavgval(BigDecimal s21ddrspnsavgval) { + this.s21ddrspnsavgval = s21ddrspnsavgval; + } + + public BigDecimal getS21ddtrsmtnoitm() { + return this.s21ddtrsmtnoitm; + } + + public void setS21ddtrsmtnoitm(BigDecimal s21ddtrsmtnoitm) { + this.s21ddtrsmtnoitm = s21ddtrsmtnoitm; + } + + public BigDecimal getS22dderrnoitm() { + return this.s22dderrnoitm; + } + + public void setS22dderrnoitm(BigDecimal s22dderrnoitm) { + this.s22dderrnoitm = s22dderrnoitm; + } + + public BigDecimal getS22ddrspnsavgval() { + return this.s22ddrspnsavgval; + } + + public void setS22ddrspnsavgval(BigDecimal s22ddrspnsavgval) { + this.s22ddrspnsavgval = s22ddrspnsavgval; + } + + public BigDecimal getS22ddtrsmtnoitm() { + return this.s22ddtrsmtnoitm; + } + + public void setS22ddtrsmtnoitm(BigDecimal s22ddtrsmtnoitm) { + this.s22ddtrsmtnoitm = s22ddtrsmtnoitm; + } + + public BigDecimal getS23dderrnoitm() { + return this.s23dderrnoitm; + } + + public void setS23dderrnoitm(BigDecimal s23dderrnoitm) { + this.s23dderrnoitm = s23dderrnoitm; + } + + public BigDecimal getS23ddrspnsavgval() { + return this.s23ddrspnsavgval; + } + + public void setS23ddrspnsavgval(BigDecimal s23ddrspnsavgval) { + this.s23ddrspnsavgval = s23ddrspnsavgval; + } + + public BigDecimal getS23ddtrsmtnoitm() { + return this.s23ddtrsmtnoitm; + } + + public void setS23ddtrsmtnoitm(BigDecimal s23ddtrsmtnoitm) { + this.s23ddtrsmtnoitm = s23ddtrsmtnoitm; + } + + public BigDecimal getS24dderrnoitm() { + return this.s24dderrnoitm; + } + + public void setS24dderrnoitm(BigDecimal s24dderrnoitm) { + this.s24dderrnoitm = s24dderrnoitm; + } + + public BigDecimal getS24ddrspnsavgval() { + return this.s24ddrspnsavgval; + } + + public void setS24ddrspnsavgval(BigDecimal s24ddrspnsavgval) { + this.s24ddrspnsavgval = s24ddrspnsavgval; + } + + public BigDecimal getS24ddtrsmtnoitm() { + return this.s24ddtrsmtnoitm; + } + + public void setS24ddtrsmtnoitm(BigDecimal s24ddtrsmtnoitm) { + this.s24ddtrsmtnoitm = s24ddtrsmtnoitm; + } + + public BigDecimal getS25dderrnoitm() { + return this.s25dderrnoitm; + } + + public void setS25dderrnoitm(BigDecimal s25dderrnoitm) { + this.s25dderrnoitm = s25dderrnoitm; + } + + public BigDecimal getS25ddrspnsavgval() { + return this.s25ddrspnsavgval; + } + + public void setS25ddrspnsavgval(BigDecimal s25ddrspnsavgval) { + this.s25ddrspnsavgval = s25ddrspnsavgval; + } + + public BigDecimal getS25ddtrsmtnoitm() { + return this.s25ddtrsmtnoitm; + } + + public void setS25ddtrsmtnoitm(BigDecimal s25ddtrsmtnoitm) { + this.s25ddtrsmtnoitm = s25ddtrsmtnoitm; + } + + public BigDecimal getS26dderrnoitm() { + return this.s26dderrnoitm; + } + + public void setS26dderrnoitm(BigDecimal s26dderrnoitm) { + this.s26dderrnoitm = s26dderrnoitm; + } + + public BigDecimal getS26ddrspnsavgval() { + return this.s26ddrspnsavgval; + } + + public void setS26ddrspnsavgval(BigDecimal s26ddrspnsavgval) { + this.s26ddrspnsavgval = s26ddrspnsavgval; + } + + public BigDecimal getS26ddtrsmtnoitm() { + return this.s26ddtrsmtnoitm; + } + + public void setS26ddtrsmtnoitm(BigDecimal s26ddtrsmtnoitm) { + this.s26ddtrsmtnoitm = s26ddtrsmtnoitm; + } + + public BigDecimal getS27dderrnoitm() { + return this.s27dderrnoitm; + } + + public void setS27dderrnoitm(BigDecimal s27dderrnoitm) { + this.s27dderrnoitm = s27dderrnoitm; + } + + public BigDecimal getS27ddrspnsavgval() { + return this.s27ddrspnsavgval; + } + + public void setS27ddrspnsavgval(BigDecimal s27ddrspnsavgval) { + this.s27ddrspnsavgval = s27ddrspnsavgval; + } + + public BigDecimal getS27ddtrsmtnoitm() { + return this.s27ddtrsmtnoitm; + } + + public void setS27ddtrsmtnoitm(BigDecimal s27ddtrsmtnoitm) { + this.s27ddtrsmtnoitm = s27ddtrsmtnoitm; + } + + public BigDecimal getS28dderrnoitm() { + return this.s28dderrnoitm; + } + + public void setS28dderrnoitm(BigDecimal s28dderrnoitm) { + this.s28dderrnoitm = s28dderrnoitm; + } + + public BigDecimal getS28ddrspnsavgval() { + return this.s28ddrspnsavgval; + } + + public void setS28ddrspnsavgval(BigDecimal s28ddrspnsavgval) { + this.s28ddrspnsavgval = s28ddrspnsavgval; + } + + public BigDecimal getS28ddtrsmtnoitm() { + return this.s28ddtrsmtnoitm; + } + + public void setS28ddtrsmtnoitm(BigDecimal s28ddtrsmtnoitm) { + this.s28ddtrsmtnoitm = s28ddtrsmtnoitm; + } + + public BigDecimal getS29dderrnoitm() { + return this.s29dderrnoitm; + } + + public void setS29dderrnoitm(BigDecimal s29dderrnoitm) { + this.s29dderrnoitm = s29dderrnoitm; + } + + public BigDecimal getS29ddrspnsavgval() { + return this.s29ddrspnsavgval; + } + + public void setS29ddrspnsavgval(BigDecimal s29ddrspnsavgval) { + this.s29ddrspnsavgval = s29ddrspnsavgval; + } + + public BigDecimal getS29ddtrsmtnoitm() { + return this.s29ddtrsmtnoitm; + } + + public void setS29ddtrsmtnoitm(BigDecimal s29ddtrsmtnoitm) { + this.s29ddtrsmtnoitm = s29ddtrsmtnoitm; + } + + public BigDecimal getS2dderrnoitm() { + return this.s2dderrnoitm; + } + + public void setS2dderrnoitm(BigDecimal s2dderrnoitm) { + this.s2dderrnoitm = s2dderrnoitm; + } + + public BigDecimal getS2ddrspnsavgval() { + return this.s2ddrspnsavgval; + } + + public void setS2ddrspnsavgval(BigDecimal s2ddrspnsavgval) { + this.s2ddrspnsavgval = s2ddrspnsavgval; + } + + public BigDecimal getS2ddtrsmtnoitm() { + return this.s2ddtrsmtnoitm; + } + + public void setS2ddtrsmtnoitm(BigDecimal s2ddtrsmtnoitm) { + this.s2ddtrsmtnoitm = s2ddtrsmtnoitm; + } + + public BigDecimal getS30dderrnoitm() { + return this.s30dderrnoitm; + } + + public void setS30dderrnoitm(BigDecimal s30dderrnoitm) { + this.s30dderrnoitm = s30dderrnoitm; + } + + public BigDecimal getS30ddrspnsavgval() { + return this.s30ddrspnsavgval; + } + + public void setS30ddrspnsavgval(BigDecimal s30ddrspnsavgval) { + this.s30ddrspnsavgval = s30ddrspnsavgval; + } + + public BigDecimal getS30ddtrsmtnoitm() { + return this.s30ddtrsmtnoitm; + } + + public void setS30ddtrsmtnoitm(BigDecimal s30ddtrsmtnoitm) { + this.s30ddtrsmtnoitm = s30ddtrsmtnoitm; + } + + public BigDecimal getS31dderrnoitm() { + return this.s31dderrnoitm; + } + + public void setS31dderrnoitm(BigDecimal s31dderrnoitm) { + this.s31dderrnoitm = s31dderrnoitm; + } + + public BigDecimal getS31ddrspnsavgval() { + return this.s31ddrspnsavgval; + } + + public void setS31ddrspnsavgval(BigDecimal s31ddrspnsavgval) { + this.s31ddrspnsavgval = s31ddrspnsavgval; + } + + public BigDecimal getS31ddtrsmtnoitm() { + return this.s31ddtrsmtnoitm; + } + + public void setS31ddtrsmtnoitm(BigDecimal s31ddtrsmtnoitm) { + this.s31ddtrsmtnoitm = s31ddtrsmtnoitm; + } + + public BigDecimal getS3dderrnoitm() { + return this.s3dderrnoitm; + } + + public void setS3dderrnoitm(BigDecimal s3dderrnoitm) { + this.s3dderrnoitm = s3dderrnoitm; + } + + public BigDecimal getS3ddrspnsavgval() { + return this.s3ddrspnsavgval; + } + + public void setS3ddrspnsavgval(BigDecimal s3ddrspnsavgval) { + this.s3ddrspnsavgval = s3ddrspnsavgval; + } + + public BigDecimal getS3ddtrsmtnoitm() { + return this.s3ddtrsmtnoitm; + } + + public void setS3ddtrsmtnoitm(BigDecimal s3ddtrsmtnoitm) { + this.s3ddtrsmtnoitm = s3ddtrsmtnoitm; + } + + public BigDecimal getS4dderrnoitm() { + return this.s4dderrnoitm; + } + + public void setS4dderrnoitm(BigDecimal s4dderrnoitm) { + this.s4dderrnoitm = s4dderrnoitm; + } + + public BigDecimal getS4ddrspnsavgval() { + return this.s4ddrspnsavgval; + } + + public void setS4ddrspnsavgval(BigDecimal s4ddrspnsavgval) { + this.s4ddrspnsavgval = s4ddrspnsavgval; + } + + public BigDecimal getS4ddtrsmtnoitm() { + return this.s4ddtrsmtnoitm; + } + + public void setS4ddtrsmtnoitm(BigDecimal s4ddtrsmtnoitm) { + this.s4ddtrsmtnoitm = s4ddtrsmtnoitm; + } + + public BigDecimal getS5dderrnoitm() { + return this.s5dderrnoitm; + } + + public void setS5dderrnoitm(BigDecimal s5dderrnoitm) { + this.s5dderrnoitm = s5dderrnoitm; + } + + public BigDecimal getS5ddrspnsavgval() { + return this.s5ddrspnsavgval; + } + + public void setS5ddrspnsavgval(BigDecimal s5ddrspnsavgval) { + this.s5ddrspnsavgval = s5ddrspnsavgval; + } + + public BigDecimal getS5ddtrsmtnoitm() { + return this.s5ddtrsmtnoitm; + } + + public void setS5ddtrsmtnoitm(BigDecimal s5ddtrsmtnoitm) { + this.s5ddtrsmtnoitm = s5ddtrsmtnoitm; + } + + public BigDecimal getS6dderrnoitm() { + return this.s6dderrnoitm; + } + + public void setS6dderrnoitm(BigDecimal s6dderrnoitm) { + this.s6dderrnoitm = s6dderrnoitm; + } + + public BigDecimal getS6ddrspnsavgval() { + return this.s6ddrspnsavgval; + } + + public void setS6ddrspnsavgval(BigDecimal s6ddrspnsavgval) { + this.s6ddrspnsavgval = s6ddrspnsavgval; + } + + public BigDecimal getS6ddtrsmtnoitm() { + return this.s6ddtrsmtnoitm; + } + + public void setS6ddtrsmtnoitm(BigDecimal s6ddtrsmtnoitm) { + this.s6ddtrsmtnoitm = s6ddtrsmtnoitm; + } + + public BigDecimal getS7dderrnoitm() { + return this.s7dderrnoitm; + } + + public void setS7dderrnoitm(BigDecimal s7dderrnoitm) { + this.s7dderrnoitm = s7dderrnoitm; + } + + public BigDecimal getS7ddrspnsavgval() { + return this.s7ddrspnsavgval; + } + + public void setS7ddrspnsavgval(BigDecimal s7ddrspnsavgval) { + this.s7ddrspnsavgval = s7ddrspnsavgval; + } + + public BigDecimal getS7ddtrsmtnoitm() { + return this.s7ddtrsmtnoitm; + } + + public void setS7ddtrsmtnoitm(BigDecimal s7ddtrsmtnoitm) { + this.s7ddtrsmtnoitm = s7ddtrsmtnoitm; + } + + public BigDecimal getS8dderrnoitm() { + return this.s8dderrnoitm; + } + + public void setS8dderrnoitm(BigDecimal s8dderrnoitm) { + this.s8dderrnoitm = s8dderrnoitm; + } + + public BigDecimal getS8ddrspnsavgval() { + return this.s8ddrspnsavgval; + } + + public void setS8ddrspnsavgval(BigDecimal s8ddrspnsavgval) { + this.s8ddrspnsavgval = s8ddrspnsavgval; + } + + public BigDecimal getS8ddtrsmtnoitm() { + return this.s8ddtrsmtnoitm; + } + + public void setS8ddtrsmtnoitm(BigDecimal s8ddtrsmtnoitm) { + this.s8ddtrsmtnoitm = s8ddtrsmtnoitm; + } + + public BigDecimal getS9dderrnoitm() { + return this.s9dderrnoitm; + } + + public void setS9dderrnoitm(BigDecimal s9dderrnoitm) { + this.s9dderrnoitm = s9dderrnoitm; + } + + public BigDecimal getS9ddrspnsavgval() { + return this.s9ddrspnsavgval; + } + + public void setS9ddrspnsavgval(BigDecimal s9ddrspnsavgval) { + this.s9ddrspnsavgval = s9ddrspnsavgval; + } + + public BigDecimal getS9ddtrsmtnoitm() { + return this.s9ddtrsmtnoitm; + } + + public void setS9ddtrsmtnoitm(BigDecimal s9ddtrsmtnoitm) { + this.s9ddtrsmtnoitm = s9ddtrsmtnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaist03PK.java b/src/model/Tseaist03PK.java new file mode 100644 index 0000000..0d11d25 --- /dev/null +++ b/src/model/Tseaist03PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaist03 database table. + * + */ +@Embeddable +public class Tseaist03PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=6) + private String statcym; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=2) + private String intfacptrncd; + + @Column(unique=true, nullable=false, length=4) + private String chnlmdiadstcd; + + @Column(unique=true, nullable=false, length=3) + private String logprcssserno; + + @Column(unique=true, nullable=false, length=1) + private String stndmsguseyn; + + public Tseaist03PK() { + } + public String getStatcym() { + return this.statcym; + } + public void setStatcym(String statcym) { + this.statcym = statcym; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getIntfacptrncd() { + return this.intfacptrncd; + } + public void setIntfacptrncd(String intfacptrncd) { + this.intfacptrncd = intfacptrncd; + } + public String getChnlmdiadstcd() { + return this.chnlmdiadstcd; + } + public void setChnlmdiadstcd(String chnlmdiadstcd) { + this.chnlmdiadstcd = chnlmdiadstcd; + } + public String getLogprcssserno() { + return this.logprcssserno; + } + public void setLogprcssserno(String logprcssserno) { + this.logprcssserno = logprcssserno; + } + public String getStndmsguseyn() { + return this.stndmsguseyn; + } + public void setStndmsguseyn(String stndmsguseyn) { + this.stndmsguseyn = stndmsguseyn; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaist03PK)) { + return false; + } + Tseaist03PK castOther = (Tseaist03PK)other; + return + this.statcym.equals(castOther.statcym) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.intfacptrncd.equals(castOther.intfacptrncd) + && this.chnlmdiadstcd.equals(castOther.chnlmdiadstcd) + && this.logprcssserno.equals(castOther.logprcssserno) + && this.stndmsguseyn.equals(castOther.stndmsguseyn); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.statcym.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.intfacptrncd.hashCode(); + hash = hash * prime + this.chnlmdiadstcd.hashCode(); + hash = hash * prime + this.logprcssserno.hashCode(); + hash = hash * prime + this.stndmsguseyn.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaist04.java b/src/model/Tseaist04.java new file mode 100644 index 0000000..d38b195 --- /dev/null +++ b/src/model/Tseaist04.java @@ -0,0 +1,428 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaist04 database table. + * + */ +@Entity +@Table(name="tseaist04") +@NamedQuery(name="Tseaist04.findAll", query="SELECT t FROM Tseaist04 t") +public class Tseaist04 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaist04PK id; + + @Column(precision=10) + private BigDecimal s10mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s10mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s10mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s11mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s11mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s11mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s12mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s12mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s12mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s1mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s1mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s1mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s2mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s2mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s2mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s3mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s3mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s3mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s4mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s4mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s4mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s5mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s5mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s5mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s6mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s6mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s6mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s7mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s7mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s7mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s8mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s8mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s8mntrsmtnoitm; + + @Column(precision=10) + private BigDecimal s9mnerrnoitm; + + @Column(precision=10, scale=3) + private BigDecimal s9mnrspnsavgval; + + @Column(precision=10) + private BigDecimal s9mntrsmtnoitm; + + public Tseaist04() { + } + + public Tseaist04PK getId() { + return this.id; + } + + public void setId(Tseaist04PK id) { + this.id = id; + } + + public BigDecimal getS10mnerrnoitm() { + return this.s10mnerrnoitm; + } + + public void setS10mnerrnoitm(BigDecimal s10mnerrnoitm) { + this.s10mnerrnoitm = s10mnerrnoitm; + } + + public BigDecimal getS10mnrspnsavgval() { + return this.s10mnrspnsavgval; + } + + public void setS10mnrspnsavgval(BigDecimal s10mnrspnsavgval) { + this.s10mnrspnsavgval = s10mnrspnsavgval; + } + + public BigDecimal getS10mntrsmtnoitm() { + return this.s10mntrsmtnoitm; + } + + public void setS10mntrsmtnoitm(BigDecimal s10mntrsmtnoitm) { + this.s10mntrsmtnoitm = s10mntrsmtnoitm; + } + + public BigDecimal getS11mnerrnoitm() { + return this.s11mnerrnoitm; + } + + public void setS11mnerrnoitm(BigDecimal s11mnerrnoitm) { + this.s11mnerrnoitm = s11mnerrnoitm; + } + + public BigDecimal getS11mnrspnsavgval() { + return this.s11mnrspnsavgval; + } + + public void setS11mnrspnsavgval(BigDecimal s11mnrspnsavgval) { + this.s11mnrspnsavgval = s11mnrspnsavgval; + } + + public BigDecimal getS11mntrsmtnoitm() { + return this.s11mntrsmtnoitm; + } + + public void setS11mntrsmtnoitm(BigDecimal s11mntrsmtnoitm) { + this.s11mntrsmtnoitm = s11mntrsmtnoitm; + } + + public BigDecimal getS12mnerrnoitm() { + return this.s12mnerrnoitm; + } + + public void setS12mnerrnoitm(BigDecimal s12mnerrnoitm) { + this.s12mnerrnoitm = s12mnerrnoitm; + } + + public BigDecimal getS12mnrspnsavgval() { + return this.s12mnrspnsavgval; + } + + public void setS12mnrspnsavgval(BigDecimal s12mnrspnsavgval) { + this.s12mnrspnsavgval = s12mnrspnsavgval; + } + + public BigDecimal getS12mntrsmtnoitm() { + return this.s12mntrsmtnoitm; + } + + public void setS12mntrsmtnoitm(BigDecimal s12mntrsmtnoitm) { + this.s12mntrsmtnoitm = s12mntrsmtnoitm; + } + + public BigDecimal getS1mnerrnoitm() { + return this.s1mnerrnoitm; + } + + public void setS1mnerrnoitm(BigDecimal s1mnerrnoitm) { + this.s1mnerrnoitm = s1mnerrnoitm; + } + + public BigDecimal getS1mnrspnsavgval() { + return this.s1mnrspnsavgval; + } + + public void setS1mnrspnsavgval(BigDecimal s1mnrspnsavgval) { + this.s1mnrspnsavgval = s1mnrspnsavgval; + } + + public BigDecimal getS1mntrsmtnoitm() { + return this.s1mntrsmtnoitm; + } + + public void setS1mntrsmtnoitm(BigDecimal s1mntrsmtnoitm) { + this.s1mntrsmtnoitm = s1mntrsmtnoitm; + } + + public BigDecimal getS2mnerrnoitm() { + return this.s2mnerrnoitm; + } + + public void setS2mnerrnoitm(BigDecimal s2mnerrnoitm) { + this.s2mnerrnoitm = s2mnerrnoitm; + } + + public BigDecimal getS2mnrspnsavgval() { + return this.s2mnrspnsavgval; + } + + public void setS2mnrspnsavgval(BigDecimal s2mnrspnsavgval) { + this.s2mnrspnsavgval = s2mnrspnsavgval; + } + + public BigDecimal getS2mntrsmtnoitm() { + return this.s2mntrsmtnoitm; + } + + public void setS2mntrsmtnoitm(BigDecimal s2mntrsmtnoitm) { + this.s2mntrsmtnoitm = s2mntrsmtnoitm; + } + + public BigDecimal getS3mnerrnoitm() { + return this.s3mnerrnoitm; + } + + public void setS3mnerrnoitm(BigDecimal s3mnerrnoitm) { + this.s3mnerrnoitm = s3mnerrnoitm; + } + + public BigDecimal getS3mnrspnsavgval() { + return this.s3mnrspnsavgval; + } + + public void setS3mnrspnsavgval(BigDecimal s3mnrspnsavgval) { + this.s3mnrspnsavgval = s3mnrspnsavgval; + } + + public BigDecimal getS3mntrsmtnoitm() { + return this.s3mntrsmtnoitm; + } + + public void setS3mntrsmtnoitm(BigDecimal s3mntrsmtnoitm) { + this.s3mntrsmtnoitm = s3mntrsmtnoitm; + } + + public BigDecimal getS4mnerrnoitm() { + return this.s4mnerrnoitm; + } + + public void setS4mnerrnoitm(BigDecimal s4mnerrnoitm) { + this.s4mnerrnoitm = s4mnerrnoitm; + } + + public BigDecimal getS4mnrspnsavgval() { + return this.s4mnrspnsavgval; + } + + public void setS4mnrspnsavgval(BigDecimal s4mnrspnsavgval) { + this.s4mnrspnsavgval = s4mnrspnsavgval; + } + + public BigDecimal getS4mntrsmtnoitm() { + return this.s4mntrsmtnoitm; + } + + public void setS4mntrsmtnoitm(BigDecimal s4mntrsmtnoitm) { + this.s4mntrsmtnoitm = s4mntrsmtnoitm; + } + + public BigDecimal getS5mnerrnoitm() { + return this.s5mnerrnoitm; + } + + public void setS5mnerrnoitm(BigDecimal s5mnerrnoitm) { + this.s5mnerrnoitm = s5mnerrnoitm; + } + + public BigDecimal getS5mnrspnsavgval() { + return this.s5mnrspnsavgval; + } + + public void setS5mnrspnsavgval(BigDecimal s5mnrspnsavgval) { + this.s5mnrspnsavgval = s5mnrspnsavgval; + } + + public BigDecimal getS5mntrsmtnoitm() { + return this.s5mntrsmtnoitm; + } + + public void setS5mntrsmtnoitm(BigDecimal s5mntrsmtnoitm) { + this.s5mntrsmtnoitm = s5mntrsmtnoitm; + } + + public BigDecimal getS6mnerrnoitm() { + return this.s6mnerrnoitm; + } + + public void setS6mnerrnoitm(BigDecimal s6mnerrnoitm) { + this.s6mnerrnoitm = s6mnerrnoitm; + } + + public BigDecimal getS6mnrspnsavgval() { + return this.s6mnrspnsavgval; + } + + public void setS6mnrspnsavgval(BigDecimal s6mnrspnsavgval) { + this.s6mnrspnsavgval = s6mnrspnsavgval; + } + + public BigDecimal getS6mntrsmtnoitm() { + return this.s6mntrsmtnoitm; + } + + public void setS6mntrsmtnoitm(BigDecimal s6mntrsmtnoitm) { + this.s6mntrsmtnoitm = s6mntrsmtnoitm; + } + + public BigDecimal getS7mnerrnoitm() { + return this.s7mnerrnoitm; + } + + public void setS7mnerrnoitm(BigDecimal s7mnerrnoitm) { + this.s7mnerrnoitm = s7mnerrnoitm; + } + + public BigDecimal getS7mnrspnsavgval() { + return this.s7mnrspnsavgval; + } + + public void setS7mnrspnsavgval(BigDecimal s7mnrspnsavgval) { + this.s7mnrspnsavgval = s7mnrspnsavgval; + } + + public BigDecimal getS7mntrsmtnoitm() { + return this.s7mntrsmtnoitm; + } + + public void setS7mntrsmtnoitm(BigDecimal s7mntrsmtnoitm) { + this.s7mntrsmtnoitm = s7mntrsmtnoitm; + } + + public BigDecimal getS8mnerrnoitm() { + return this.s8mnerrnoitm; + } + + public void setS8mnerrnoitm(BigDecimal s8mnerrnoitm) { + this.s8mnerrnoitm = s8mnerrnoitm; + } + + public BigDecimal getS8mnrspnsavgval() { + return this.s8mnrspnsavgval; + } + + public void setS8mnrspnsavgval(BigDecimal s8mnrspnsavgval) { + this.s8mnrspnsavgval = s8mnrspnsavgval; + } + + public BigDecimal getS8mntrsmtnoitm() { + return this.s8mntrsmtnoitm; + } + + public void setS8mntrsmtnoitm(BigDecimal s8mntrsmtnoitm) { + this.s8mntrsmtnoitm = s8mntrsmtnoitm; + } + + public BigDecimal getS9mnerrnoitm() { + return this.s9mnerrnoitm; + } + + public void setS9mnerrnoitm(BigDecimal s9mnerrnoitm) { + this.s9mnerrnoitm = s9mnerrnoitm; + } + + public BigDecimal getS9mnrspnsavgval() { + return this.s9mnrspnsavgval; + } + + public void setS9mnrspnsavgval(BigDecimal s9mnrspnsavgval) { + this.s9mnrspnsavgval = s9mnrspnsavgval; + } + + public BigDecimal getS9mntrsmtnoitm() { + return this.s9mntrsmtnoitm; + } + + public void setS9mntrsmtnoitm(BigDecimal s9mntrsmtnoitm) { + this.s9mntrsmtnoitm = s9mntrsmtnoitm; + } + +} \ No newline at end of file diff --git a/src/model/Tseaist04PK.java b/src/model/Tseaist04PK.java new file mode 100644 index 0000000..8054cd0 --- /dev/null +++ b/src/model/Tseaist04PK.java @@ -0,0 +1,112 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaist04 database table. + * + */ +@Embeddable +public class Tseaist04PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=6) + private String statcym; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=30) + private String eaisvcname; + + @Column(unique=true, nullable=false, length=2) + private String intfacptrncd; + + @Column(unique=true, nullable=false, length=4) + private String chnlmdiadstcd; + + @Column(unique=true, nullable=false, length=3) + private String logprcssserno; + + @Column(unique=true, nullable=false, length=1) + private String stndmsguseyn; + + public Tseaist04PK() { + } + public String getStatcym() { + return this.statcym; + } + public void setStatcym(String statcym) { + this.statcym = statcym; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getEaisvcname() { + return this.eaisvcname; + } + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + public String getIntfacptrncd() { + return this.intfacptrncd; + } + public void setIntfacptrncd(String intfacptrncd) { + this.intfacptrncd = intfacptrncd; + } + public String getChnlmdiadstcd() { + return this.chnlmdiadstcd; + } + public void setChnlmdiadstcd(String chnlmdiadstcd) { + this.chnlmdiadstcd = chnlmdiadstcd; + } + public String getLogprcssserno() { + return this.logprcssserno; + } + public void setLogprcssserno(String logprcssserno) { + this.logprcssserno = logprcssserno; + } + public String getStndmsguseyn() { + return this.stndmsguseyn; + } + public void setStndmsguseyn(String stndmsguseyn) { + this.stndmsguseyn = stndmsguseyn; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaist04PK)) { + return false; + } + Tseaist04PK castOther = (Tseaist04PK)other; + return + this.statcym.equals(castOther.statcym) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.eaisvcname.equals(castOther.eaisvcname) + && this.intfacptrncd.equals(castOther.intfacptrncd) + && this.chnlmdiadstcd.equals(castOther.chnlmdiadstcd) + && this.logprcssserno.equals(castOther.logprcssserno) + && this.stndmsguseyn.equals(castOther.stndmsguseyn); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.statcym.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.eaisvcname.hashCode(); + hash = hash * prime + this.intfacptrncd.hashCode(); + hash = hash * prime + this.chnlmdiadstcd.hashCode(); + hash = hash * prime + this.logprcssserno.hashCode(); + hash = hash * prime + this.stndmsguseyn.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaist05.java b/src/model/Tseaist05.java new file mode 100644 index 0000000..6f00d40 --- /dev/null +++ b/src/model/Tseaist05.java @@ -0,0 +1,110 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaist05 database table. + * + */ +@Entity +@Table(name="tseaist05") +@NamedQuery(name="Tseaist05.findAll", query="SELECT t FROM Tseaist05 t") +public class Tseaist05 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=16) + private String statcgathrhms; + + @Column(precision=10) + private BigDecimal cpusysuseval; + + @Column(precision=10) + private BigDecimal cpuuseruseval; + + @Column(precision=10) + private BigDecimal cpuwaitval; + + @Column(length=20) + private String eaisevrinstncname; + + @Column(precision=10) + private BigDecimal mmryinspcval; + + @Column(precision=10) + private BigDecimal mmryitrchval; + + @Column(precision=10) + private BigDecimal mmryretunval; + + public Tseaist05() { + } + + public String getStatcgathrhms() { + return this.statcgathrhms; + } + + public void setStatcgathrhms(String statcgathrhms) { + this.statcgathrhms = statcgathrhms; + } + + public BigDecimal getCpusysuseval() { + return this.cpusysuseval; + } + + public void setCpusysuseval(BigDecimal cpusysuseval) { + this.cpusysuseval = cpusysuseval; + } + + public BigDecimal getCpuuseruseval() { + return this.cpuuseruseval; + } + + public void setCpuuseruseval(BigDecimal cpuuseruseval) { + this.cpuuseruseval = cpuuseruseval; + } + + public BigDecimal getCpuwaitval() { + return this.cpuwaitval; + } + + public void setCpuwaitval(BigDecimal cpuwaitval) { + this.cpuwaitval = cpuwaitval; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public BigDecimal getMmryinspcval() { + return this.mmryinspcval; + } + + public void setMmryinspcval(BigDecimal mmryinspcval) { + this.mmryinspcval = mmryinspcval; + } + + public BigDecimal getMmryitrchval() { + return this.mmryitrchval; + } + + public void setMmryitrchval(BigDecimal mmryitrchval) { + this.mmryitrchval = mmryitrchval; + } + + public BigDecimal getMmryretunval() { + return this.mmryretunval; + } + + public void setMmryretunval(BigDecimal mmryretunval) { + this.mmryretunval = mmryretunval; + } + +} \ No newline at end of file diff --git a/src/model/Tseaist06.java b/src/model/Tseaist06.java new file mode 100644 index 0000000..1058352 --- /dev/null +++ b/src/model/Tseaist06.java @@ -0,0 +1,95 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; +import java.math.BigDecimal; + + +/** + * The persistent class for the tseaist06 database table. + * + */ +@Entity +@Table(name="tseaist06") +@NamedQuery(name="Tseaist06.findAll", query="SELECT t FROM Tseaist06 t") +public class Tseaist06 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaist06PK id; + + private Long errorcnt; + + @Column(precision=10) + private BigDecimal errorlen; + + private Long successcnt; + + @Column(precision=10) + private BigDecimal successlen; + + private Long totalcnt; + + @Column(precision=10) + private BigDecimal totallen; + + public Tseaist06() { + } + + public Tseaist06PK getId() { + return this.id; + } + + public void setId(Tseaist06PK id) { + this.id = id; + } + + public Long getErrorcnt() { + return this.errorcnt; + } + + public void setErrorcnt(Long errorcnt) { + this.errorcnt = errorcnt; + } + + public BigDecimal getErrorlen() { + return this.errorlen; + } + + public void setErrorlen(BigDecimal errorlen) { + this.errorlen = errorlen; + } + + public Long getSuccesscnt() { + return this.successcnt; + } + + public void setSuccesscnt(Long successcnt) { + this.successcnt = successcnt; + } + + public BigDecimal getSuccesslen() { + return this.successlen; + } + + public void setSuccesslen(BigDecimal successlen) { + this.successlen = successlen; + } + + public Long getTotalcnt() { + return this.totalcnt; + } + + public void setTotalcnt(Long totalcnt) { + this.totalcnt = totalcnt; + } + + public BigDecimal getTotallen() { + return this.totallen; + } + + public void setTotallen(BigDecimal totallen) { + this.totallen = totallen; + } + +} \ No newline at end of file diff --git a/src/model/Tseaist06PK.java b/src/model/Tseaist06PK.java new file mode 100644 index 0000000..8f65acc --- /dev/null +++ b/src/model/Tseaist06PK.java @@ -0,0 +1,101 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaist06 database table. + * + */ +@Embeddable +public class Tseaist06PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=8) + private String statcymd; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=10) + private String appdstcd; + + @Column(unique=true, nullable=false, length=20) + private String companycode; + + @Column(unique=true, nullable=false, length=20) + private String adptrinsticode; + + @Column(unique=true, nullable=false, length=1) + private String typecode; + + public Tseaist06PK() { + } + public String getStatcymd() { + return this.statcymd; + } + public void setStatcymd(String statcymd) { + this.statcymd = statcymd; + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getAppdstcd() { + return this.appdstcd; + } + public void setAppdstcd(String appdstcd) { + this.appdstcd = appdstcd; + } + public String getCompanycode() { + return this.companycode; + } + public void setCompanycode(String companycode) { + this.companycode = companycode; + } + public String getAdptrinsticode() { + return this.adptrinsticode; + } + public void setAdptrinsticode(String adptrinsticode) { + this.adptrinsticode = adptrinsticode; + } + public String getTypecode() { + return this.typecode; + } + public void setTypecode(String typecode) { + this.typecode = typecode; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaist06PK)) { + return false; + } + Tseaist06PK castOther = (Tseaist06PK)other; + return + this.statcymd.equals(castOther.statcymd) + && this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.appdstcd.equals(castOther.appdstcd) + && this.companycode.equals(castOther.companycode) + && this.adptrinsticode.equals(castOther.adptrinsticode) + && this.typecode.equals(castOther.typecode); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.statcymd.hashCode(); + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.appdstcd.hashCode(); + hash = hash * prime + this.companycode.hashCode(); + hash = hash * prime + this.adptrinsticode.hashCode(); + hash = hash * prime + this.typecode.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaisy01.java b/src/model/Tseaisy01.java new file mode 100644 index 0000000..69105fc --- /dev/null +++ b/src/model/Tseaisy01.java @@ -0,0 +1,43 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaisy01 database table. + * + */ +@Entity +@Table(name="tseaisy01") +@NamedQuery(name="Tseaisy01.findAll", query="SELECT t FROM Tseaisy01 t") +public class Tseaisy01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=12) + private String sysdomnname; + + @Column(length=400) + private String sysdomndesc; + + public Tseaisy01() { + } + + public String getSysdomnname() { + return this.sysdomnname; + } + + public void setSysdomnname(String sysdomnname) { + this.sysdomnname = sysdomnname; + } + + public String getSysdomndesc() { + return this.sysdomndesc; + } + + public void setSysdomndesc(String sysdomndesc) { + this.sysdomndesc = sysdomndesc; + } + +} \ No newline at end of file diff --git a/src/model/Tseaisy02.java b/src/model/Tseaisy02.java new file mode 100644 index 0000000..c50d8bd --- /dev/null +++ b/src/model/Tseaisy02.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaisy02 database table. + * + */ +@Entity +@Table(name="tseaisy02") +@NamedQuery(name="Tseaisy02.findAll", query="SELECT t FROM Tseaisy02 t") +public class Tseaisy02 implements Serializable { + private static final long serialVersionUID = 1L; + + @Column(length=500) + private String cloudrouterurl; + + @Column(length=300) + private String eaisevrinstncname; + + @Column(length=50) + private String eaisevrip; + + @Column(length=20) + private String flovrsevrname; + + @Column(length=300) + private String hostname; + + @Column(length=5) + private String sevrlsnportname; + + public Tseaisy02() { + } + + public String getCloudrouterurl() { + return this.cloudrouterurl; + } + + public void setCloudrouterurl(String cloudrouterurl) { + this.cloudrouterurl = cloudrouterurl; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public String getEaisevrip() { + return this.eaisevrip; + } + + public void setEaisevrip(String eaisevrip) { + this.eaisevrip = eaisevrip; + } + + public String getFlovrsevrname() { + return this.flovrsevrname; + } + + public void setFlovrsevrname(String flovrsevrname) { + this.flovrsevrname = flovrsevrname; + } + + public String getHostname() { + return this.hostname; + } + + public void setHostname(String hostname) { + this.hostname = hostname; + } + + public String getSevrlsnportname() { + return this.sevrlsnportname; + } + + public void setSevrlsnportname(String sevrlsnportname) { + this.sevrlsnportname = sevrlsnportname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaiti01.java b/src/model/Tseaiti01.java new file mode 100644 index 0000000..e3be90b --- /dev/null +++ b/src/model/Tseaiti01.java @@ -0,0 +1,76 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaiti01 database table. + * + */ +@Entity +@Table(name="tseaiti01") +@NamedQuery(name="Tseaiti01.findAll", query="SELECT t FROM Tseaiti01 t") +public class Tseaiti01 implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(unique=true, nullable=false, length=30) + private String eaictrlname; + + @Column(length=17) + private String ctrlprcssyms; + + @Column(length=100) + private String eaictrldsticctnt; + + @Column(length=1) + private String eaictrlnamedstcd; + + @Column(length=8) + private String tranctrlprcssname; + + public Tseaiti01() { + } + + public String getEaictrlname() { + return this.eaictrlname; + } + + public void setEaictrlname(String eaictrlname) { + this.eaictrlname = eaictrlname; + } + + public String getCtrlprcssyms() { + return this.ctrlprcssyms; + } + + public void setCtrlprcssyms(String ctrlprcssyms) { + this.ctrlprcssyms = ctrlprcssyms; + } + + public String getEaictrldsticctnt() { + return this.eaictrldsticctnt; + } + + public void setEaictrldsticctnt(String eaictrldsticctnt) { + this.eaictrldsticctnt = eaictrldsticctnt; + } + + public String getEaictrlnamedstcd() { + return this.eaictrlnamedstcd; + } + + public void setEaictrlnamedstcd(String eaictrlnamedstcd) { + this.eaictrlnamedstcd = eaictrlnamedstcd; + } + + public String getTranctrlprcssname() { + return this.tranctrlprcssname; + } + + public void setTranctrlprcssname(String tranctrlprcssname) { + this.tranctrlprcssname = tranctrlprcssname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaitl01.java b/src/model/Tseaitl01.java new file mode 100644 index 0000000..42b4d17 --- /dev/null +++ b/src/model/Tseaitl01.java @@ -0,0 +1,86 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaitl01 database table. + * + */ +@Entity +@Table(name="tseaitl01") +@NamedQuery(name="Tseaitl01.findAll", query="SELECT t FROM Tseaitl01 t") +public class Tseaitl01 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaitl01PK id; + + @Column(length=8) + private String ctrlprcssname; + + @Column(length=17) + private String ctrlrevocyms; + + @Column(length=100) + private String eaictrldsticctnt; + + @Column(length=1) + private String eaictrlnamedstcd; + + @Column(length=8) + private String revocprcssname; + + public Tseaitl01() { + } + + public Tseaitl01PK getId() { + return this.id; + } + + public void setId(Tseaitl01PK id) { + this.id = id; + } + + public String getCtrlprcssname() { + return this.ctrlprcssname; + } + + public void setCtrlprcssname(String ctrlprcssname) { + this.ctrlprcssname = ctrlprcssname; + } + + public String getCtrlrevocyms() { + return this.ctrlrevocyms; + } + + public void setCtrlrevocyms(String ctrlrevocyms) { + this.ctrlrevocyms = ctrlrevocyms; + } + + public String getEaictrldsticctnt() { + return this.eaictrldsticctnt; + } + + public void setEaictrldsticctnt(String eaictrldsticctnt) { + this.eaictrldsticctnt = eaictrldsticctnt; + } + + public String getEaictrlnamedstcd() { + return this.eaictrlnamedstcd; + } + + public void setEaictrlnamedstcd(String eaictrlnamedstcd) { + this.eaictrlnamedstcd = eaictrlnamedstcd; + } + + public String getRevocprcssname() { + return this.revocprcssname; + } + + public void setRevocprcssname(String revocprcssname) { + this.revocprcssname = revocprcssname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaitl01PK.java b/src/model/Tseaitl01PK.java new file mode 100644 index 0000000..ce6cca7 --- /dev/null +++ b/src/model/Tseaitl01PK.java @@ -0,0 +1,57 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaitl01 database table. + * + */ +@Embeddable +public class Tseaitl01PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=30) + private String eaictrlname; + + @Column(unique=true, nullable=false, length=17) + private String ctrlprcssyms; + + public Tseaitl01PK() { + } + public String getEaictrlname() { + return this.eaictrlname; + } + public void setEaictrlname(String eaictrlname) { + this.eaictrlname = eaictrlname; + } + public String getCtrlprcssyms() { + return this.ctrlprcssyms; + } + public void setCtrlprcssyms(String ctrlprcssyms) { + this.ctrlprcssyms = ctrlprcssyms; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaitl01PK)) { + return false; + } + Tseaitl01PK castOther = (Tseaitl01PK)other; + return + this.eaictrlname.equals(castOther.eaictrlname) + && this.ctrlprcssyms.equals(castOther.ctrlprcssyms); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaictrlname.hashCode(); + hash = hash * prime + this.ctrlprcssyms.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/model/Tseaitl02.java b/src/model/Tseaitl02.java new file mode 100644 index 0000000..552a981 --- /dev/null +++ b/src/model/Tseaitl02.java @@ -0,0 +1,75 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + + +/** + * The persistent class for the tseaitl02 database table. + * + */ +@Entity +@Table(name="tseaitl02") +@NamedQuery(name="Tseaitl02.findAll", query="SELECT t FROM Tseaitl02 t") +public class Tseaitl02 implements Serializable { + private static final long serialVersionUID = 1L; + + @EmbeddedId + private Tseaitl02PK id; + + @Column(length=1) + private String eaictrlnamedstcd; + + @Column(length=12) + private String eaiosidinsticd; + + @Column(length=20) + private String eaisevrinstncname; + + @Column(length=30) + private String eaisvcname; + + public Tseaitl02() { + } + + public Tseaitl02PK getId() { + return this.id; + } + + public void setId(Tseaitl02PK id) { + this.id = id; + } + + public String getEaictrlnamedstcd() { + return this.eaictrlnamedstcd; + } + + public void setEaictrlnamedstcd(String eaictrlnamedstcd) { + this.eaictrlnamedstcd = eaictrlnamedstcd; + } + + public String getEaiosidinsticd() { + return this.eaiosidinsticd; + } + + public void setEaiosidinsticd(String eaiosidinsticd) { + this.eaiosidinsticd = eaiosidinsticd; + } + + public String getEaisevrinstncname() { + return this.eaisevrinstncname; + } + + public void setEaisevrinstncname(String eaisevrinstncname) { + this.eaisevrinstncname = eaisevrinstncname; + } + + public String getEaisvcname() { + return this.eaisvcname; + } + + public void setEaisvcname(String eaisvcname) { + this.eaisvcname = eaisvcname; + } + +} \ No newline at end of file diff --git a/src/model/Tseaitl02PK.java b/src/model/Tseaitl02PK.java new file mode 100644 index 0000000..4958237 --- /dev/null +++ b/src/model/Tseaitl02PK.java @@ -0,0 +1,68 @@ +package model; + +import java.io.Serializable; +import javax.persistence.*; + +/** + * The primary key class for the tseaitl02 database table. + * + */ +@Embeddable +public class Tseaitl02PK implements Serializable { + //default serial version id, required for serializable classes. + private static final long serialVersionUID = 1L; + + @Column(unique=true, nullable=false, length=4) + private String eaibzwkdstcd; + + @Column(unique=true, nullable=false, length=17) + private String msgdpstyms; + + @Column(unique=true, nullable=false, length=41) + private String eaisvcserno; + + public Tseaitl02PK() { + } + public String getEaibzwkdstcd() { + return this.eaibzwkdstcd; + } + public void setEaibzwkdstcd(String eaibzwkdstcd) { + this.eaibzwkdstcd = eaibzwkdstcd; + } + public String getMsgdpstyms() { + return this.msgdpstyms; + } + public void setMsgdpstyms(String msgdpstyms) { + this.msgdpstyms = msgdpstyms; + } + public String getEaisvcserno() { + return this.eaisvcserno; + } + public void setEaisvcserno(String eaisvcserno) { + this.eaisvcserno = eaisvcserno; + } + + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof Tseaitl02PK)) { + return false; + } + Tseaitl02PK castOther = (Tseaitl02PK)other; + return + this.eaibzwkdstcd.equals(castOther.eaibzwkdstcd) + && this.msgdpstyms.equals(castOther.msgdpstyms) + && this.eaisvcserno.equals(castOther.eaisvcserno); + } + + public int hashCode() { + final int prime = 31; + int hash = 17; + hash = hash * prime + this.eaibzwkdstcd.hashCode(); + hash = hash * prime + this.msgdpstyms.hashCode(); + hash = hash * prime + this.eaisvcserno.hashCode(); + + return hash; + } +} \ No newline at end of file diff --git a/src/test/java/com/eactive/eai/common/errorcode/ErrorCodeManagerTest.java b/src/test/java/com/eactive/eai/common/errorcode/ErrorCodeManagerTest.java new file mode 100644 index 0000000..767935d --- /dev/null +++ b/src/test/java/com/eactive/eai/common/errorcode/ErrorCodeManagerTest.java @@ -0,0 +1,41 @@ +package com.eactive.eai.common.errorcode; + +import static org.junit.jupiter.api.Assertions.assertTrue; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.jdbc.Sql; + +import com.eactive.eai.common.lifecycle.LifecycleException; +import com.eactive.eai.data.CoreJPATestConfiguration; +import com.eactive.eai.data.jpa.BaseRepositoryImpl; + +@DataJpaTest +@ContextConfiguration(classes = { CoreJPATestConfiguration.class }) +@ComponentScan({ "com.eactive.eai.common.errorcode" }) +@EnableJpaRepositories(repositoryBaseClass = BaseRepositoryImpl.class, basePackages = { + "com.eactive.eai.common.errorcode" }) +@EntityScan({ "com.eactive.eai.data.entity.onl.errorcode" }) +@Sql({ "/com/eactive/eai/common/errorcode/init_tseaims01.sql" }) +class ErrorCodeManagerTest { + + @Autowired + ErrorCodeManager errorCodeManager; + + @Test + void testStart() throws LifecycleException { + // given + + // when + errorCodeManager.start(); + + // then + assertTrue(errorCodeManager.getAllCodeMessages().size() > 0); + } + +} diff --git a/src/test/java/com/eactive/eai/common/server/loader/EAIServerEntityServiceTest.java b/src/test/java/com/eactive/eai/common/server/loader/EAIServerEntityServiceTest.java new file mode 100644 index 0000000..681efe3 --- /dev/null +++ b/src/test/java/com/eactive/eai/common/server/loader/EAIServerEntityServiceTest.java @@ -0,0 +1,42 @@ +package com.eactive.eai.common.server.loader; + +import static org.assertj.core.api.Assertions.assertThat; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; +import org.springframework.test.context.ContextConfiguration; + +import com.eactive.eai.data.CoreJPATestConfiguration; +import com.eactive.eai.data.entity.onl.server.EAIServer; +import com.eactive.eai.data.jpa.BaseRepositoryImpl; + +@DataJpaTest +@ContextConfiguration(classes = CoreJPATestConfiguration.class) +@ComponentScan("com.eactive.eai.common.server") +@EntityScan("com.eactive.eai.data.entity.onl.server") +@EnableJpaRepositories(repositoryBaseClass = BaseRepositoryImpl.class, basePackages = { + "com.eactive.eai.common.server" }) +class EAIServerEntityServiceTest { + + @Autowired + EAIServerLoader eaiServerEntityService; + + @Test + void testCheckConnection() { + // given + EAIServer eaiServer = new EAIServer(); + eaiServer.setEaisevrinstncname("test"); + eaiServer.setEaisevrip("test"); + eaiServerEntityService.save(eaiServer); + + // when + Boolean connected = eaiServerEntityService.checkConnection(); + // then + assertThat(connected).isTrue(); + } + +} diff --git a/src/test/java/com/eactive/eai/data/CoreJPATestConfiguration.java b/src/test/java/com/eactive/eai/data/CoreJPATestConfiguration.java new file mode 100644 index 0000000..4673044 --- /dev/null +++ b/src/test/java/com/eactive/eai/data/CoreJPATestConfiguration.java @@ -0,0 +1,23 @@ +package com.eactive.eai.data; + +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; + +import com.eactive.eai.common.util.ApplicationContextProvider; +import com.eactive.eai.data.jpa.BaseRepositoryImpl; + +@Configuration +@ComponentScan({ "com.eactive.eai.data.property" }) +@EnableJpaRepositories(repositoryBaseClass = BaseRepositoryImpl.class, basePackages = { + "com.eactive.eai.data.property" }) +@EntityScan({ "com.eactive.eai.data.entity.onl.property" }) +public class CoreJPATestConfiguration { + + @Bean + ApplicationContextProvider applicationContextProvider() { + return new ApplicationContextProvider(); + } +} diff --git a/src/test/resources/application.yml b/src/test/resources/application.yml new file mode 100644 index 0000000..ac9161b --- /dev/null +++ b/src/test/resources/application.yml @@ -0,0 +1,20 @@ +spring: + jpa: + properties: + hibernate: + format_sql: true + hibernate: + ddl-auto: update + naming: + physical-strategy: com.eactive.eai.data.jpa.CustomPhysicalNamingStrategy + main: + allow-bean-definition-overriding: true +logging: + level: + org: + hibernate: + type: + descriptor: + sql: trace + + diff --git a/src/test/resources/com/eactive/eai/common/errorcode/init_tseaims01.sql b/src/test/resources/com/eactive/eai/common/errorcode/init_tseaims01.sql new file mode 100644 index 0000000..ab02291 --- /dev/null +++ b/src/test/resources/com/eactive/eai/common/errorcode/init_tseaims01.sql @@ -0,0 +1,11 @@ +INSERT INTO tseaims01 (msg, msgctnt, treatmatrctnt) VALUES + ('ESBEAI000000', 'EAI처리성공', 'EAI처리성공'), + ('ESBEAI111111', 'EAI메시지 생성', 'EAI메시지생성'), + ('RDCEAIAAC018', '어댑터그룹등록 - {1}', '어댑터그룹등록'), + ('RDCEAIAHA004', '어댑터그룹[{1}], 어댑터[{2}]', '어댑터그룹'), + ('RDCEAIAHA013', 'HTTP POST 응답상태[{1}]', 'HTTPPOST응답'), + ('RDCEAIAHA014', 'HTTP GET 응답상태[{1}]', 'HTTPGET응답'), + ('RDCEAICLC205', '로드순번 음수에러 - {1}', '로드순번음수에러'), + ('RDCEAICLC208', '라이프사이클[{1}] 정지', '라이프사이클정지'), + ('RDCEAICNA001', '{1} {2} {3} {4} {5}', '소켓연결'), + ('RDCEAIINA001', '{1} {2} {3} {4} {5}', '소켓수신'); \ No newline at end of file diff --git a/src/test/resources/hibernate.cfg.xml b/src/test/resources/hibernate.cfg.xml new file mode 100644 index 0000000..9b4450b --- /dev/null +++ b/src/test/resources/hibernate.cfg.xml @@ -0,0 +1,22 @@ + + + + + + + org.postgresql.Driver + jdbc:postgresql://192.168.8.21:5433/eai + eai + eaiadmin + + + true + true + org.hibernate.dialect.PostgreSQLDialect + + + + + +