onchange 0.0.1.alpha-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,40 @@
1
+ # encoding: utf-8
2
+
3
+ Doubleshot.new do |config|
4
+
5
+ config.project = "onchange"
6
+ config.group = "org.substantiality"
7
+ config.version = "0.0.1.alpha"
8
+
9
+ if ENV["TRAVIS"]
10
+ config.mvn_repository "http://maven.mirrors.travis-ci.org/nexus/content/groups/public/"
11
+ config.mvn_repository "http://maven.mirrors.travis-ci.org/nexus/content/repositories/apache/"
12
+ config.mvn_repository "http://maven.mirrors.travis-ci.org/nexus/content/repositories/sonatype/"
13
+ config.mvn_repository "http://maven.mirrors.travis-ci.org/nexus/content/repositories/codehaus-snapshots/"
14
+ config.mvn_repository "http://maven.mirrors.travis-ci.org/nexus/content/shadows/central-m1/"
15
+ config.mvn_repository "http://maven.mirrors.travis-ci.org/nexus/content/repositories/central/"
16
+ else
17
+ config.mvn_repository "https://nexus.codehaus.org/content/groups/public/"
18
+ config.mvn_repository "https://oss.sonatype.org/content/groups/public/"
19
+ config.mvn_repository "http://mirrors.ibiblio.org/pub/mirrors/maven2"
20
+ config.mvn_repository "http://repo1.maven.org/maven2"
21
+ end
22
+
23
+ config.development do
24
+ config.jar "org.jruby:jruby:jar:1.7.0"
25
+ end
26
+
27
+ config.gemspec do |spec|
28
+ spec.summary = "OnChange is a File System Monitor for JRuby/Java"
29
+ spec.description = <<-DESCRIPTION
30
+ OnChange is a File System Monitor for JRuby/Java similar to the Listen
31
+ or Watchr gems. Since the underlying library used is Java7's WatchService,
32
+ it's Ruby support is limited to JRuby, and you must be running Java7.
33
+ DESCRIPTION
34
+ spec.homepage = "https://github.com/sam/onchange"
35
+ spec.author = "Sam Smoot"
36
+ spec.email = "ssmoot@gmail.com"
37
+ spec.license = "MIT-LICENSE"
38
+ end
39
+
40
+ end
@@ -0,0 +1,4 @@
1
+ OnChange
2
+ ==================
3
+
4
+ File System Watcher based on JDK7's java.nio.file.WatchService
@@ -0,0 +1,38 @@
1
+ package org.substantiality;
2
+
3
+ import java.io.IOException;
4
+ import java.nio.file.*;
5
+ import java.util.HashMap;
6
+ import java.util.Map;
7
+
8
+ import static java.nio.file.StandardWatchEventKinds.*;
9
+
10
+ public class OnChange {
11
+
12
+ /**
13
+ * Main program.
14
+ * * @param args Command line arguments - dirs to watch.
15
+ * * @throws IOException in case of I/O problems.
16
+ * * @throws InterruptedException in case the thread was interrupted during watchService.take().
17
+ */
18
+ public static void main(final String... args) throws IOException, InterruptedException {
19
+ final FileSystem fileSystem = FileSystems.getDefault();
20
+ try (final WatchService watchService = fileSystem.newWatchService()) {
21
+ final Map<WatchKey, Path> keyMap = new HashMap<WatchKey, Path>();
22
+ for (final String arg : args.length > 0 ? args : new String[]{"."}) {
23
+ final Path path = Paths.get(arg);
24
+ keyMap.put(path.register(watchService, ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY), path);
25
+ }
26
+ WatchKey watchKey;
27
+ do {
28
+ watchKey = watchService.take();
29
+ final Path eventDir = keyMap.get(watchKey);
30
+ for (final WatchEvent<?> event : watchKey.pollEvents()) {
31
+ final WatchEvent.Kind kind = event.kind();
32
+ final Path eventPath = (Path) event.context();
33
+ System.out.println(eventDir + ": " + event.kind() + ": " + event.context());
34
+ }
35
+ } while (watchKey.reset());
36
+ }
37
+ }
38
+ }
Binary file
@@ -0,0 +1,5 @@
1
+ require "doubleshot/setup"
2
+
3
+ require "minitest/autorun"
4
+ require "minitest/pride"
5
+ require "minitest/wscolor"
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env jruby
2
+
3
+ # encoding: utf-8
4
+
5
+ require_relative "helper"
6
+
7
+ describe org.sam.cotton.PublicFileHandler do
8
+ it "is a place-holder" do
9
+ skip
10
+ end
11
+ end
metadata ADDED
@@ -0,0 +1,90 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: onchange
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1.alpha
5
+ prerelease: 6
6
+ platform: java
7
+ authors:
8
+ - Sam Smoot
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-11-30 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: doubleshot
16
+ version_requirements: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ! '>='
19
+ - !ruby/object:Gem::Version
20
+ version: !binary |-
21
+ MA==
22
+ none: false
23
+ requirement: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ! '>='
26
+ - !ruby/object:Gem::Version
27
+ version: !binary |-
28
+ MA==
29
+ none: false
30
+ prerelease: false
31
+ type: :development
32
+ description: ! ' OnChange is a File System Monitor for JRuby/Java similar to the
33
+ Listen
34
+
35
+ or Watchr gems. Since the underlying library used is Java7''s WatchService,
36
+
37
+ it''s Ruby support is limited to JRuby, and you must be running Java7.
38
+
39
+ '
40
+ email: ssmoot@gmail.com
41
+ executables: []
42
+ extensions: []
43
+ extra_rdoc_files: []
44
+ files:
45
+ - test/helper.rb
46
+ - test/public_file_handler_spec.rb
47
+ - !binary |-
48
+ RG91Ymxlc2hvdA==
49
+ - !binary |-
50
+ UkVBRE1FLm1k
51
+ - ext/java/OnChange.java
52
+ - target/onchange.jar
53
+ homepage: https://github.com/sam/onchange
54
+ licenses:
55
+ - MIT-LICENSE
56
+ post_install_message:
57
+ rdoc_options:
58
+ - --line-numbers
59
+ - --main
60
+ - README.textile
61
+ - --title
62
+ - onchange Documentation
63
+ - lib
64
+ - README.textile
65
+ require_paths:
66
+ - lib
67
+ - target
68
+ required_ruby_version: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - ! '>='
71
+ - !ruby/object:Gem::Version
72
+ version: !binary |-
73
+ MA==
74
+ none: false
75
+ required_rubygems_version: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - !binary |-
78
+ Pg==
79
+ - !ruby/object:Gem::Version
80
+ version: 1.3.1
81
+ none: false
82
+ requirements: []
83
+ rubyforge_project:
84
+ rubygems_version: 1.8.24
85
+ signing_key:
86
+ specification_version: 3
87
+ summary: OnChange is a File System Monitor for JRuby/Java
88
+ test_files:
89
+ - test/helper.rb
90
+ - test/public_file_handler_spec.rb