From 630b0add6cefd540195fa4245b401f5088d4134c Mon Sep 17 00:00:00 2001 From: Ardika Rommy Sanjaya Date: Fri, 31 Aug 2018 11:49:44 +0700 Subject: [PATCH 1/5] Add spring-boot-example and executor (pcapLoop & pcapDispatch) --- .../java/com/ardikars/jxnet/Application.java | 7 +- .../ardikars/jxnet/ApplicationContext.java | 81 ++- .../main/java/com/ardikars/jxnet/Context.java | 48 +- .../autoconfigure/JxnetAutoConfiguration.java | 15 +- .../build.gradle | 32 + .../boot/starter/example/Application$1.class | Bin 0 -> 2080 bytes .../boot/starter/example/Application.class | Bin 0 -> 2358 bytes .../build/docs/javadoc/allclasses-frame.html | 20 + .../docs/javadoc/allclasses-noframe.html | 20 + .../boot/starter/example/Application.html | 354 +++++++++++ .../boot/starter/example/package-frame.html | 21 + .../boot/starter/example/package-summary.html | 142 +++++ .../boot/starter/example/package-tree.html | 133 ++++ .../build/docs/javadoc/constant-values.html | 160 +++++ .../build/docs/javadoc/deprecated-list.html | 124 ++++ .../build/docs/javadoc/help-doc.html | 221 +++++++ .../build/docs/javadoc/index-all.html | 165 +++++ .../build/docs/javadoc/index.html | 73 +++ .../build/docs/javadoc/overview-tree.html | 137 +++++ .../build/docs/javadoc/package-list | 1 + .../build/docs/javadoc/script.js | 30 + .../build/docs/javadoc/stylesheet.css | 574 ++++++++++++++++++ .../build/reports/checkstyle/main.html | 99 +++ .../build/reports/checkstyle/main.xml | 5 + .../build/reports/findbugs/main.html | 146 +++++ .../build/reports/pmd/main.html | 10 + .../build/reports/pmd/main.xml | 7 + .../build/tmp/bootJar/MANIFEST.MF | 5 + .../build/tmp/javadoc/javadoc.options | 15 + .../build/tmp/javadocJar/MANIFEST.MF | 2 + .../build/tmp/sourcesJar/MANIFEST.MF | 2 + .../boot/starter/example/Application.java | 69 +++ settings.gradle | 1 + 33 files changed, 2689 insertions(+), 30 deletions(-) create mode 100644 jxnet-spring-boot-starter-example/build.gradle create mode 100644 jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application$1.class create mode 100644 jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application.class create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-frame.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/index.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/package-list create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/script.js create mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css create mode 100644 jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html create mode 100644 jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml create mode 100644 jxnet-spring-boot-starter-example/build/reports/findbugs/main.html create mode 100644 jxnet-spring-boot-starter-example/build/reports/pmd/main.html create mode 100644 jxnet-spring-boot-starter-example/build/reports/pmd/main.xml create mode 100644 jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF create mode 100644 jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options create mode 100644 jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF create mode 100644 jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF create mode 100644 jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java diff --git a/jxnet-context/src/main/java/com/ardikars/jxnet/Application.java b/jxnet-context/src/main/java/com/ardikars/jxnet/Application.java index d5e73786..093aeb62 100644 --- a/jxnet-context/src/main/java/com/ardikars/jxnet/Application.java +++ b/jxnet-context/src/main/java/com/ardikars/jxnet/Application.java @@ -36,12 +36,15 @@ private Application() { /** * Bootstraping application. + * @param aplicationName application name. + * @param applicationDisplayName application display name. + * @param applicationVersion application version. * @param builder pcap builder. */ - public static void run(Builder builder) { + public static void run(String aplicationName, String applicationDisplayName, String applicationVersion, Builder builder) { Validate.notIllegalArgument(builder != null, new IllegalArgumentException("Pcap builder should be not null.")); - instance.context = new ApplicationContext(builder); + instance.context = new ApplicationContext(aplicationName, applicationDisplayName, applicationVersion, builder); } /** diff --git a/jxnet-context/src/main/java/com/ardikars/jxnet/ApplicationContext.java b/jxnet-context/src/main/java/com/ardikars/jxnet/ApplicationContext.java index b22efbeb..42214403 100644 --- a/jxnet-context/src/main/java/com/ardikars/jxnet/ApplicationContext.java +++ b/jxnet-context/src/main/java/com/ardikars/jxnet/ApplicationContext.java @@ -25,13 +25,10 @@ import com.ardikars.jxnet.exception.PcapDumperCloseException; import com.ardikars.jxnet.exception.PlatformNotSupportedException; -import java.io.IOException; -import java.io.InputStream; import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; -import java.util.Properties; -import java.util.logging.Logger; +import java.util.concurrent.Executor; /** * @author Ardika Rommy Sanjaya @@ -39,11 +36,11 @@ */ public final class ApplicationContext implements Context { - private static final Logger LOGGER = Logger.getLogger(ApplicationContext.class.getSimpleName()); + private final String applicationName; - private String applicationName; + private final String applicationDisplayName; - private String applicationVersion; + private final String applicationVersion; private final Pcap pcap; @@ -51,7 +48,7 @@ public final class ApplicationContext implements Context { private PcapDumper pcapDumper; - protected ApplicationContext(Builder builder) { + protected ApplicationContext(String applicationName, String applicationDisplayName, String applicationVersion, Builder builder) { Runtime.getRuntime().addShutdownHook(new Thread() { @Override public void run() { @@ -65,21 +62,11 @@ public void run() { if (pcapDumper != null && !pcapDumper.isClosed()) { Jxnet.PcapDumpClose(pcapDumper); } - LOGGER.info("Application closed gracefully."); } }); - final Properties properties = new Properties(); - try (InputStream stream = ClassLoader.class.getResourceAsStream("application.properties")) { - if (stream != null) { - properties.load(stream); - } - this.applicationName = properties.getProperty("jxnet.application.name", ""); - this.applicationVersion = properties.getProperty("jxnet.application.version", ""); - } catch (IOException e) { - this.applicationName = ""; - this.applicationVersion = ""; - LOGGER.warning(e.getMessage()); - } + this.applicationName = applicationName; + this.applicationDisplayName = applicationDisplayName; + this.applicationVersion = applicationVersion; Validate.notIllegalArgument(builder != null, new IllegalArgumentException("Pcap builder should be not null.")); this.pcap = builder.build(); } @@ -89,14 +76,19 @@ public String getApplicationName() { return applicationName; } - @Override + @Override + public String getApplicationDisplayName() { + return applicationDisplayName; + } + + @Override public String getApplicationVersion() { return applicationVersion; } @Override public Context newInstance(Builder builder) { - return new ApplicationContext(builder); + return new ApplicationContext(this.applicationName, this.applicationDisplayName, this.applicationVersion, builder); } @Override @@ -108,6 +100,27 @@ public PcapCode pcapLoop(int cnt, PcapHandler callback, T user) throws Pc return PcapCode.PCAP_ERROR; } + @Override + public PcapCode pcapLoop(final int cnt, final PcapHandler callback, final T user, final Executor executor) throws PcapCloseException { + Validate.notIllegalArgument(executor != null, + new IllegalArgumentException("Executor should be not null.")); + int result = Jxnet.PcapLoop(pcap, cnt, new PcapHandler() { + @Override + public void nextPacket(final T user, final PcapPktHdr h, final ByteBuffer bytes) { + executor.execute(new Runnable() { + @Override + public void run() { + callback.nextPacket(user, h, bytes); + } + }); + } + }, user); + if (result == 0) { + return PcapCode.PCAP_OK; + } + return PcapCode.PCAP_ERROR; + } + @Override public PcapCode pcapDispatch(int cnt, PcapHandler callback, T user) throws PcapCloseException { int result = Jxnet.PcapDispatch(pcap, cnt, callback, user); @@ -117,6 +130,28 @@ public PcapCode pcapDispatch(int cnt, PcapHandler callback, T user) throw return PcapCode.PCAP_ERROR; } + @Override + public PcapCode pcapDispatch(final int cnt, final PcapHandler callback, final T user, final Executor executor) + throws PcapCloseException { + Validate.notIllegalArgument(executor != null, + new IllegalArgumentException("Executor should be not null.")); + int result = Jxnet.PcapDispatch(pcap, cnt, new PcapHandler() { + @Override + public void nextPacket(final T user, final PcapPktHdr h, final ByteBuffer bytes) { + executor.execute(new Runnable() { + @Override + public void run() { + callback.nextPacket(user, h, bytes); + } + }); + } + }, user); + if (result == 0) { + return PcapCode.PCAP_OK; + } + return PcapCode.PCAP_ERROR; + } + @Override public PcapCode pcapDumpOpen(String fname) throws PcapCloseException { pcapDumper = Jxnet.PcapDumpOpen(pcap, fname); diff --git a/jxnet-context/src/main/java/com/ardikars/jxnet/Context.java b/jxnet-context/src/main/java/com/ardikars/jxnet/Context.java index 06292fa0..b0e800ab 100644 --- a/jxnet-context/src/main/java/com/ardikars/jxnet/Context.java +++ b/jxnet-context/src/main/java/com/ardikars/jxnet/Context.java @@ -27,11 +27,14 @@ import java.nio.ByteBuffer; import java.util.List; +import java.util.concurrent.Executor; public interface Context extends Factory> { String getApplicationName(); + String getApplicationDisplayName(); + String getApplicationVersion(); /** @@ -46,15 +49,32 @@ public interface Context extends Factory> { * @param user args * @param args type. * @return PcapLoop() returns 0 if cnt is exhausted or if, when reading from a - * @throws PcapCloseException pcap close exception. * savefile, no more packets are available. It returns -1 if an error * occurs or -2 if the loop terminated due to a call to PcapBreakLoop() * before any packets were processed. It does not return when live packet * buffer timeouts occur; instead, it attempts to read more packets. + * @throws PcapCloseException pcap close exception. * @since 1.1.4 */ PcapCode pcapLoop(int cnt, PcapHandler callback, T user) throws PcapCloseException; + /** + * Collect a group of packets. + * @param cnt maximum iteration, -1 is infinite iteration. + * @param callback callback funtion. + * @param user args + * @param executor executor service. + * @param args type. + * @return PcapLoop() returns 0 if cnt is exhausted or if, when reading from a + * savefile, no more packets are available. It returns -1 if an error + * occurs or -2 if the loop terminated due to a call to PcapBreakLoop() + * before any packets were processed. It does not return when live packet + * buffer timeouts occur; instead, it attempts to read more packets. + * @throws PcapCloseException pcap close exception. + * @since 1.1.4 + */ + PcapCode pcapLoop(int cnt, PcapHandler callback, T user, Executor executor) throws PcapCloseException; + /** * Collect a group of packets. * @param cnt maximum iteration, -1 to infinite. @@ -62,7 +82,6 @@ public interface Context extends Factory> { * @param user arg. * @param args type. * @return PcapDispatch() returns the number of packets processed on success; - * @throws PcapCloseException pcap close exception. * this can be 0 if no packets were read from a live capture (if, for * example, they were discarded because they didn't pass the packet filter, * or if, on platforms that support a packet buffer timeout that @@ -74,10 +93,35 @@ public interface Context extends Factory> { * before any packets were processed. If your application uses * PcapBreakLoop(), make sure that you explicitly check for -1 and -2, * rather than just checking for a return value less then 0. + * @throws PcapCloseException pcap close exception. * @since 1.1.4 */ PcapCode pcapDispatch(int cnt, PcapHandler callback, T user) throws PcapCloseException; + /** + * Collect a group of packets. + * @param cnt maximum iteration, -1 to infinite. + * @param callback callback function. + * @param user arg. + * @param executor executor. + * @param args type. + * @return PcapDispatch() returns the number of packets processed on success; + * this can be 0 if no packets were read from a live capture (if, for + * example, they were discarded because they didn't pass the packet filter, + * or if, on platforms that support a packet buffer timeout that + * starts before any packets arrive, the timeout expires before any packets + * arrive, or if the file descriptor for the capture device is in non-blocking + * mode and no packets were available to be read) or if no more + * packets are available in a savefile. It returns -1 if an error + * occurs or -2 if the loop terminated due to a call to PcapBreakLoop() + * before any packets were processed. If your application uses + * PcapBreakLoop(), make sure that you explicitly check for -1 and -2, + * rather than just checking for a return value less then 0. + * @throws PcapCloseException pcap close exception. + * @since 1.1.4 + */ + PcapCode pcapDispatch(int cnt, PcapHandler callback, T user, Executor executor) throws PcapCloseException; + /** * Open a file to write packets. * @param fname fname specifies the name of the file to open. The file will have the same format diff --git a/jxnet-spring-boot-autoconfigure/src/main/java/com/ardikars/jxnet/spring/boot/autoconfigure/JxnetAutoConfiguration.java b/jxnet-spring-boot-autoconfigure/src/main/java/com/ardikars/jxnet/spring/boot/autoconfigure/JxnetAutoConfiguration.java index 847798cc..efc27ce6 100644 --- a/jxnet-spring-boot-autoconfigure/src/main/java/com/ardikars/jxnet/spring/boot/autoconfigure/JxnetAutoConfiguration.java +++ b/jxnet-spring-boot-autoconfigure/src/main/java/com/ardikars/jxnet/spring/boot/autoconfigure/JxnetAutoConfiguration.java @@ -38,6 +38,7 @@ import org.springframework.boot.autoconfigure.AutoConfigureOrder; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.Ordered; @@ -50,10 +51,12 @@ public class JxnetAutoConfiguration { private static final Logger LOGGER = LoggerFactory.getLogger(JxnetAutoConfiguration.class.getName()); + private final ApplicationContext context; private final JxnetConfigurationProperties properties; @Autowired - public JxnetAutoConfiguration(JxnetConfigurationProperties properties) { + public JxnetAutoConfiguration(ApplicationContext context, JxnetConfigurationProperties properties) { + this.context = context; this.properties = properties; } @@ -88,13 +91,19 @@ public Context context(PcapIf pcapIf, builder.pcapType(Pcap.PcapType.DEAD); break; case OFFLINE: + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("Opening pcap offline hadler : {}", builder); + } builder.pcapType(Pcap.PcapType.OFFLINE); break; default: + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("Opening pcap live hadler : {}", builder); + } builder.pcapType(Pcap.PcapType.LIVE); break; } - Application.run(builder); + Application.run(context.getApplicationName(), context.getDisplayName(), "", builder); return Application.getApplicationContext(); } @@ -129,7 +138,7 @@ public PcapIf pcapIf(@Qualifier("com.ardikars.jxnet.errbuf") StringBuilder errbu } } } - throw new DeviceNotFoundException(""); + throw new DeviceNotFoundException("No device connected to the network."); } @Bean("com.ardikars.jxnet.errbuf") diff --git a/jxnet-spring-boot-starter-example/build.gradle b/jxnet-spring-boot-starter-example/build.gradle new file mode 100644 index 00000000..b8d910ff --- /dev/null +++ b/jxnet-spring-boot-starter-example/build.gradle @@ -0,0 +1,32 @@ + +/** + * Copyright (C) 2017-2018 Ardika Rommy Sanjaya + */ + + +buildscript { + ext { + springBootVersion = '2.0.4.RELEASE' + } + repositories { + mavenCentral() + } + dependencies { + classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") + } +} + +apply plugin: 'java' +apply plugin: 'org.springframework.boot' +apply plugin: 'io.spring.dependency-management' + +description = "Jxnet spring boot starter example" + +dependencies { + compile project(":jxnet-spring-boot-starter") + compile("org.springframework.boot:spring-boot-starter") +} + +dependencyManagement { + imports { mavenBom("org.springframework.boot:spring-boot-dependencies:${springBootVersion}") } +} diff --git a/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application$1.class b/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application$1.class new file mode 100644 index 0000000000000000000000000000000000000000..80a678b68ff5f396fb4d2f3288ecfd963575584a GIT binary patch literal 2080 zcmbtVX>;3D6g{%#%28C}rZgcf4FN)Nwkm1U%?>Vg+7N@=8q$RlmU)(693@&j@-vfs z<1g`nv@Fx%Gyj4=!f+&esFS!;rq#?_b?lsg92418u_UBd~r?Y5^E zHLO&f(6>d@aCb%2ws-adsqA(ua)YK_4@1tCh?IY~H4zD4k~T5TK<=rUaCW8AP{~(!#E-)E1pTw2VmB2Bomq24 ztG27w8&R>V5V)aT-dD2R+1ip(F(KS(%P6LI43U0qCCVD!dj&d0>j|WWGXqc3kg4-r z5=m{AH5l7+?{>#;9iei+z9Sv=+Ej)%+-4wDCt|qP`uMy8c3lJwPev_m=SbK@k)_2u2g*kR0+JAvbcZHAy5Gy@e2pW_P)XE0`A9908%E!@L>3pIRc;42Fo zcwpfnm~P`oymw}opOj&r0uPr>mHwHE>e2ecW)Xj*gZ7HbK z6Z&4msos7!DBL$Gd-Ny^Q+S`X_xhzby>tk+>t_v<0}$g>>^WLPVSvE@tac6Qs1s-y z%Woc!SDer3eB7T-$R1924Oto?99QipVioqyxSY=AH_MgE%u5pY{2^nx@Wa6FDA%*s zYV^xrf$Yq0A-WII_(fZ;^N2+xeMl7&Yy-x3#=uSHotL70E&p zt(FWL8Wsi=`Ek@{&+%vhD;&z3@3hv@#HD8 zqeBNU=hzM~{41;!`hK0{_WS|f8t`j`za}z$YA-CGV!Z literal 0 HcmV?d00001 diff --git a/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application.class b/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application.class new file mode 100644 index 0000000000000000000000000000000000000000..7141bc8b44b5a5f8cc97b4bc4e88eaf126c5a980 GIT binary patch literal 2358 zcmbtWYgZdp6x|mB6Nagch}70TXp3#Y%1~Ri7D`P+XhRc%NeX?acr&?#p~*~~ObUMR zga1gYOIuybAK;I2x$h*DEKF;cvKDjaKF&G&?0e3h{Q1{!e*n0G+6YWsGckrwO!%&2pxg&#tD**}^K%T}%iJ=L)xPXNm%2IX|e`t@_s09XsdOYATo)FdW|t)m|uY zGUxaWTLxA4u?$-F&Yq`2n}PK%4<0YJz0hr_b+_eK>MG@Vekenizyz*!JU0W^t8E3c zp?3Y?v0YKpYuQ`U3H{((TfQ)`Q|-{-bputU+u;S*bHhb}!Q}M1KrHQ7mB7)Q>#5at zqoRVcWV8spBkSujaP_>q7z?*uhF|E1ycMCbE50AvdZXx5dTYBuYx6QL)B z!JzF4Oe7!WcH|Rj*QHmpOQFtXK7u5J8iTymXPbDNzF!x(&@pX?ZrvuKPCE#c7uuOU z^Z6#(Pm&xAdy$$wqIS7nl(aXpjbn?#A8awQLWb0+}xbNcyhYm z<;54AdY3-479QaX z3t!?Z1Dh6-_}YN9P=RBhYC&O(OdVW#p|YbK_Q6clC5LNS6P5NG4e3>NZL%5Iv8;*% z`xiGWa5`FjSvBZl^3-lxI@_vR-VT(ku0>Up(>#{!4hudzq3&fj_ zZ03BwDez4)+b`4_58NRcb*e~D-*iaquDpzZ`RSK=)ZNc6nR*=-h_bca4y*nyyX910 zi!$}<9_57!o6n|;g;FM6SY0X!oaxW={&_-3$X)4%Wfe4BFA@rY^U0NeF`It)s`BY{ zR!>(6RFXa1MfyMAM`pUcf2btcvRaz8L`SWwb+N~J_b!>r(TJN!)}jy;{hA6_DL5Tr zIoR&1p1`rgUy9|9iVKX;wDa+x>h+@ESImFv6q{UsFddbg_>nIInBr3(2H)P})9M_+1zhCp zdrH7G1|#F|=uCe{?PnOw&-{#7!u%aW59n%m%((O%@gZz*7!kNMj?t$$@*Ho(uyGJ( zf)0So%;-ZRzCm1zn8nQ~>}1DvH>^fFgZBv~#^)t`K%ldK%rhMA32br){4HT1-IHTH3V|MXi8zs6p%d-yWaNx7pF;e=Ia`d+eX8QP t`hwM|?n!IR`~`_;c=IO+oprCp4D + + + + + +All Classes (Jxnet 1.4.0.RC2) + + + + + +

All Classes

+
+ +
+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html new file mode 100644 index 00000000..fc51f986 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html @@ -0,0 +1,20 @@ + + + + + + +All Classes (Jxnet 1.4.0.RC2) + + + + + +

All Classes

+
+ +
+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html new file mode 100644 index 00000000..a9e7ee6a --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html @@ -0,0 +1,354 @@ + + + + + + +Application (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + + +
+
com.ardikars.jxnet.spring.boot.starter.example
+

Class Application

+
+
+
    +
  • java.lang.Object
  • +
  • +
      +
    • com.ardikars.jxnet.spring.boot.starter.example.Application
    • +
    +
  • +
+
+
    +
  • +
    +
    All Implemented Interfaces:
    +
    org.springframework.boot.CommandLineRunner
    +
    +
    +
    +
    @SpringBootApplication
    +public class Application
    +extends java.lang.Object
    +implements org.springframework.boot.CommandLineRunner
    +
  • +
+
+
+
    +
  • + + + +
      +
    • + + +

      Constructor Summary

      + + + + + + + + +
      Constructors 
      Constructor and Description
      Application() 
      +
    • +
    + +
      +
    • + + +

      Method Summary

      + + + + + + + + + + + + + + +
      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and TypeMethod and Description
      static voidmain(java.lang.String[] args) 
      voidrun(java.lang.String... args) 
      +
        +
      • + + +

        Methods inherited from class java.lang.Object

        +clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • +
      +
    • +
    +
  • +
+
+
+
    +
  • + +
      +
    • + + +

      Field Detail

      + + + + + + + +
        +
      • +

        WAIT_TIME_FOR_THREAD_TERMINATION

        +
        public static final int WAIT_TIME_FOR_THREAD_TERMINATION
        +
        +
        See Also:
        +
        Constant Field Values
        +
        +
      • +
      +
    • +
    + +
      +
    • + + +

      Constructor Detail

      + + + +
        +
      • +

        Application

        +
        public Application()
        +
      • +
      +
    • +
    + +
      +
    • + + +

      Method Detail

      + + + +
        +
      • +

        run

        +
        public void run(java.lang.String... args)
        +         throws java.lang.Exception
        +
        +
        Specified by:
        +
        run in interface org.springframework.boot.CommandLineRunner
        +
        Throws:
        +
        java.lang.Exception
        +
        +
      • +
      + + + +
        +
      • +

        main

        +
        public static void main(java.lang.String[] args)
        +
      • +
      +
    • +
    +
  • +
+
+
+ + +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html new file mode 100644 index 00000000..6c34ea72 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html @@ -0,0 +1,21 @@ + + + + + + +com.ardikars.jxnet.spring.boot.starter.example (Jxnet 1.4.0.RC2) + + + + + +

com.ardikars.jxnet.spring.boot.starter.example

+
+

Classes

+ +
+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html new file mode 100644 index 00000000..9d501053 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html @@ -0,0 +1,142 @@ + + + + + + +com.ardikars.jxnet.spring.boot.starter.example (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
+

Package com.ardikars.jxnet.spring.boot.starter.example

+
+
+
    +
  • + + + + + + + + + + + + +
    Class Summary 
    ClassDescription
    Application 
    +
  • +
+
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html new file mode 100644 index 00000000..a2937272 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html @@ -0,0 +1,133 @@ + + + + + + +com.ardikars.jxnet.spring.boot.starter.example Class Hierarchy (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
+

Hierarchy For Package com.ardikars.jxnet.spring.boot.starter.example

+
+
+

Class Hierarchy

+
    +
  • java.lang.Object +
      +
    • com.ardikars.jxnet.spring.boot.starter.example.Application (implements org.springframework.boot.CommandLineRunner)
    • +
    +
  • +
+
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html new file mode 100644 index 00000000..0098c1fe --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html @@ -0,0 +1,160 @@ + + + + + + +Constant Field Values (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
+

Constant Field Values

+

Contents

+ +
+
+ + +

com.ardikars.*

+ +
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html new file mode 100644 index 00000000..d742e2b9 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html @@ -0,0 +1,124 @@ + + + + + + +Deprecated List (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
+

Deprecated API

+

Contents

+
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html new file mode 100644 index 00000000..ce0654f2 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html @@ -0,0 +1,221 @@ + + + + + + +API Help (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
+

How This API Document Is Organized

+
This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.
+
+
+
    +
  • +

    Package

    +

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain six categories:

    +
      +
    • Interfaces (italic)
    • +
    • Classes
    • +
    • Enums
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Types
    • +
    +
  • +
  • +

    Class/Interface

    +

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

    +
      +
    • Class inheritance diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class/interface declaration
    • +
    • Class/interface description
    • +
    +
      +
    • Nested Class Summary
    • +
    • Field Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    +
      +
    • Field Detail
    • +
    • Constructor Detail
    • +
    • Method Detail
    • +
    +

    Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    +
  • +
  • +

    Annotation Type

    +

    Each annotation type has its own separate page with the following sections:

    +
      +
    • Annotation Type declaration
    • +
    • Annotation Type description
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    • Element Detail
    • +
    +
  • +
  • +

    Enum

    +

    Each enum has its own separate page with the following sections:

    +
      +
    • Enum declaration
    • +
    • Enum description
    • +
    • Enum Constant Summary
    • +
    • Enum Constant Detail
    • +
    +
  • +
  • +

    Tree (Class Hierarchy)

    +

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.

    +
      +
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • +
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    • +
    +
  • +
  • +

    Deprecated API

    +

    The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.

    +
  • +
  • +

    Index

    +

    The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.

    +
  • +
  • +

    Prev/Next

    +

    These links take you to the next or previous class, interface, package, or related page.

    +
  • +
  • +

    Frames/No Frames

    +

    These links show and hide the HTML frames. All pages are available with or without frames.

    +
  • +
  • +

    All Classes

    +

    The All Classes link shows all classes and interfaces except non-static nested types.

    +
  • +
  • +

    Serialized Form

    +

    Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.

    +
  • +
  • +

    Constant Field Values

    +

    The Constant Field Values page lists the static final fields and their values.

    +
  • +
+This help file applies to API documentation generated using the standard doclet.
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html new file mode 100644 index 00000000..d1d0878f --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html @@ -0,0 +1,165 @@ + + + + + + +Index (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
A C M R W  + + +

A

+
+
Application - Class in com.ardikars.jxnet.spring.boot.starter.example
+
 
+
Application() - Constructor for class com.ardikars.jxnet.spring.boot.starter.example.Application
+
 
+
+ + + +

C

+
+
com.ardikars.jxnet.spring.boot.starter.example - package com.ardikars.jxnet.spring.boot.starter.example
+
 
+
+ + + +

M

+
+
main(String[]) - Static method in class com.ardikars.jxnet.spring.boot.starter.example.Application
+
 
+
MAX_PACKET - Static variable in class com.ardikars.jxnet.spring.boot.starter.example.Application
+
 
+
+ + + +

R

+
+
run(String...) - Method in class com.ardikars.jxnet.spring.boot.starter.example.Application
+
 
+
+ + + +

W

+
+
WAIT_TIME_FOR_THREAD_TERMINATION - Static variable in class com.ardikars.jxnet.spring.boot.starter.example.Application
+
 
+
+A C M R W 
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/index.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/index.html new file mode 100644 index 00000000..a35cffd9 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/index.html @@ -0,0 +1,73 @@ + + + + + + +Jxnet 1.4.0.RC2 + + + + + + +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<h2>Frame Alert</h2> +<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="com/ardikars/jxnet/spring/boot/starter/example/package-summary.html">Non-frame version</a>.</p> + + + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html new file mode 100644 index 00000000..51e649f3 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html @@ -0,0 +1,137 @@ + + + + + + +Class Hierarchy (Jxnet 1.4.0.RC2) + + + + + + + + +
+ + + + + + + +
Jxnet 1.4.0.RC2
+
+ + +
+

Hierarchy For All Packages

+Package Hierarchies: + +
+
+

Class Hierarchy

+
    +
  • java.lang.Object +
      +
    • com.ardikars.jxnet.spring.boot.starter.example.Application (implements org.springframework.boot.CommandLineRunner)
    • +
    +
  • +
+
+ +
+ + + + + + + +
https://github.com/jxnet/Jxnet
+
+ + +

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

+ + diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/package-list b/jxnet-spring-boot-starter-example/build/docs/javadoc/package-list new file mode 100644 index 00000000..c512cda4 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/package-list @@ -0,0 +1 @@ +com.ardikars.jxnet.spring.boot.starter.example diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/script.js b/jxnet-spring-boot-starter-example/build/docs/javadoc/script.js new file mode 100644 index 00000000..b3463569 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/script.js @@ -0,0 +1,30 @@ +function show(type) +{ + count = 0; + for (var key in methods) { + var row = document.getElementById(key); + if ((methods[key] & type) != 0) { + row.style.display = ''; + row.className = (count++ % 2) ? rowColor : altColor; + } + else + row.style.display = 'none'; + } + updateTabs(type); +} + +function updateTabs(type) +{ + for (var value in tabs) { + var sNode = document.getElementById(tabs[value][0]); + var spanNode = sNode.firstChild; + if (value == type) { + sNode.className = activeTableTab; + spanNode.innerHTML = tabs[value][1]; + } + else { + sNode.className = tableTab; + spanNode.innerHTML = "" + tabs[value][1] + ""; + } + } +} diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css b/jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css new file mode 100644 index 00000000..98055b22 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css @@ -0,0 +1,574 @@ +/* Javadoc style sheet */ +/* +Overall document style +*/ + +@import url('resources/fonts/dejavu.css'); + +body { + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a:hover, a:focus { + text-decoration:none; + color:#bb7a2a; +} +a:active { + text-decoration:none; + color:#4A6782; +} +a[name] { + color:#353833; +} +a[name]:hover { + text-decoration:none; + color:#353833; +} +pre { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; +} +h1 { + font-size:20px; +} +h2 { + font-size:18px; +} +h3 { + font-size:16px; + font-style:italic; +} +h4 { + font-size:13px; +} +h5 { + font-size:12px; +} +h6 { + font-size:11px; +} +ul { + list-style-type:disc; +} +code, tt { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; +} +dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; +} +table tr td dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; +} +sup { + font-size:8px; +} +/* +Document title and Copyright styles +*/ +.clear { + clear:both; + height:0px; + overflow:hidden; +} +.aboutLanguage { + float:right; + padding:0px 21px; + font-size:11px; + z-index:200; + margin-top:-9px; +} +.legalCopy { + margin-left:.5em; +} +.bar a, .bar a:link, .bar a:visited, .bar a:active { + color:#FFFFFF; + text-decoration:none; +} +.bar a:hover, .bar a:focus { + color:#bb7a2a; +} +.tab { + background-color:#0066FF; + color:#ffffff; + padding:8px; + width:5em; + font-weight:bold; +} +/* +Navigation bar styles +*/ +.bar { + background-color:#4D7A97; + color:#FFFFFF; + padding:.8em .5em .4em .8em; + height:auto;/*height:1.8em;*/ + font-size:11px; + margin:0; +} +.topNav { + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.bottomNav { + margin-top:10px; + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.subNav { + background-color:#dee3e9; + float:left; + width:100%; + overflow:hidden; + font-size:12px; +} +.subNav div { + clear:left; + float:left; + padding:0 0 5px 6px; + text-transform:uppercase; +} +ul.navList, ul.subNavList { + float:left; + margin:0 25px 0 0; + padding:0; +} +ul.navList li{ + list-style:none; + float:left; + padding: 5px 6px; + text-transform:uppercase; +} +ul.subNavList li{ + list-style:none; + float:left; +} +.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited { + color:#FFFFFF; + text-decoration:none; + text-transform:uppercase; +} +.topNav a:hover, .bottomNav a:hover { + text-decoration:none; + color:#bb7a2a; + text-transform:uppercase; +} +.navBarCell1Rev { + background-color:#F8981D; + color:#253441; + margin: auto 5px; +} +.skipNav { + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; +} +/* +Page header and footer styles +*/ +.header, .footer { + clear:both; + margin:0 20px; + padding:5px 0 0 0; +} +.indexHeader { + margin:10px; + position:relative; +} +.indexHeader span{ + margin-right:15px; +} +.indexHeader h1 { + font-size:13px; +} +.title { + color:#2c4557; + margin:10px 0; +} +.subTitle { + margin:5px 0 0 0; +} +.header ul { + margin:0 0 15px 0; + padding:0; +} +.footer ul { + margin:20px 0 5px 0; +} +.header ul li, .footer ul li { + list-style:none; + font-size:13px; +} +/* +Heading styles +*/ +div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +ul.blockList ul.blockList ul.blockList li.blockList h3 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +ul.blockList ul.blockList li.blockList h3 { + padding:0; + margin:15px 0; +} +ul.blockList li.blockList h2 { + padding:0px 0 20px 0; +} +/* +Page layout container styles +*/ +.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer { + clear:both; + padding:10px 20px; + position:relative; +} +.indexContainer { + margin:10px; + position:relative; + font-size:12px; +} +.indexContainer h2 { + font-size:13px; + padding:0 0 3px 0; +} +.indexContainer ul { + margin:0; + padding:0; +} +.indexContainer ul li { + list-style:none; + padding-top:2px; +} +.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt { + font-size:12px; + font-weight:bold; + margin:10px 0 0 0; + color:#4E4E4E; +} +.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd { + margin:5px 0 10px 0px; + font-size:14px; + font-family:'DejaVu Sans Mono',monospace; +} +.serializedFormContainer dl.nameValue dt { + margin-left:1px; + font-size:1.1em; + display:inline; + font-weight:bold; +} +.serializedFormContainer dl.nameValue dd { + margin:0 0 0 1px; + font-size:1.1em; + display:inline; +} +/* +List styles +*/ +ul.horizontal li { + display:inline; + font-size:0.9em; +} +ul.inheritance { + margin:0; + padding:0; +} +ul.inheritance li { + display:inline; + list-style:none; +} +ul.inheritance li ul.inheritance { + margin-left:15px; + padding-left:15px; + padding-top:1px; +} +ul.blockList, ul.blockListLast { + margin:10px 0 10px 0; + padding:0; +} +ul.blockList li.blockList, ul.blockListLast li.blockList { + list-style:none; + margin-bottom:15px; + line-height:1.4; +} +ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList { + padding:0px 20px 5px 10px; + border:1px solid #ededed; + background-color:#f8f8f8; +} +ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList { + padding:0 0 5px 8px; + background-color:#ffffff; + border:none; +} +ul.blockList ul.blockList ul.blockList ul.blockList li.blockList { + margin-left:0; + padding-left:0; + padding-bottom:15px; + border:none; +} +ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast { + list-style:none; + border-bottom:none; + padding-bottom:0; +} +table tr td dl, table tr td dl dt, table tr td dl dd { + margin-top:0; + margin-bottom:1px; +} +/* +Table styles +*/ +.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { + width:100%; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; +} +.overviewSummary, .memberSummary { + padding:0px; +} +.overviewSummary caption, .memberSummary caption, .typeSummary caption, +.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { + position:relative; + text-align:left; + background-repeat:no-repeat; + color:#253441; + font-weight:bold; + clear:none; + overflow:hidden; + padding:0px; + padding-top:10px; + padding-left:1px; + margin:0px; + white-space:pre; +} +.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, +.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, +.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, +.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, +.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, +.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, +.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, +.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { + color:#FFFFFF; +} +.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, +.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; +} +.memberSummary caption span.activeTableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; + float:left; + background-color:#F8981D; + height:16px; +} +.memberSummary caption span.tableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; + float:left; + background-color:#4D7A97; + height:16px; +} +.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { + padding-top:0px; + padding-left:0px; + padding-right:0px; + background-image:none; + float:none; + display:inline; +} +.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, +.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { + display:none; + width:5px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .activeTableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .tableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + background-color:#4D7A97; + float:left; + +} +.overviewSummary td, .memberSummary td, .typeSummary td, +.useSummary td, .constantsSummary td, .deprecatedSummary td { + text-align:left; + padding:0px 0px 12px 10px; +} +th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, +td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ + vertical-align:top; + padding-right:0px; + padding-top:8px; + padding-bottom:3px; +} +th.colFirst, th.colLast, th.colOne, .constantsSummary th { + background:#dee3e9; + text-align:left; + padding:8px 3px 3px 7px; +} +td.colFirst, th.colFirst { + white-space:nowrap; + font-size:13px; +} +td.colLast, th.colLast { + font-size:13px; +} +td.colOne, th.colOne { + font-size:13px; +} +.overviewSummary td.colFirst, .overviewSummary th.colFirst, +.useSummary td.colFirst, .useSummary th.colFirst, +.overviewSummary td.colOne, .overviewSummary th.colOne, +.memberSummary td.colFirst, .memberSummary th.colFirst, +.memberSummary td.colOne, .memberSummary th.colOne, +.typeSummary td.colFirst{ + width:25%; + vertical-align:top; +} +td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { + font-weight:bold; +} +.tableSubHeadingColor { + background-color:#EEEEFF; +} +.altColor { + background-color:#FFFFFF; +} +.rowColor { + background-color:#EEEEEF; +} +/* +Content styles +*/ +.description pre { + margin-top:0; +} +.deprecatedContent { + margin:0; + padding:10px 0; +} +.docSummary { + padding:0; +} + +ul.blockList ul.blockList ul.blockList li.blockList h3 { + font-style:normal; +} + +div.block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} + +td.colLast div { + padding-top:0px; +} + + +td.colLast a { + padding-bottom:3px; +} +/* +Formatting effect styles +*/ +.sourceLineNo { + color:green; + padding:0 30px 0 0; +} +h1.hidden { + visibility:hidden; + overflow:hidden; + font-size:10px; +} +.block { + display:block; + margin:3px 10px 2px 0px; + color:#474747; +} +.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink, +.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, +.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { + font-weight:bold; +} +.deprecationComment, .emphasizedPhrase, .interfaceName { + font-style:italic; +} + +div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase, +div.block div.block span.interfaceName { + font-style:normal; +} + +div.contentContainer ul.blockList li.blockList h2{ + padding-bottom:0px; +} diff --git a/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html b/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html new file mode 100644 index 00000000..589d5f0e --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + +
+

CheckStyle Audit

+
Designed for use with CheckStyle and Ant.
+
+

Summary

+ + + + + + + +
FilesErrors
10
+
+

Files

+ + + + + + + +
NameErrors
/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java0
+
+ +

File /Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java

+ + + + +
Error DescriptionLine
+Back to top +
+ + diff --git a/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml b/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml new file mode 100644 index 00000000..d1f7ee3b --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/jxnet-spring-boot-starter-example/build/reports/findbugs/main.html b/jxnet-spring-boot-starter-example/build/reports/findbugs/main.html new file mode 100644 index 00000000..dcc8e757 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/reports/findbugs/main.html @@ -0,0 +1,146 @@ + + + +SpotBugs Report + + + + +

+SpotBugs Report

+

Project Information

+

Project: +

+

SpotBugs version: 3.1.5

+

Code analyzed:

+
    +
  • /Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/classes/java/main
  • +
+

+
+
+

+

Metrics

+

32 lines of code analyzed, + in 2 classes, + in 1 packages.

+ + + + + + + + + + + + + + + + + + + +
MetricTotalDensity*
High Priority Warnings +0.00
Medium Priority Warnings +0.00
+Total Warnings + +0 + +0.00 +
+

+(* Defects per Thousand lines of non-commenting source statements) +

+

+
+
+

+

Contents

+ +

Summary

+ + + + + + + + + +
Warning TypeNumber
+Total + +0 +
+

Warnings

+

Click on a warning row to see full context information.

+

+Details +

+ + diff --git a/jxnet-spring-boot-starter-example/build/reports/pmd/main.html b/jxnet-spring-boot-starter-example/build/reports/pmd/main.html new file mode 100644 index 00000000..faeb4ba5 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/reports/pmd/main.html @@ -0,0 +1,10 @@ +PMD +

PMD report

Problems found

+ +
#FileLineProblem

Configuration errors

+ + + + + +
RuleProblem
LoosePackageCouplingNo packages or classes specified
diff --git a/jxnet-spring-boot-starter-example/build/reports/pmd/main.xml b/jxnet-spring-boot-starter-example/build/reports/pmd/main.xml new file mode 100644 index 00000000..a1fd77d8 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/reports/pmd/main.xml @@ -0,0 +1,7 @@ + + + + diff --git a/jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF b/jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF new file mode 100644 index 00000000..ba6b0c7b --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Start-Class: com.ardikars.jxnet.spring.boot.starter.example.Applicatio + n +Main-Class: org.springframework.boot.loader.JarLauncher + diff --git a/jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options b/jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options new file mode 100644 index 00000000..accee4f2 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options @@ -0,0 +1,15 @@ +-locale 'en_US' +-Xdoclint:all,-reference '-quiet' +-author +-bottom 'Copyright © 2015 - 2018 ardikars.com. All rights reserved.' +-charset 'UTF-8' +-classpath '/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/classes/java/main:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/resources/main:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter/build/libs/jxnet-spring-boot-starter-1.4.0.RC2.jar:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-autoconfigure/build/libs/jxnet-spring-boot-autoconfigure-1.4.0.RC2.jar:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-context/build/libs/jxnet-context-1.4.0.RC2.jar:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-core/build/libs/jxnet-core-1.4.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/com.ardikars.common/common-net/1.2.0.RC2/13aac17732209ff9399218a7f064e66fdbaadd50/common-net-1.2.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/com.ardikars.common/common-util/1.2.0.RC2/6095fa2d4d3363d6095c309d21ba2b36727024fb/common-util-1.2.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter/2.0.4.RELEASE/ec46c63a2adeee40058eff1a6baefca13975dc94/spring-boot-starter-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/com.ardikars.common/common-annotation/1.2.0.RC2/14b8d39ee970692ccf9410d7356fdef0e166f758/common-annotation-1.2.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-autoconfigure/2.0.4.RELEASE/65cd1244d606acc02ab7bfc47a203a3fe2400dda/spring-boot-autoconfigure-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot/2.0.4.RELEASE/c8619c5b06d4dcdb4cac1e5e9c839e6e8b1c8574/spring-boot-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-logging/2.0.4.RELEASE/dcd1a2c431c970f44adae64d9145133979a513ab/spring-boot-starter-logging-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/javax.annotation/javax.annotation-api/1.3.2/934c04d3cfef185a8008e7bf34331b79730a9d43/javax.annotation-api-1.3.2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-context/5.0.8.RELEASE/3a067d8990761111c9b6d1d895640be26cc1fb38/spring-context-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aop/5.0.8.RELEASE/f5086c1a3185c481104511837427b39a07a57aa2/spring-aop-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-beans/5.0.8.RELEASE/5fc965d3e7f5515099244857a8ae9e2a208c169b/spring-beans-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-expression/5.0.8.RELEASE/f23158f22c917df2cddf2ecebc398a9e95f95fae/spring-expression-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-core/5.0.8.RELEASE/dc39c49e3246cdf73d3786ac41119140aed3fa08/spring-core-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.yaml/snakeyaml/1.19/2d998d3d674b172a588e54ab619854d073f555b5/snakeyaml-1.19.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.3/7c4f3c474fb2c041d8028740440937705ebb473a/logback-classic-1.2.3.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-to-slf4j/2.10.0/f7e631ccf49cfc0aefa4a2a728da7d374c05bd3c/log4j-to-slf4j-2.10.0.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.slf4j/jul-to-slf4j/1.7.25/af5364cd6679bfffb114f0dec8a157aaa283b76/jul-to-slf4j-1.7.25.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.25/da76ca59f6a57ee3102f8f9bd9cee742973efa8a/slf4j-api-1.7.25.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-configuration-processor/2.0.4.RELEASE/dcaf863e151e728debbf37cf024e7b698ea92281/spring-boot-configuration-processor-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jcl/5.0.8.RELEASE/a1fa8fb560fb252321776e16bc9ac8201af4ef5e/spring-jcl-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.3/864344400c3d4d92dfeb0a305dc87d953677c03c/logback-core-1.2.3.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.10.0/fec5797a55b786184a537abd39c3fa1449d752d6/log4j-api-2.10.0.jar' +-d '/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/docs/javadoc' +-doctitle 'Jxnet 1.4.0.RC2 API Documentation' +-encoding 'UTF-8' +-footer 'https://github.com/jxnet/Jxnet' +-header 'Jxnet 1.4.0.RC2' +-protected +-quiet +-windowtitle 'Jxnet 1.4.0.RC2' +'/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java' diff --git a/jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF b/jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF new file mode 100644 index 00000000..58630c02 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF b/jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF new file mode 100644 index 00000000..58630c02 --- /dev/null +++ b/jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java b/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java new file mode 100644 index 00000000..2fe03dcb --- /dev/null +++ b/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java @@ -0,0 +1,69 @@ +/** + * Copyright (C) 2017-2018 Ardika Rommy Sanjaya + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.ardikars.jxnet.spring.boot.starter.example; + +import com.ardikars.common.util.Hexs; +import com.ardikars.jxnet.Context; +import com.ardikars.jxnet.PcapHandler; +import com.ardikars.jxnet.PcapPktHdr; +import java.nio.ByteBuffer; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.CommandLineRunner; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class Application implements CommandLineRunner { + + public static final int MAX_PACKET = 20; + + public static final int WAIT_TIME_FOR_THREAD_TERMINATION = 10000; + + private static final Logger LOGGER = LoggerFactory.getLogger(Application.class.getName()); + + @Autowired + private Context context; + + @Override + public void run(String... args) throws Exception { + ExecutorService pool = Executors.newCachedThreadPool(); + context.pcapLoop(10, new PcapHandler() { + @Override + public void nextPacket(String user, PcapPktHdr pktHdr, ByteBuffer buffer) { + byte[] bytes = new byte[buffer.capacity()]; + buffer.get(bytes, 0, bytes.length); + String hexDump = Hexs.toPrettyHexDump(bytes); + LOGGER.info("User argument : " + user); + LOGGER.info("Packet header : " + pktHdr); + LOGGER.info("Packet buffer : \n" + hexDump); + } + }, "Jxnet!", pool); + pool.shutdown(); + pool.awaitTermination(WAIT_TIME_FOR_THREAD_TERMINATION, TimeUnit.MICROSECONDS); + } + + public static void main(String[] args) { + SpringApplication.run(Application.class, args); + } + +} diff --git a/settings.gradle b/settings.gradle index a4864c83..c24b606e 100644 --- a/settings.gradle +++ b/settings.gradle @@ -5,4 +5,5 @@ include 'jxnet-context' include 'jxnet-core' include 'jxnet-spring-boot-autoconfigure' include 'jxnet-spring-boot-starter' +include 'jxnet-spring-boot-starter-example' From 99fda9aeedae627fcd4efb895f255d1343c7e37a Mon Sep 17 00:00:00 2001 From: Ardika Rommy Sanjaya Date: Fri, 31 Aug 2018 11:51:01 +0700 Subject: [PATCH 2/5] Update .gitignore --- .gitignore | 4 + .../boot/starter/example/Application$1.class | Bin 2080 -> 0 bytes .../boot/starter/example/Application.class | Bin 2358 -> 0 bytes .../build/docs/javadoc/allclasses-frame.html | 20 - .../docs/javadoc/allclasses-noframe.html | 20 - .../boot/starter/example/Application.html | 354 ----------- .../boot/starter/example/package-frame.html | 21 - .../boot/starter/example/package-summary.html | 142 ----- .../boot/starter/example/package-tree.html | 133 ---- .../build/docs/javadoc/constant-values.html | 160 ----- .../build/docs/javadoc/deprecated-list.html | 124 ---- .../build/docs/javadoc/help-doc.html | 221 ------- .../build/docs/javadoc/index-all.html | 165 ----- .../build/docs/javadoc/index.html | 73 --- .../build/docs/javadoc/overview-tree.html | 137 ----- .../build/docs/javadoc/package-list | 1 - .../build/docs/javadoc/script.js | 30 - .../build/docs/javadoc/stylesheet.css | 574 ------------------ .../build/reports/checkstyle/main.html | 99 --- .../build/reports/checkstyle/main.xml | 5 - .../build/reports/findbugs/main.html | 146 ----- .../build/reports/pmd/main.html | 10 - .../build/reports/pmd/main.xml | 7 - .../build/tmp/bootJar/MANIFEST.MF | 5 - .../build/tmp/javadoc/javadoc.options | 15 - .../build/tmp/javadocJar/MANIFEST.MF | 2 - .../build/tmp/sourcesJar/MANIFEST.MF | 2 - 27 files changed, 4 insertions(+), 2466 deletions(-) delete mode 100644 jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application$1.class delete mode 100644 jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application.class delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-frame.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/index.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/package-list delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/script.js delete mode 100644 jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css delete mode 100644 jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html delete mode 100644 jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml delete mode 100644 jxnet-spring-boot-starter-example/build/reports/findbugs/main.html delete mode 100644 jxnet-spring-boot-starter-example/build/reports/pmd/main.html delete mode 100644 jxnet-spring-boot-starter-example/build/reports/pmd/main.xml delete mode 100644 jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF delete mode 100644 jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options delete mode 100644 jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF delete mode 100644 jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF diff --git a/.gitignore b/.gitignore index 4159c1fd..beb84642 100644 --- a/.gitignore +++ b/.gitignore @@ -52,6 +52,10 @@ a.out /jxnet-spring-boot-starter/build/ /jxnet-spring-boot-starter/target /jxnet-spring-boot-starter/out +/jxnet-spring-boot-starter-example/.gradle +/jxnet-spring-boot-starter-example/build/ +/jxnet-spring-boot-starter-example/target +/jxnet-spring-boot-starter-example/out /jxnet-android/.gradle /jxnet-android/build/ /jxnet-android/target diff --git a/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application$1.class b/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application$1.class deleted file mode 100644 index 80a678b68ff5f396fb4d2f3288ecfd963575584a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2080 zcmbtVX>;3D6g{%#%28C}rZgcf4FN)Nwkm1U%?>Vg+7N@=8q$RlmU)(693@&j@-vfs z<1g`nv@Fx%Gyj4=!f+&esFS!;rq#?_b?lsg92418u_UBd~r?Y5^E zHLO&f(6>d@aCb%2ws-adsqA(ua)YK_4@1tCh?IY~H4zD4k~T5TK<=rUaCW8AP{~(!#E-)E1pTw2VmB2Bomq24 ztG27w8&R>V5V)aT-dD2R+1ip(F(KS(%P6LI43U0qCCVD!dj&d0>j|WWGXqc3kg4-r z5=m{AH5l7+?{>#;9iei+z9Sv=+Ej)%+-4wDCt|qP`uMy8c3lJwPev_m=SbK@k)_2u2g*kR0+JAvbcZHAy5Gy@e2pW_P)XE0`A9908%E!@L>3pIRc;42Fo zcwpfnm~P`oymw}opOj&r0uPr>mHwHE>e2ecW)Xj*gZ7HbK z6Z&4msos7!DBL$Gd-Ny^Q+S`X_xhzby>tk+>t_v<0}$g>>^WLPVSvE@tac6Qs1s-y z%Woc!SDer3eB7T-$R1924Oto?99QipVioqyxSY=AH_MgE%u5pY{2^nx@Wa6FDA%*s zYV^xrf$Yq0A-WII_(fZ;^N2+xeMl7&Yy-x3#=uSHotL70E&p zt(FWL8Wsi=`Ek@{&+%vhD;&z3@3hv@#HD8 zqeBNU=hzM~{41;!`hK0{_WS|f8t`j`za}z$YA-CGV!Z diff --git a/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application.class b/jxnet-spring-boot-starter-example/build/classes/java/main/com/ardikars/jxnet/spring/boot/starter/example/Application.class deleted file mode 100644 index 7141bc8b44b5a5f8cc97b4bc4e88eaf126c5a980..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2358 zcmbtWYgZdp6x|mB6Nagch}70TXp3#Y%1~Ri7D`P+XhRc%NeX?acr&?#p~*~~ObUMR zga1gYOIuybAK;I2x$h*DEKF;cvKDjaKF&G&?0e3h{Q1{!e*n0G+6YWsGckrwO!%&2pxg&#tD**}^K%T}%iJ=L)xPXNm%2IX|e`t@_s09XsdOYATo)FdW|t)m|uY zGUxaWTLxA4u?$-F&Yq`2n}PK%4<0YJz0hr_b+_eK>MG@Vekenizyz*!JU0W^t8E3c zp?3Y?v0YKpYuQ`U3H{((TfQ)`Q|-{-bputU+u;S*bHhb}!Q}M1KrHQ7mB7)Q>#5at zqoRVcWV8spBkSujaP_>q7z?*uhF|E1ycMCbE50AvdZXx5dTYBuYx6QL)B z!JzF4Oe7!WcH|Rj*QHmpOQFtXK7u5J8iTymXPbDNzF!x(&@pX?ZrvuKPCE#c7uuOU z^Z6#(Pm&xAdy$$wqIS7nl(aXpjbn?#A8awQLWb0+}xbNcyhYm z<;54AdY3-479QaX z3t!?Z1Dh6-_}YN9P=RBhYC&O(OdVW#p|YbK_Q6clC5LNS6P5NG4e3>NZL%5Iv8;*% z`xiGWa5`FjSvBZl^3-lxI@_vR-VT(ku0>Up(>#{!4hudzq3&fj_ zZ03BwDez4)+b`4_58NRcb*e~D-*iaquDpzZ`RSK=)ZNc6nR*=-h_bca4y*nyyX910 zi!$}<9_57!o6n|;g;FM6SY0X!oaxW={&_-3$X)4%Wfe4BFA@rY^U0NeF`It)s`BY{ zR!>(6RFXa1MfyMAM`pUcf2btcvRaz8L`SWwb+N~J_b!>r(TJN!)}jy;{hA6_DL5Tr zIoR&1p1`rgUy9|9iVKX;wDa+x>h+@ESImFv6q{UsFddbg_>nIInBr3(2H)P})9M_+1zhCp zdrH7G1|#F|=uCe{?PnOw&-{#7!u%aW59n%m%((O%@gZz*7!kNMj?t$$@*Ho(uyGJ( zf)0So%;-ZRzCm1zn8nQ~>}1DvH>^fFgZBv~#^)t`K%ldK%rhMA32br){4HT1-IHTH3V|MXi8zs6p%d-yWaNx7pF;e=Ia`d+eX8QP t`hwM|?n!IR`~`_;c=IO+oprCp4D - - - - - -All Classes (Jxnet 1.4.0.RC2) - - - - - -

All Classes

-
- -
- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html deleted file mode 100644 index fc51f986..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/allclasses-noframe.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - -All Classes (Jxnet 1.4.0.RC2) - - - - - -

All Classes

-
- -
- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html deleted file mode 100644 index a9e7ee6a..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/Application.html +++ /dev/null @@ -1,354 +0,0 @@ - - - - - - -Application (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - - -
-
com.ardikars.jxnet.spring.boot.starter.example
-

Class Application

-
-
-
    -
  • java.lang.Object
  • -
  • -
      -
    • com.ardikars.jxnet.spring.boot.starter.example.Application
    • -
    -
  • -
-
-
    -
  • -
    -
    All Implemented Interfaces:
    -
    org.springframework.boot.CommandLineRunner
    -
    -
    -
    -
    @SpringBootApplication
    -public class Application
    -extends java.lang.Object
    -implements org.springframework.boot.CommandLineRunner
    -
  • -
-
-
-
    -
  • - - - -
      -
    • - - -

      Constructor Summary

      - - - - - - - - -
      Constructors 
      Constructor and Description
      Application() 
      -
    • -
    - -
      -
    • - - -

      Method Summary

      - - - - - - - - - - - - - - -
      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and TypeMethod and Description
      static voidmain(java.lang.String[] args) 
      voidrun(java.lang.String... args) 
      -
        -
      • - - -

        Methods inherited from class java.lang.Object

        -clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • -
      -
    • -
    -
  • -
-
-
-
    -
  • - -
      -
    • - - -

      Field Detail

      - - - - - - - -
        -
      • -

        WAIT_TIME_FOR_THREAD_TERMINATION

        -
        public static final int WAIT_TIME_FOR_THREAD_TERMINATION
        -
        -
        See Also:
        -
        Constant Field Values
        -
        -
      • -
      -
    • -
    - -
      -
    • - - -

      Constructor Detail

      - - - -
        -
      • -

        Application

        -
        public Application()
        -
      • -
      -
    • -
    - -
      -
    • - - -

      Method Detail

      - - - -
        -
      • -

        run

        -
        public void run(java.lang.String... args)
        -         throws java.lang.Exception
        -
        -
        Specified by:
        -
        run in interface org.springframework.boot.CommandLineRunner
        -
        Throws:
        -
        java.lang.Exception
        -
        -
      • -
      - - - -
        -
      • -

        main

        -
        public static void main(java.lang.String[] args)
        -
      • -
      -
    • -
    -
  • -
-
-
- - -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html deleted file mode 100644 index 6c34ea72..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-frame.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - -com.ardikars.jxnet.spring.boot.starter.example (Jxnet 1.4.0.RC2) - - - - - -

com.ardikars.jxnet.spring.boot.starter.example

-
-

Classes

- -
- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html deleted file mode 100644 index 9d501053..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-summary.html +++ /dev/null @@ -1,142 +0,0 @@ - - - - - - -com.ardikars.jxnet.spring.boot.starter.example (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
-

Package com.ardikars.jxnet.spring.boot.starter.example

-
-
-
    -
  • - - - - - - - - - - - - -
    Class Summary 
    ClassDescription
    Application 
    -
  • -
-
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html deleted file mode 100644 index a2937272..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/com/ardikars/jxnet/spring/boot/starter/example/package-tree.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - -com.ardikars.jxnet.spring.boot.starter.example Class Hierarchy (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
-

Hierarchy For Package com.ardikars.jxnet.spring.boot.starter.example

-
-
-

Class Hierarchy

-
    -
  • java.lang.Object -
      -
    • com.ardikars.jxnet.spring.boot.starter.example.Application (implements org.springframework.boot.CommandLineRunner)
    • -
    -
  • -
-
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html deleted file mode 100644 index 0098c1fe..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/constant-values.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - -Constant Field Values (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
-

Constant Field Values

-

Contents

- -
-
- - -

com.ardikars.*

- -
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html deleted file mode 100644 index d742e2b9..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/deprecated-list.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Deprecated List (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
-

Deprecated API

-

Contents

-
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html deleted file mode 100644 index ce0654f2..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/help-doc.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - -API Help (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
-

How This API Document Is Organized

-
This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.
-
-
-
    -
  • -

    Package

    -

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain six categories:

    -
      -
    • Interfaces (italic)
    • -
    • Classes
    • -
    • Enums
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Types
    • -
    -
  • -
  • -

    Class/Interface

    -

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

    -
      -
    • Class inheritance diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class/interface declaration
    • -
    • Class/interface description
    • -
    -
      -
    • Nested Class Summary
    • -
    • Field Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    -
      -
    • Field Detail
    • -
    • Constructor Detail
    • -
    • Method Detail
    • -
    -

    Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    -
  • -
  • -

    Annotation Type

    -

    Each annotation type has its own separate page with the following sections:

    -
      -
    • Annotation Type declaration
    • -
    • Annotation Type description
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    • Element Detail
    • -
    -
  • -
  • -

    Enum

    -

    Each enum has its own separate page with the following sections:

    -
      -
    • Enum declaration
    • -
    • Enum description
    • -
    • Enum Constant Summary
    • -
    • Enum Constant Detail
    • -
    -
  • -
  • -

    Tree (Class Hierarchy)

    -

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.

    -
      -
    • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
    • -
    • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
    • -
    -
  • -
  • -

    Deprecated API

    -

    The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.

    -
  • -
  • -

    Index

    -

    The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.

    -
  • -
  • -

    Prev/Next

    -

    These links take you to the next or previous class, interface, package, or related page.

    -
  • -
  • -

    Frames/No Frames

    -

    These links show and hide the HTML frames. All pages are available with or without frames.

    -
  • -
  • -

    All Classes

    -

    The All Classes link shows all classes and interfaces except non-static nested types.

    -
  • -
  • -

    Serialized Form

    -

    Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.

    -
  • -
  • -

    Constant Field Values

    -

    The Constant Field Values page lists the static final fields and their values.

    -
  • -
-This help file applies to API documentation generated using the standard doclet.
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html deleted file mode 100644 index d1d0878f..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/index-all.html +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - -Index (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
A C M R W  - - -

A

-
-
Application - Class in com.ardikars.jxnet.spring.boot.starter.example
-
 
-
Application() - Constructor for class com.ardikars.jxnet.spring.boot.starter.example.Application
-
 
-
- - - -

C

-
-
com.ardikars.jxnet.spring.boot.starter.example - package com.ardikars.jxnet.spring.boot.starter.example
-
 
-
- - - -

M

-
-
main(String[]) - Static method in class com.ardikars.jxnet.spring.boot.starter.example.Application
-
 
-
MAX_PACKET - Static variable in class com.ardikars.jxnet.spring.boot.starter.example.Application
-
 
-
- - - -

R

-
-
run(String...) - Method in class com.ardikars.jxnet.spring.boot.starter.example.Application
-
 
-
- - - -

W

-
-
WAIT_TIME_FOR_THREAD_TERMINATION - Static variable in class com.ardikars.jxnet.spring.boot.starter.example.Application
-
 
-
-A C M R W 
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/index.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/index.html deleted file mode 100644 index a35cffd9..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/index.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Jxnet 1.4.0.RC2 - - - - - - -<noscript> -<div>JavaScript is disabled on your browser.</div> -</noscript> -<h2>Frame Alert</h2> -<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="com/ardikars/jxnet/spring/boot/starter/example/package-summary.html">Non-frame version</a>.</p> - - - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html b/jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html deleted file mode 100644 index 51e649f3..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/overview-tree.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - -Class Hierarchy (Jxnet 1.4.0.RC2) - - - - - - - - -
- - - - - - - -
Jxnet 1.4.0.RC2
-
- - -
-

Hierarchy For All Packages

-Package Hierarchies: - -
-
-

Class Hierarchy

-
    -
  • java.lang.Object -
      -
    • com.ardikars.jxnet.spring.boot.starter.example.Application (implements org.springframework.boot.CommandLineRunner)
    • -
    -
  • -
-
- -
- - - - - - - -
https://github.com/jxnet/Jxnet
-
- - -

Copyright © 2015 - 2018 ardikars.com. All rights reserved.

- - diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/package-list b/jxnet-spring-boot-starter-example/build/docs/javadoc/package-list deleted file mode 100644 index c512cda4..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/package-list +++ /dev/null @@ -1 +0,0 @@ -com.ardikars.jxnet.spring.boot.starter.example diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/script.js b/jxnet-spring-boot-starter-example/build/docs/javadoc/script.js deleted file mode 100644 index b3463569..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/script.js +++ /dev/null @@ -1,30 +0,0 @@ -function show(type) -{ - count = 0; - for (var key in methods) { - var row = document.getElementById(key); - if ((methods[key] & type) != 0) { - row.style.display = ''; - row.className = (count++ % 2) ? rowColor : altColor; - } - else - row.style.display = 'none'; - } - updateTabs(type); -} - -function updateTabs(type) -{ - for (var value in tabs) { - var sNode = document.getElementById(tabs[value][0]); - var spanNode = sNode.firstChild; - if (value == type) { - sNode.className = activeTableTab; - spanNode.innerHTML = tabs[value][1]; - } - else { - sNode.className = tableTab; - spanNode.innerHTML = "" + tabs[value][1] + ""; - } - } -} diff --git a/jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css b/jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css deleted file mode 100644 index 98055b22..00000000 --- a/jxnet-spring-boot-starter-example/build/docs/javadoc/stylesheet.css +++ /dev/null @@ -1,574 +0,0 @@ -/* Javadoc style sheet */ -/* -Overall document style -*/ - -@import url('resources/fonts/dejavu.css'); - -body { - background-color:#ffffff; - color:#353833; - font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:14px; - margin:0; -} -a:link, a:visited { - text-decoration:none; - color:#4A6782; -} -a:hover, a:focus { - text-decoration:none; - color:#bb7a2a; -} -a:active { - text-decoration:none; - color:#4A6782; -} -a[name] { - color:#353833; -} -a[name]:hover { - text-decoration:none; - color:#353833; -} -pre { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; -} -h1 { - font-size:20px; -} -h2 { - font-size:18px; -} -h3 { - font-size:16px; - font-style:italic; -} -h4 { - font-size:13px; -} -h5 { - font-size:12px; -} -h6 { - font-size:11px; -} -ul { - list-style-type:disc; -} -code, tt { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; - margin-top:8px; - line-height:1.4em; -} -dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; -} -table tr td dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - vertical-align:top; - padding-top:4px; -} -sup { - font-size:8px; -} -/* -Document title and Copyright styles -*/ -.clear { - clear:both; - height:0px; - overflow:hidden; -} -.aboutLanguage { - float:right; - padding:0px 21px; - font-size:11px; - z-index:200; - margin-top:-9px; -} -.legalCopy { - margin-left:.5em; -} -.bar a, .bar a:link, .bar a:visited, .bar a:active { - color:#FFFFFF; - text-decoration:none; -} -.bar a:hover, .bar a:focus { - color:#bb7a2a; -} -.tab { - background-color:#0066FF; - color:#ffffff; - padding:8px; - width:5em; - font-weight:bold; -} -/* -Navigation bar styles -*/ -.bar { - background-color:#4D7A97; - color:#FFFFFF; - padding:.8em .5em .4em .8em; - height:auto;/*height:1.8em;*/ - font-size:11px; - margin:0; -} -.topNav { - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; -} -.bottomNav { - margin-top:10px; - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; -} -.subNav { - background-color:#dee3e9; - float:left; - width:100%; - overflow:hidden; - font-size:12px; -} -.subNav div { - clear:left; - float:left; - padding:0 0 5px 6px; - text-transform:uppercase; -} -ul.navList, ul.subNavList { - float:left; - margin:0 25px 0 0; - padding:0; -} -ul.navList li{ - list-style:none; - float:left; - padding: 5px 6px; - text-transform:uppercase; -} -ul.subNavList li{ - list-style:none; - float:left; -} -.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited { - color:#FFFFFF; - text-decoration:none; - text-transform:uppercase; -} -.topNav a:hover, .bottomNav a:hover { - text-decoration:none; - color:#bb7a2a; - text-transform:uppercase; -} -.navBarCell1Rev { - background-color:#F8981D; - color:#253441; - margin: auto 5px; -} -.skipNav { - position:absolute; - top:auto; - left:-9999px; - overflow:hidden; -} -/* -Page header and footer styles -*/ -.header, .footer { - clear:both; - margin:0 20px; - padding:5px 0 0 0; -} -.indexHeader { - margin:10px; - position:relative; -} -.indexHeader span{ - margin-right:15px; -} -.indexHeader h1 { - font-size:13px; -} -.title { - color:#2c4557; - margin:10px 0; -} -.subTitle { - margin:5px 0 0 0; -} -.header ul { - margin:0 0 15px 0; - padding:0; -} -.footer ul { - margin:20px 0 5px 0; -} -.header ul li, .footer ul li { - list-style:none; - font-size:13px; -} -/* -Heading styles -*/ -div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; -} -ul.blockList ul.blockList ul.blockList li.blockList h3 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; -} -ul.blockList ul.blockList li.blockList h3 { - padding:0; - margin:15px 0; -} -ul.blockList li.blockList h2 { - padding:0px 0 20px 0; -} -/* -Page layout container styles -*/ -.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer { - clear:both; - padding:10px 20px; - position:relative; -} -.indexContainer { - margin:10px; - position:relative; - font-size:12px; -} -.indexContainer h2 { - font-size:13px; - padding:0 0 3px 0; -} -.indexContainer ul { - margin:0; - padding:0; -} -.indexContainer ul li { - list-style:none; - padding-top:2px; -} -.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt { - font-size:12px; - font-weight:bold; - margin:10px 0 0 0; - color:#4E4E4E; -} -.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd { - margin:5px 0 10px 0px; - font-size:14px; - font-family:'DejaVu Sans Mono',monospace; -} -.serializedFormContainer dl.nameValue dt { - margin-left:1px; - font-size:1.1em; - display:inline; - font-weight:bold; -} -.serializedFormContainer dl.nameValue dd { - margin:0 0 0 1px; - font-size:1.1em; - display:inline; -} -/* -List styles -*/ -ul.horizontal li { - display:inline; - font-size:0.9em; -} -ul.inheritance { - margin:0; - padding:0; -} -ul.inheritance li { - display:inline; - list-style:none; -} -ul.inheritance li ul.inheritance { - margin-left:15px; - padding-left:15px; - padding-top:1px; -} -ul.blockList, ul.blockListLast { - margin:10px 0 10px 0; - padding:0; -} -ul.blockList li.blockList, ul.blockListLast li.blockList { - list-style:none; - margin-bottom:15px; - line-height:1.4; -} -ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList { - padding:0px 20px 5px 10px; - border:1px solid #ededed; - background-color:#f8f8f8; -} -ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList { - padding:0 0 5px 8px; - background-color:#ffffff; - border:none; -} -ul.blockList ul.blockList ul.blockList ul.blockList li.blockList { - margin-left:0; - padding-left:0; - padding-bottom:15px; - border:none; -} -ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast { - list-style:none; - border-bottom:none; - padding-bottom:0; -} -table tr td dl, table tr td dl dt, table tr td dl dd { - margin-top:0; - margin-bottom:1px; -} -/* -Table styles -*/ -.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { - width:100%; - border-left:1px solid #EEE; - border-right:1px solid #EEE; - border-bottom:1px solid #EEE; -} -.overviewSummary, .memberSummary { - padding:0px; -} -.overviewSummary caption, .memberSummary caption, .typeSummary caption, -.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { - position:relative; - text-align:left; - background-repeat:no-repeat; - color:#253441; - font-weight:bold; - clear:none; - overflow:hidden; - padding:0px; - padding-top:10px; - padding-left:1px; - margin:0px; - white-space:pre; -} -.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, -.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, -.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, -.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, -.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, -.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, -.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, -.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { - color:#FFFFFF; -} -.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, -.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - padding-bottom:7px; - display:inline-block; - float:left; - background-color:#F8981D; - border: none; - height:16px; -} -.memberSummary caption span.activeTableTab span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - margin-right:3px; - display:inline-block; - float:left; - background-color:#F8981D; - height:16px; -} -.memberSummary caption span.tableTab span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - margin-right:3px; - display:inline-block; - float:left; - background-color:#4D7A97; - height:16px; -} -.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { - padding-top:0px; - padding-left:0px; - padding-right:0px; - background-image:none; - float:none; - display:inline; -} -.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, -.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { - display:none; - width:5px; - position:relative; - float:left; - background-color:#F8981D; -} -.memberSummary .activeTableTab .tabEnd { - display:none; - width:5px; - margin-right:3px; - position:relative; - float:left; - background-color:#F8981D; -} -.memberSummary .tableTab .tabEnd { - display:none; - width:5px; - margin-right:3px; - position:relative; - background-color:#4D7A97; - float:left; - -} -.overviewSummary td, .memberSummary td, .typeSummary td, -.useSummary td, .constantsSummary td, .deprecatedSummary td { - text-align:left; - padding:0px 0px 12px 10px; -} -th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, -td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ - vertical-align:top; - padding-right:0px; - padding-top:8px; - padding-bottom:3px; -} -th.colFirst, th.colLast, th.colOne, .constantsSummary th { - background:#dee3e9; - text-align:left; - padding:8px 3px 3px 7px; -} -td.colFirst, th.colFirst { - white-space:nowrap; - font-size:13px; -} -td.colLast, th.colLast { - font-size:13px; -} -td.colOne, th.colOne { - font-size:13px; -} -.overviewSummary td.colFirst, .overviewSummary th.colFirst, -.useSummary td.colFirst, .useSummary th.colFirst, -.overviewSummary td.colOne, .overviewSummary th.colOne, -.memberSummary td.colFirst, .memberSummary th.colFirst, -.memberSummary td.colOne, .memberSummary th.colOne, -.typeSummary td.colFirst{ - width:25%; - vertical-align:top; -} -td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { - font-weight:bold; -} -.tableSubHeadingColor { - background-color:#EEEEFF; -} -.altColor { - background-color:#FFFFFF; -} -.rowColor { - background-color:#EEEEEF; -} -/* -Content styles -*/ -.description pre { - margin-top:0; -} -.deprecatedContent { - margin:0; - padding:10px 0; -} -.docSummary { - padding:0; -} - -ul.blockList ul.blockList ul.blockList li.blockList h3 { - font-style:normal; -} - -div.block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; -} - -td.colLast div { - padding-top:0px; -} - - -td.colLast a { - padding-bottom:3px; -} -/* -Formatting effect styles -*/ -.sourceLineNo { - color:green; - padding:0 30px 0 0; -} -h1.hidden { - visibility:hidden; - overflow:hidden; - font-size:10px; -} -.block { - display:block; - margin:3px 10px 2px 0px; - color:#474747; -} -.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink, -.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, -.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { - font-weight:bold; -} -.deprecationComment, .emphasizedPhrase, .interfaceName { - font-style:italic; -} - -div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase, -div.block div.block span.interfaceName { - font-style:normal; -} - -div.contentContainer ul.blockList li.blockList h2{ - padding-bottom:0px; -} diff --git a/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html b/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html deleted file mode 100644 index 589d5f0e..00000000 --- a/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - - - - - - - - -
-

CheckStyle Audit

-
Designed for use with CheckStyle and Ant.
-
-

Summary

- - - - - - - -
FilesErrors
10
-
-

Files

- - - - - - - -
NameErrors
/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java0
-
- -

File /Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java

- - - - -
Error DescriptionLine
-Back to top -
- - diff --git a/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml b/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml deleted file mode 100644 index d1f7ee3b..00000000 --- a/jxnet-spring-boot-starter-example/build/reports/checkstyle/main.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/jxnet-spring-boot-starter-example/build/reports/findbugs/main.html b/jxnet-spring-boot-starter-example/build/reports/findbugs/main.html deleted file mode 100644 index dcc8e757..00000000 --- a/jxnet-spring-boot-starter-example/build/reports/findbugs/main.html +++ /dev/null @@ -1,146 +0,0 @@ - - - -SpotBugs Report - - - - -

-SpotBugs Report

-

Project Information

-

Project: -

-

SpotBugs version: 3.1.5

-

Code analyzed:

-
    -
  • /Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/classes/java/main
  • -
-

-
-
-

-

Metrics

-

32 lines of code analyzed, - in 2 classes, - in 1 packages.

- - - - - - - - - - - - - - - - - - - -
MetricTotalDensity*
High Priority Warnings -0.00
Medium Priority Warnings -0.00
-Total Warnings - -0 - -0.00 -
-

-(* Defects per Thousand lines of non-commenting source statements) -

-

-
-
-

-

Contents

- -

Summary

- - - - - - - - - -
Warning TypeNumber
-Total - -0 -
-

Warnings

-

Click on a warning row to see full context information.

-

-Details -

- - diff --git a/jxnet-spring-boot-starter-example/build/reports/pmd/main.html b/jxnet-spring-boot-starter-example/build/reports/pmd/main.html deleted file mode 100644 index faeb4ba5..00000000 --- a/jxnet-spring-boot-starter-example/build/reports/pmd/main.html +++ /dev/null @@ -1,10 +0,0 @@ -PMD -

PMD report

Problems found

- -
#FileLineProblem

Configuration errors

- - - - - -
RuleProblem
LoosePackageCouplingNo packages or classes specified
diff --git a/jxnet-spring-boot-starter-example/build/reports/pmd/main.xml b/jxnet-spring-boot-starter-example/build/reports/pmd/main.xml deleted file mode 100644 index a1fd77d8..00000000 --- a/jxnet-spring-boot-starter-example/build/reports/pmd/main.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF b/jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF deleted file mode 100644 index ba6b0c7b..00000000 --- a/jxnet-spring-boot-starter-example/build/tmp/bootJar/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Start-Class: com.ardikars.jxnet.spring.boot.starter.example.Applicatio - n -Main-Class: org.springframework.boot.loader.JarLauncher - diff --git a/jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options b/jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options deleted file mode 100644 index accee4f2..00000000 --- a/jxnet-spring-boot-starter-example/build/tmp/javadoc/javadoc.options +++ /dev/null @@ -1,15 +0,0 @@ --locale 'en_US' --Xdoclint:all,-reference '-quiet' --author --bottom 'Copyright © 2015 - 2018 ardikars.com. All rights reserved.' --charset 'UTF-8' --classpath '/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/classes/java/main:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/resources/main:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter/build/libs/jxnet-spring-boot-starter-1.4.0.RC2.jar:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-autoconfigure/build/libs/jxnet-spring-boot-autoconfigure-1.4.0.RC2.jar:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-context/build/libs/jxnet-context-1.4.0.RC2.jar:/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-core/build/libs/jxnet-core-1.4.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/com.ardikars.common/common-net/1.2.0.RC2/13aac17732209ff9399218a7f064e66fdbaadd50/common-net-1.2.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/com.ardikars.common/common-util/1.2.0.RC2/6095fa2d4d3363d6095c309d21ba2b36727024fb/common-util-1.2.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter/2.0.4.RELEASE/ec46c63a2adeee40058eff1a6baefca13975dc94/spring-boot-starter-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/com.ardikars.common/common-annotation/1.2.0.RC2/14b8d39ee970692ccf9410d7356fdef0e166f758/common-annotation-1.2.0.RC2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-autoconfigure/2.0.4.RELEASE/65cd1244d606acc02ab7bfc47a203a3fe2400dda/spring-boot-autoconfigure-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot/2.0.4.RELEASE/c8619c5b06d4dcdb4cac1e5e9c839e6e8b1c8574/spring-boot-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-starter-logging/2.0.4.RELEASE/dcd1a2c431c970f44adae64d9145133979a513ab/spring-boot-starter-logging-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/javax.annotation/javax.annotation-api/1.3.2/934c04d3cfef185a8008e7bf34331b79730a9d43/javax.annotation-api-1.3.2.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-context/5.0.8.RELEASE/3a067d8990761111c9b6d1d895640be26cc1fb38/spring-context-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-aop/5.0.8.RELEASE/f5086c1a3185c481104511837427b39a07a57aa2/spring-aop-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-beans/5.0.8.RELEASE/5fc965d3e7f5515099244857a8ae9e2a208c169b/spring-beans-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-expression/5.0.8.RELEASE/f23158f22c917df2cddf2ecebc398a9e95f95fae/spring-expression-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-core/5.0.8.RELEASE/dc39c49e3246cdf73d3786ac41119140aed3fa08/spring-core-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.yaml/snakeyaml/1.19/2d998d3d674b172a588e54ab619854d073f555b5/snakeyaml-1.19.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.3/7c4f3c474fb2c041d8028740440937705ebb473a/logback-classic-1.2.3.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-to-slf4j/2.10.0/f7e631ccf49cfc0aefa4a2a728da7d374c05bd3c/log4j-to-slf4j-2.10.0.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.slf4j/jul-to-slf4j/1.7.25/af5364cd6679bfffb114f0dec8a157aaa283b76/jul-to-slf4j-1.7.25.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.25/da76ca59f6a57ee3102f8f9bd9cee742973efa8a/slf4j-api-1.7.25.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework.boot/spring-boot-configuration-processor/2.0.4.RELEASE/dcaf863e151e728debbf37cf024e7b698ea92281/spring-boot-configuration-processor-2.0.4.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.springframework/spring-jcl/5.0.8.RELEASE/a1fa8fb560fb252321776e16bc9ac8201af4ef5e/spring-jcl-5.0.8.RELEASE.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.3/864344400c3d4d92dfeb0a305dc87d953677c03c/logback-core-1.2.3.jar:/Users/ardikars/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.10.0/fec5797a55b786184a537abd39c3fa1449d752d6/log4j-api-2.10.0.jar' --d '/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/build/docs/javadoc' --doctitle 'Jxnet 1.4.0.RC2 API Documentation' --encoding 'UTF-8' --footer 'https://github.com/jxnet/Jxnet' --header 'Jxnet 1.4.0.RC2' --protected --quiet --windowtitle 'Jxnet 1.4.0.RC2' -'/Users/ardikars/IdeaProjects/CodeLab/Jxnet/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java' diff --git a/jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF b/jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF deleted file mode 100644 index 58630c02..00000000 --- a/jxnet-spring-boot-starter-example/build/tmp/javadocJar/MANIFEST.MF +++ /dev/null @@ -1,2 +0,0 @@ -Manifest-Version: 1.0 - diff --git a/jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF b/jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF deleted file mode 100644 index 58630c02..00000000 --- a/jxnet-spring-boot-starter-example/build/tmp/sourcesJar/MANIFEST.MF +++ /dev/null @@ -1,2 +0,0 @@ -Manifest-Version: 1.0 - From 82b190773889fad3fd66a6e87566420ef012c18a Mon Sep 17 00:00:00 2001 From: Ardika Rommy Sanjaya Date: Fri, 31 Aug 2018 13:36:41 +0700 Subject: [PATCH 3/5] Add jxnet-example --- jxnet-example/build.gradle | 4 + .../ardikars/jxnet/example/Application.java | 149 ++++++++++++++++++ .../boot/starter/example/Application.java | 2 +- settings.gradle | 1 + 4 files changed, 155 insertions(+), 1 deletion(-) create mode 100644 jxnet-example/build.gradle create mode 100644 jxnet-example/src/main/java/com/ardikars/jxnet/example/Application.java diff --git a/jxnet-example/build.gradle b/jxnet-example/build.gradle new file mode 100644 index 00000000..53166492 --- /dev/null +++ b/jxnet-example/build.gradle @@ -0,0 +1,4 @@ + +dependencies { + compile project(':jxnet-context') +} diff --git a/jxnet-example/src/main/java/com/ardikars/jxnet/example/Application.java b/jxnet-example/src/main/java/com/ardikars/jxnet/example/Application.java new file mode 100644 index 00000000..6d39419d --- /dev/null +++ b/jxnet-example/src/main/java/com/ardikars/jxnet/example/Application.java @@ -0,0 +1,149 @@ +/** + * Copyright (C) 2017-2018 Ardika Rommy Sanjaya + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.ardikars.jxnet.example; + +import static com.ardikars.jxnet.Jxnet.OK; +import static com.ardikars.jxnet.Jxnet.PcapFindAllDevs; + +import com.ardikars.common.net.Inet4Address; +import com.ardikars.common.util.Hexs; +import com.ardikars.jxnet.Context; +import com.ardikars.jxnet.DataLinkType; +import com.ardikars.jxnet.ImmediateMode; +import com.ardikars.jxnet.Pcap; +import com.ardikars.jxnet.PcapAddr; +import com.ardikars.jxnet.PcapHandler; +import com.ardikars.jxnet.PcapIf; +import com.ardikars.jxnet.PcapPktHdr; +import com.ardikars.jxnet.PcapTimestampPrecision; +import com.ardikars.jxnet.PcapTimestampType; +import com.ardikars.jxnet.PromiscuousMode; +import com.ardikars.jxnet.RadioFrequencyMonitorMode; +import com.ardikars.jxnet.SockAddr; +import com.ardikars.jxnet.exception.DeviceNotFoundException; + +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import java.util.logging.Level; +import java.util.logging.Logger; + +public class Application { + + public static final Logger LOGGER = Logger.getLogger(Application.class.getName()); + + public static final String source = null; + public static final int SNAPLEN = 65535; + public static final PromiscuousMode PROMISCUOUS = PromiscuousMode.PRIMISCUOUS; + public static final int TIMEOUT = 2000; + public static final ImmediateMode IMMEDIATE = ImmediateMode.IMMEDIATE; + public static final PcapTimestampType TIMESTAMP_TYPE = PcapTimestampType.HOST; + public static final PcapTimestampPrecision TIMESTAMP_PRECISION = PcapTimestampPrecision.MICRO; + public static final RadioFrequencyMonitorMode RFMON = RadioFrequencyMonitorMode.NON_RFMON; + public static final boolean nonBlock = false; + public static final DataLinkType LINK_TYPE = DataLinkType.EN10MB; + public static final String FILE_NAME = "../gradle/resources/pcap/icmp.pcap"; + + public static final Pcap.PcapType PCAP_TYPE = Pcap.PcapType.LIVE; + + public static final int MAX_PACKET = 20; + + public static final int WAIT_TIME_FOR_THREAD_TERMINATION = 10000; + + /** + * Main method. + * @param args args. + * @throws InterruptedException interrupted exception. + */ + public static void main(String[] args) throws InterruptedException { + StringBuilder errbuf = new StringBuilder(); + try { + PcapIf pcapIf = pcapIf(errbuf); + Pcap.Builder builder = new Pcap.Builder() + .source(pcapIf.getName()) + .snaplen(SNAPLEN) + .promiscuousMode(PROMISCUOUS) + .timeout(TIMEOUT) + .immediateMode(IMMEDIATE) + .timestampType(TIMESTAMP_TYPE) + .timestampPrecision(TIMESTAMP_PRECISION) + .rfmon(RFMON) + .enableNonBlock(nonBlock) + .dataLinkType(LINK_TYPE) + .fileName(FILE_NAME) + .errbuf(errbuf) + .pcapType(PCAP_TYPE); + com.ardikars.jxnet.Application.run("application", "Application", "", builder); + Context context = com.ardikars.jxnet.Application.getApplicationContext(); + ExecutorService pool = Executors.newCachedThreadPool(); + context.pcapLoop(MAX_PACKET, new PcapHandler() { + @Override + public void nextPacket(String user, PcapPktHdr pktHdr, ByteBuffer buffer) { + byte[] bytes = new byte[buffer.capacity()]; + buffer.get(bytes, 0, bytes.length); + String hexDump = Hexs.toPrettyHexDump(bytes); + LOGGER.info("User argument : " + user); + LOGGER.info("Packet header : " + pktHdr); + LOGGER.info("Packet buffer : \n" + hexDump); + } + }, "Jxnet!", pool); + pool.shutdown(); + pool.awaitTermination(WAIT_TIME_FOR_THREAD_TERMINATION, TimeUnit.MICROSECONDS); + } catch (DeviceNotFoundException e) { + LOGGER.warning(e.getMessage()); + } + + } + + /** + * Get default pcap interface. + * @param errbuf error buffer. + * @return returns PcapIf. + * @throws DeviceNotFoundException device not found exception. + */ + public static PcapIf pcapIf(StringBuilder errbuf) throws DeviceNotFoundException { + String source = Application.source; + List alldevsp = new ArrayList<>(); + if (PcapFindAllDevs(alldevsp, errbuf) != OK && LOGGER.isLoggable(Level.WARNING)) { + LOGGER.warning("Error: {}" + errbuf.toString()); + } + if (source == null || source.isEmpty()) { + for (PcapIf dev : alldevsp) { + for (PcapAddr addr : dev.getAddresses()) { + if (addr.getAddr().getSaFamily() == SockAddr.Family.AF_INET && addr.getAddr().getData() != null) { + Inet4Address d = Inet4Address.valueOf(addr.getAddr().getData()); + if (!d.equals(Inet4Address.LOCALHOST) && !d.equals(Inet4Address.ZERO)) { + return dev; + } + } + } + } + } else { + for (PcapIf dev : alldevsp) { + if (dev.getName().equals(source)) { + return dev; + } + } + } + throw new DeviceNotFoundException("No device connected to the network."); + } + +} diff --git a/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java b/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java index 2fe03dcb..0d0ced98 100644 --- a/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java +++ b/jxnet-spring-boot-starter-example/src/main/java/com/ardikars/jxnet/spring/boot/starter/example/Application.java @@ -47,7 +47,7 @@ public class Application implements CommandLineRunner { @Override public void run(String... args) throws Exception { ExecutorService pool = Executors.newCachedThreadPool(); - context.pcapLoop(10, new PcapHandler() { + context.pcapLoop(MAX_PACKET, new PcapHandler() { @Override public void nextPacket(String user, PcapPktHdr pktHdr, ByteBuffer buffer) { byte[] bytes = new byte[buffer.capacity()]; diff --git a/settings.gradle b/settings.gradle index c24b606e..7eddba47 100644 --- a/settings.gradle +++ b/settings.gradle @@ -6,4 +6,5 @@ include 'jxnet-core' include 'jxnet-spring-boot-autoconfigure' include 'jxnet-spring-boot-starter' include 'jxnet-spring-boot-starter-example' +include 'jxnet-example' From 53892fe3d1cfb2dcb5d9d50d323fa6f5e69837e1 Mon Sep 17 00:00:00 2001 From: Ardika Rommy Sanjaya Date: Fri, 31 Aug 2018 14:02:18 +0700 Subject: [PATCH 4/5] Add main class manifest --- jxnet-example/build.gradle | 10 ++++++++++ jxnet-spring-boot-starter-example/build.gradle | 7 ++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/jxnet-example/build.gradle b/jxnet-example/build.gradle index 53166492..cd2ff59d 100644 --- a/jxnet-example/build.gradle +++ b/jxnet-example/build.gradle @@ -2,3 +2,13 @@ dependencies { compile project(':jxnet-context') } + +jar { + manifest { + attributes "Main-Class": "com.ardikars.jxnet.example.Application" + } + + from { + configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } + } +} diff --git a/jxnet-spring-boot-starter-example/build.gradle b/jxnet-spring-boot-starter-example/build.gradle index b8d910ff..7458fde6 100644 --- a/jxnet-spring-boot-starter-example/build.gradle +++ b/jxnet-spring-boot-starter-example/build.gradle @@ -16,7 +16,6 @@ buildscript { } } -apply plugin: 'java' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' @@ -30,3 +29,9 @@ dependencies { dependencyManagement { imports { mavenBom("org.springframework.boot:spring-boot-dependencies:${springBootVersion}") } } + +bootJar { + manifest { + attributes 'Start-Class': 'com.ardikars.jxnet.spring.boot.starter.example.Application' + } +} From 1e4345c6b8108d119c9ab9fe05f6d45af7e1ec02 Mon Sep 17 00:00:00 2001 From: Ardika Rommy Sanjaya Date: Fri, 31 Aug 2018 15:00:03 +0700 Subject: [PATCH 5/5] 1.4.0.RC3 --- gradle/configure.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/configure.gradle b/gradle/configure.gradle index 0205ac43..caa248ba 100644 --- a/gradle/configure.gradle +++ b/gradle/configure.gradle @@ -7,7 +7,7 @@ ext { NAME = 'Jxnet' GROUP = 'com.ardikars.jxnet' - VERSION = '1.4.0.RC2' + VERSION = '1.4.0.RC3' NDK_HOME = "${System.env.NDK_HOME}" TOOLS_DIR = "${rootDir}/tools"