Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial migration to RxJava2 #1

Open
wants to merge 105 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
fe7992a
Renamed `extensions` to `rxjava-contrib`.
May 2, 2013
12223cd
Moved Swing observables to new subfolder `rxjava-contrib` after merge.
May 2, 2013
9b71e05
Added key events as source for Swing observables.
May 2, 2013
bf90a80
Added filtering for key codes.
May 2, 2013
14890e3
Added observable for all currently pressed keys
May 7, 2013
7210947
Added basic mouse event observables.
May 7, 2013
9cd2927
added a missing license header
May 7, 2013
8425066
moved SwingObservable into the rx.observables package
May 7, 2013
78f45ba
Added observables for component events.
May 7, 2013
2b2c107
a few minor cleanups, renamings, javadoc additions
May 7, 2013
119d8ef
fixing strange compilation problems by specifying the packages directly
May 7, 2013
70da631
change from junit to junit-dep
benjchristensen May 7, 2013
6944499
Merge pull request #266 from benjchristensen/junit-dep
benjchristensen May 7, 2013
333a1ea
Improved key press observable to filter out events of type KEY_TYPED …
May 8, 2013
6e7f779
Fixed javadoc warnings.
May 9, 2013
3fd79a9
Added a helper for computing relative mouse motion.
May 9, 2013
e5823ff
Make unit test more deterministic
benjchristensen May 14, 2013
3dd1a5c
Make rxjava-core typesafe
mattrjacobs Jul 3, 2013
a9a694e
Cleaning up rxjava-swing
mattrjacobs Aug 27, 2013
857ed52
repaired rxjava-swing to work with new scheduler and observable api
Aug 28, 2013
dda3f8f
added variance to Func2, too
Aug 31, 2013
5adbba2
lots of Observer<? super X>
Aug 31, 2013
d27a27b
Add OnSubscribeFunction and refactor to support it
benjchristensen Sep 4, 2013
5c9c6c7
Change OnSubscribeFunc.call to OnSubscribeFunc.onSubscribe
benjchristensen Sep 4, 2013
fa8cf9b
Pulled in all the changes from master that happened in the meantime...
Sep 6, 2013
0d01869
rx.concurrent -> rx.schedulers for Android and Swing modules
benjchristensen Dec 10, 2013
c1a1599
Add Missing License Headers
benjchristensen Dec 10, 2013
ce5a5cd
Update Modules to New Scheduler
benjchristensen Feb 4, 2014
d471390
Add 'Fragment-Host' to rxjava-contrib modules for OSGi
Acardiac Feb 11, 2014
c2b443f
Optimize Swing-RelativeMouseMotion pipeline
Acardiac Feb 12, 2014
c544d95
Move rx.util.functions to rx.functions
benjchristensen Feb 17, 2014
c886709
Make Subscriptions of SwingObservable thread-safe
zsxwing Feb 17, 2014
6b6c0ed
Scheduler.inner() for Language and Contrib Modules
benjchristensen Apr 18, 2014
b770193
inner() -> createInner()
benjchristensen Apr 18, 2014
af7373e
Scheduler.Inner -> Scheduler.Worker
benjchristensen Apr 23, 2014
870f859
Removed use of deprecated API from tests & operators, fixed year in h…
akarnokd May 6, 2014
dd574c3
Negative schedule time now indicates immediate execution.
May 12, 2014
c4c54e5
Remove build provided references and separate JUnit tests
gliptak Jul 9, 2014
da9bc04
Upgrade to Nebula Build
benjchristensen Aug 29, 2014
a0e0439
rxjava 1.0.+
benjchristensen Aug 30, 2014
dbf9d33
Create .travis.yml
benjchristensen Sep 1, 2014
67381e8
Create README.md
benjchristensen Oct 1, 2014
b24e09c
gradle wrapper
benjchristensen Oct 1, 2014
30b01f1
fix unit test
Oct 5, 2014
3aea027
Add focus event support and unit tests
Oct 5, 2014
415478e
Merge pull request #5 from bdmstyle/0.x
benjchristensen Oct 7, 2014
2a97b90
add mousewheel event support and extra unit tests
epb-644 Nov 8, 2014
b3e313f
Bump to 2.2
Dec 13, 2014
e266f13
Add Java plugin
Dec 13, 2014
d04f361
fix link to search.maven.org
samuelgruetter Dec 15, 2014
29b9623
Merge pull request #8 from samuelgruetter/fix-maven-link
benjchristensen Feb 3, 2015
1e41f78
Merge pull request #7 from ReactiveX/bump-to-2.2
benjchristensen Feb 3, 2015
1b63cbb
Merge pull request #6 from eddieburns55/mousewheel-events
benjchristensen Feb 3, 2015
333f683
Added Observable support for Item Events.
mikebaum Jan 24, 2015
96cb94c
Fixed a bug in SwingObservable.fromItemDeselectionEvents(), removed P…
mikebaum Feb 8, 2015
47a5b04
Merge pull request #11 from mikebaum/ItemEventSupport
epb-644 Feb 9, 2015
468afef
added support for property change events
mikebaum Mar 8, 2015
824df09
Merge pull request #15 from mikebaum/addPropertyChangeEventSource
epb-644 Mar 23, 2015
f608942
Removed SwingScheduler's invokeLater when called from EDT
epb-644 Apr 27, 2015
3b807cf
fixing/rewording SwingScheduler's documentation
epb-644 Apr 27, 2015
14cae1f
Merge pull request #17 from eddieburns55/0.x
epb-644 May 1, 2015
d7f90e2
Automatically subscribe/unsubscribe on the EDT
epb-644 May 5, 2015
0e3f33c
removed unnecessary assertEventDispatchThread call in event sources
epb-644 May 6, 2015
79c0ffe
Merge pull request #18 from eddieburns55/edt-subscribe-unsubscribe
epb-644 May 7, 2015
3f9939f
Adding unsubscribeOn EDT calls to all event sources
epb-644 May 7, 2015
91e0c33
Added support for Document events
rosvit May 12, 2015
79633b5
Removing unnecessary assert
rosvit May 12, 2015
c5e445b
Merge pull request #21 from eddieburns55/unsubscribe-in-edt
epb-644 May 13, 2015
44774ed
Added unsubscribeOn EDT for DocumentEventSource
rosvit May 14, 2015
68847d5
Merge pull request #22 from rosvit/document-event
epb-644 May 14, 2015
dd5731e
Adding latest version number to dependency info
epb-644 May 19, 2015
d5bd069
Updating communications section in readme
epb-644 May 19, 2015
507c2d5
Add WindowEventSource
larroy Jun 2, 2015
1edc142
Added fromWindowEventsOf(window) to SwingObservable.java
larroy Jun 5, 2015
b3495be
Skip test on headless mode
larroy Jun 6, 2015
1f94af2
Fix documentation error
larroy Jun 18, 2015
8cae473
Assign the copyright to Netflix
larroy Jun 18, 2015
a75a3d5
Merge pull request #23 from larroy/0.x
epb-644 Jun 18, 2015
5747991
added missing apache license header
Sep 1, 2015
198dbe9
fixed broken link
Sep 2, 2015
195dd5d
added ListSelectionEventSource
Sep 2, 2015
ea4930e
switched from Mockito to RxJava TestSubscriber
Petikoch Sep 3, 2015
8614999
Updates according @eddieburns55 's comments from pull request https:/…
Petikoch Sep 7, 2015
84a0f2d
Merge pull request #25 from Petikoch/listSelectionEventSupport
epb-644 Sep 7, 2015
3d3f5d9
Adding link to examples from @PetiKoch
epb-644 Sep 17, 2015
693c99d
Copied over travis configs and generated new encrypted environment va…
abersnaze Sep 28, 2015
db6f4da
added support for ChangeEvent's via common ChangeListener methods
Petikoch Oct 23, 2015
c30edde
Merge pull request #31 from Petikoch/supportChangeListener
mikebaum Oct 24, 2015
98d7dcb
Fixed broken KeyEventSourceTest.
mikebaum Oct 31, 2015
080c6ee
Merge pull request #54 from mikebaum/fixBrokenKeyEventSourceTest
mikebaum Nov 7, 2015
07f71cc
Added support for Container Event Sources.
mikebaum Oct 31, 2015
59b6f70
Ensure all MouseEventSource(s) unsubscribe on the EDT. Fixes #57.
cranst0n Jan 13, 2016
a7be147
Merge pull request #58 from cranst0n/0.x
mikebaum Jan 14, 2016
c175908
Merge pull request #56 from mikebaum/addContainerListenerSupport
mikebaum Feb 1, 2016
3d90fe8
Upgrade dependencies and gradle runner (#59)
akarnokd Aug 9, 2016
b36ecb5
Added support for HierarchyEvent / HierarchyListener
mikebaum Oct 31, 2015
f5ef38c
Added support for Hierarchy Bounds Listener event source.
mikebaum Oct 31, 2015
281ddb9
Merge pull request #55 from mikebaum/addHierarchyBoundsListenerSupport
mikebaum Aug 27, 2016
19b4c05
Initial migration to RxJava 2.0
UeliKurmann Nov 13, 2016
1363dab
Initial migration to RxJava 2.0
UeliKurmann Nov 13, 2016
1fc6047
Setting Java source/target compatiblity to Java 1.8
UeliKurmann Nov 16, 2016
59aaf81
Cleanup Scheduler.
UeliKurmann Nov 16, 2016
cf7806e
change travis jdk to jdk8
UeliKurmann Nov 16, 2016
fc49866
Merge remote-tracking branch 'remotes/RxSwing/rxjava2'
UeliKurmann Nov 16, 2016
8012ae8
Change version in README
UeliKurmann Nov 16, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 67 additions & 8 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,71 @@
ompiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.war
*.ear
*.rar
*.tar
*.zip

# Logs and databases #
######################
*.log

# OS generated files #
######################
.DS_Store*
ehthumbs.db
Icon?
Thumbs.db

# Editor Files #
################
*~
*.swp

# Gradle Files #
################
.gradle
.gradletasknamecache
.m2

# Build output directies
target/
build/

# IntelliJ specific files/directories
out
.idea
*.ipr
*.iws
*.iml
atlassian-ide-plugin.xml

# Eclipse specific files/directories
.classpath
.project
.settings
.metadata
bin/

# NetBeans specific files/directories
.nbattrs
/.nb-gradle/profiles/private/
.nb-gradle-properties

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
# Scala build
*.cache
/.nb-gradle/private/
21 changes: 21 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
language: java
jdk:
jdk:
- oraclejdk8
# force upgrade Java8 as per https://github.com/travis-ci/travis-ci/issues/4042 (fixes compilation issue)
addons:
apt:
packages:
- oracle-java8-installer
sudo: false
script: gradle/buildViaTravis.sh
cache:
directories:
- "$HOME/.m2"
- "$HOME/.gradle"
env:
global:
- secure: i92CdoDDqeIiCGbhVc4AM4nQ4RORRZy1s9dEKMl6yQtXeD6Y5kZXg+SzRJSlAM9TNM7O24VmFHJn0o34jD8AJx4irk6JuFJQ23yGipGIsVUUetqpckF9hcsJl5/9D+0B6DpxQR4wiy2W4mSZeYSryXKWLbx4YC84ICEmiMIF0tc=
- secure: Q4TcIw8otYdvhPUgVcKMsoUm4ab277+bA9CMvcQSopSl9PRZgQBXG8GTI41LrPnlWHoocAqA8lhj4dS1ACHb7ulPBNVGOTbJwgSAP62WZ7Ka7T07idef2i8/s/HOKAYGJO2tC7OCX5Ynfd9seVm4zXbyLJkR5FqGhFDPhF5zDxc=
- secure: fx61a7A8lZNqGAArBcigjPtsxfj7wJOT2Tq+vbfdZouiPBZ68yUHKMmebssWDun62hrwJoFO3rSM6Qeg/t592AsRn/y+MF1l/IWG5VXkggaC0mYAYVH3cBjbVnWeAmPILva9YHeCsLHPyq8v8Z7bIhRz2f2tWwAPbUeezQUtxk4=
- secure: bIv6R9czUONhAOIpw/ustrmea5AMnLaUqLN93ASXzX1jqH8enx0uNj7HI5rRnmRSliKlh3klWofiMnuQnQQeREGlOYHJnkXx2Dy5RAQ2ps7gZDB/LCeBoyi6LajS5gEvNOvK7p2FuPtXZSGGDE9iEyLP/zswWeNJkjDY/Gi3WNo=
31 changes: 31 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Contributing to RxJava

If you would like to contribute code you can do so through GitHub by forking the repository and sending a pull request (on a branch other than `master` or `gh-pages`).

When submitting code, please make every effort to follow existing conventions and style in order to keep the code as readable as possible.

## License

By contributing your code, you agree to license your contribution under the terms of the APLv2: https://github.com/ReactiveX/RxJava/blob/master/LICENSE

All files are released with the Apache 2.0 license.

If you are adding a new file it should have a header like this:

```
/**
* Copyright 2014 Netflix, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
```
5 changes: 3 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
Expand Down Expand Up @@ -178,15 +179,15 @@
APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright {yyyy} {name of copyright owner}
Copyright 2012 Netflix, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
67 changes: 67 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# RxSwing2: Swing bindings for RxJava

Learn more about RxJava on the <a href="https://github.com/ReactiveX/RxJava/wiki">Wiki Home</a> and the <a href="http://techblog.netflix.com/2013/02/rxjava-netflix-api.html">Netflix TechBlog post</a> where RxJava was introduced.

## Master Build Status

<a href='https://travis-ci.org/ReactiveX/RxSwing/builds'><img src='https://travis-ci.org/ReactiveX/RxSwing.svg?branch=0.x'></a>

## Communication
RxSwing:
- [GitHub Issues](https://github.com/ReactiveX/RxSwing/issues)

General RxJava:
- Google Group: [RxJava](http://groups.google.com/d/forum/rxjava)
- Twitter: [@RxJava](http://twitter.com/RxJava)

## Binaries

Binaries and dependency information for Maven, Ivy, Gradle and others can be found at [http://search.maven.org](http://search.maven.org/#search%7Cga%7C1%7C%22rxswing%22%20AND%20g%3A%22io.reactivex%22).

Example for Maven:

```xml
<dependency>
<groupId>io.reactivex.rxjava2</groupId>
<artifactId>rxswing</artifactId>
<version>xxx</version>
</dependency>
```
and for Ivy:

```xml
<dependency org="io.reactivex" name="rxswing" rev="0.24.0" />
```

## Build

To build:

```
$ git clone [email protected]:ReactiveX/RxSwing.git
$ cd RxSwing/
$ ./gradlew build
```

## Bugs and Feedback

For bugs, questions and discussions please use the [Github Issues](https://github.com/ReactiveX/RxSwing/issues).

## Learning Resources:

Architecture tutorial and examples from @Petikoch: https://github.com/Petikoch/Java_MVVM_with_Swing_and_RxJava_Examples


## LICENSE

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

<http://www.apache.org/licenses/LICENSE-2.0>

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
27 changes: 27 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
group = 'io.reactivex.rxjava2'

buildscript {
repositories { jcenter() }
dependencies { classpath 'com.netflix.nebula:gradle-rxjava-project-plugin:4.0.0' }
}

apply plugin: 'nebula.rxjava-project'
apply plugin: 'java'
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8

dependencies {
compile 'io.reactivex.rxjava2:rxjava:2.0.0'
testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:1.10.19'
}

// support for snapshot/final releases with the various branches RxJava uses
nebulaRelease {
addReleaseBranchPattern(/\d+\.\d+\.\d+/)
addReleaseBranchPattern('HEAD')
}

if (project.hasProperty('release.useLastTag')) {
tasks.prepare.enabled = false
}
1 change: 1 addition & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
version=2.0.0-RC1-SNAPSHOT
16 changes: 16 additions & 0 deletions gradle/buildViaTravis.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#!/bin/bash
# This script will build the project.

if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
echo -e "Build Pull Request #$TRAVIS_PULL_REQUEST => Branch [$TRAVIS_BRANCH]"
./gradlew -Prelease.useLastTag=true build
elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" == "" ]; then
echo -e 'Build Branch with Snapshot => Branch ['$TRAVIS_BRANCH']'
./gradlew -Prelease.travisci=true -PbintrayUser="${bintrayUser}" -PbintrayKey="${bintrayKey}" -PsonatypeUsername="${sonatypeUsername}" -PsonatypePassword="${sonatypePassword}" build snapshot --stacktrace
elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" != "" ]; then
echo -e 'Build Branch for Release => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG']'
./gradlew -Prelease.travisci=true -Prelease.useLastTag=true -PbintrayUser="${bintrayUser}" -PbintrayKey="${bintrayKey}" -PsonatypeUsername="${sonatypeUsername}" -PsonatypePassword="${sonatypePassword}" final --stacktrace
else
echo -e 'WARN: Should not be here => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG'] Pull Request ['$TRAVIS_PULL_REQUEST']'
./gradlew -Prelease.useLastTag=true build
fi
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
6 changes: 6 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#Tue Aug 09 15:44:13 CEST 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-bin.zip
Loading