Skip to content

Commit 41713db

Browse files
authored
Merge pull request #678 from jooby-project/670
LiveReload module fix #670
2 parents 91d12f5 + a658da7 commit 41713db

8 files changed

Lines changed: 1678 additions & 28 deletions

File tree

jooby-filewatcher/src/main/java/org/jooby/filewatcher/FileMonitor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ private boolean poll(final WatchKey key) {
109109
if (kind != OVERFLOW) {
110110

111111
// Context for directory entry event is the file name of entry
112-
Path path = source.resolve((Path) event.context()).toAbsolutePath();
112+
Path path = source.resolve((Path) event.context());
113113
log.debug("found {}({})", path, kind);
114114

115115
// handler

jooby-filewatcher/src/main/java/org/jooby/filewatcher/FileWatcher.java

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,31 @@
1818
*/
1919
package org.jooby.filewatcher;
2020

21+
import java.nio.file.FileSystems;
22+
import java.nio.file.Path;
23+
import java.nio.file.Paths;
24+
import java.nio.file.StandardWatchEventKinds;
25+
import java.nio.file.WatchService;
26+
import java.util.ArrayList;
27+
import java.util.List;
28+
import java.util.Map;
29+
import java.util.function.Consumer;
30+
import java.util.function.Function;
31+
32+
import org.jooby.Env;
33+
import org.jooby.Jooby.Module;
34+
import org.slf4j.Logger;
35+
import org.slf4j.LoggerFactory;
36+
2137
import com.google.common.collect.ImmutableList;
2238
import com.google.inject.Binder;
2339
import com.google.inject.multibindings.Multibinder;
2440
import com.typesafe.config.Config;
2541
import com.typesafe.config.ConfigFactory;
42+
2643
import javaslang.CheckedFunction1;
2744
import javaslang.CheckedFunction2;
2845
import javaslang.control.Try.CheckedConsumer;
29-
import org.jooby.Env;
30-
import org.jooby.Jooby.Module;
31-
import org.slf4j.Logger;
32-
import org.slf4j.LoggerFactory;
33-
34-
import java.nio.file.*;
35-
import java.util.ArrayList;
36-
import java.util.List;
37-
import java.util.Map;
38-
import java.util.function.Consumer;
39-
import java.util.function.Function;
4046

4147
/**
4248
* <h1>file watcher</h1>
@@ -350,7 +356,11 @@ public void configure(final Env env, final Config conf, final Binder binder) thr
350356
paths.forEach(it -> log.info("Watching: {}", it));
351357
}
352358

353-
@SuppressWarnings({"unchecked", "rawtypes"})
359+
protected boolean empty() {
360+
return bindings.isEmpty();
361+
}
362+
363+
@SuppressWarnings({"unchecked", "rawtypes" })
354364
private void paths(final ClassLoader loader, final Config conf, final String name,
355365
final Consumer<FileEventOptions> callback) throws Throwable {
356366
list(conf, name, value -> {

jooby-livereload/pom.xml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
<?xml version="1.0"?>
2+
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
3+
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
4+
<modelVersion>4.0.0</modelVersion>
5+
6+
<parent>
7+
<groupId>org.jooby</groupId>
8+
<artifactId>jooby-project</artifactId>
9+
<version>1.0.4-SNAPSHOT</version>
10+
</parent>
11+
<artifactId>jooby-livereload</artifactId>
12+
<name>jooby-livereload</name>
13+
14+
<dependencies>
15+
<!-- Jooby -->
16+
<dependency>
17+
<groupId>org.jooby</groupId>
18+
<artifactId>jooby-filewatcher</artifactId>
19+
<version>${project.version}</version>
20+
</dependency>
21+
22+
<!-- Test dependencies -->
23+
<dependency>
24+
<groupId>org.jooby</groupId>
25+
<artifactId>jooby</artifactId>
26+
<version>${project.version}</version>
27+
<scope>test</scope>
28+
<classifier>tests</classifier>
29+
</dependency>
30+
31+
<dependency>
32+
<groupId>junit</groupId>
33+
<artifactId>junit</artifactId>
34+
<scope>test</scope>
35+
</dependency>
36+
37+
<dependency>
38+
<groupId>org.easymock</groupId>
39+
<artifactId>easymock</artifactId>
40+
<scope>test</scope>
41+
</dependency>
42+
43+
<dependency>
44+
<groupId>org.powermock</groupId>
45+
<artifactId>powermock-api-easymock</artifactId>
46+
<scope>test</scope>
47+
</dependency>
48+
49+
<dependency>
50+
<groupId>org.powermock</groupId>
51+
<artifactId>powermock-module-junit4</artifactId>
52+
<scope>test</scope>
53+
</dependency>
54+
55+
<dependency>
56+
<groupId>org.jacoco</groupId>
57+
<artifactId>org.jacoco.agent</artifactId>
58+
<classifier>runtime</classifier>
59+
<scope>test</scope>
60+
</dependency>
61+
</dependencies>
62+
</project>

0 commit comments

Comments
 (0)