[GitHub] incubator-gearpump pull request #140: [GEARPUMP-23] Add SessionWindows

2017-02-07 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/incubator-gearpump/pull/140


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] incubator-gearpump pull request #140: [GEARPUMP-23] Add SessionWindows

2017-02-07 Thread manuzhang
Github user manuzhang commented on a diff in the pull request:

https://github.com/apache/incubator-gearpump/pull/140#discussion_r99816656
  
--- Diff: 
streaming/src/main/scala/org/apache/gearpump/streaming/dsl/window/api/WindowFunction.scala
 ---
@@ -33,11 +33,19 @@ object WindowFunction {
 }
 
 trait WindowFunction[T] {
+
   def apply(context: WindowFunction.Context[T]): Array[Window]
+
+  def isNonMerging: Boolean
+}
+
+abstract class NonMergingWindowFunction[T] extends WindowFunction[T] {
+
+  override def isNonMerging: Boolean = true
--- End diff --

They are free to **not** extend `NonMergingWindowFunction`


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] incubator-gearpump pull request #140: [GEARPUMP-23] Add SessionWindows

2017-02-07 Thread huafengw
Github user huafengw commented on a diff in the pull request:

https://github.com/apache/incubator-gearpump/pull/140#discussion_r99815386
  
--- Diff: 
streaming/src/main/scala/org/apache/gearpump/streaming/dsl/window/api/WindowFunction.scala
 ---
@@ -33,11 +33,19 @@ object WindowFunction {
 }
 
 trait WindowFunction[T] {
+
   def apply(context: WindowFunction.Context[T]): Array[Window]
+
+  def isNonMerging: Boolean
+}
+
+abstract class NonMergingWindowFunction[T] extends WindowFunction[T] {
+
+  override def isNonMerging: Boolean = true
--- End diff --

But if user's WindowFunction is not able to be merged, extending 
`NonMergingWindowFunction` would suffice, otherwise extending `WindowFunction`


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] incubator-gearpump pull request #140: [GEARPUMP-23] Add SessionWindows

2017-02-07 Thread manuzhang
Github user manuzhang commented on a diff in the pull request:

https://github.com/apache/incubator-gearpump/pull/140#discussion_r99814058
  
--- Diff: 
streaming/src/main/scala/org/apache/gearpump/streaming/dsl/window/api/WindowFunction.scala
 ---
@@ -33,11 +33,19 @@ object WindowFunction {
 }
 
 trait WindowFunction[T] {
+
   def apply(context: WindowFunction.Context[T]): Array[Window]
+
+  def isNonMerging: Boolean
+}
+
+abstract class NonMergingWindowFunction[T] extends WindowFunction[T] {
+
+  override def isNonMerging: Boolean = true
--- End diff --

users are free to extend `WindowFunction`, which can not be matched 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] incubator-gearpump pull request #140: [GEARPUMP-23] Add SessionWindows

2017-02-07 Thread manuzhang
GitHub user manuzhang opened a pull request:

https://github.com/apache/incubator-gearpump/pull/140

[GEARPUMP-23] Add SessionWindows

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

 - [ ] Make sure the commit message is formatted like:
   `[GEARPUMP-] Meaningful description of pull request` 
 - [ ] Make sure tests pass via `sbt clean test`.
 - [ ] Make sure old documentation affected by the pull request has been 
updated and new documentation added for new functionality. 



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/manuzhang/incubator-gearpump sessions

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/incubator-gearpump/pull/140.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #140


commit 36997ab86c820479ad7b9ed1f2e4f8c42e10c2c7
Author: manuzhang 
Date:   2017-02-07T11:54:05Z

[GEARPUMP-23] Add SessionWindows




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] incubator-gearpump pull request #140: [GEARPUMP-23] Add SessionWindows

2017-02-07 Thread huafengw
Github user huafengw commented on a diff in the pull request:

https://github.com/apache/incubator-gearpump/pull/140#discussion_r99813902
  
--- Diff: 
streaming/src/main/scala/org/apache/gearpump/streaming/dsl/window/api/WindowFunction.scala
 ---
@@ -33,11 +33,19 @@ object WindowFunction {
 }
 
 trait WindowFunction[T] {
+
   def apply(context: WindowFunction.Context[T]): Array[Window]
+
+  def isNonMerging: Boolean
+}
+
+abstract class NonMergingWindowFunction[T] extends WindowFunction[T] {
+
+  override def isNonMerging: Boolean = true
--- End diff --

why not use `case match`?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---