[
https://issues.apache.org/jira/browse/APEXMALHAR-2046?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15227828#comment-15227828
]
ASF GitHub Bot commented on APEXMALHAR-2046:
--------------------------------------------
Github user chandnisingh commented on a diff in the pull request:
https://github.com/apache/incubator-apex-malhar/pull/232#discussion_r58657541
--- Diff:
library/src/main/java/org/apache/apex/malhar/lib/spillable/SpillableFactory.java
---
@@ -0,0 +1,171 @@
+/*
+ * Copyright 2016 Apache Software Foundation.
+ *
+ * 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.
+ */
+
+package org.apache.apex.malhar.lib.spillable;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Queue;
+
+import com.google.common.collect.ListMultimap;
+
+import com.datatorrent.api.Component;
+import com.datatorrent.api.Context.OperatorContext;
+
+/**
+ * This is a factory for spillable data structures. This should be used as
+ * a component inside {@link com.datatorrent.api.Operator}s.
+ */
+public interface SpillableFactory extends Component<OperatorContext>
+{
+ /**
+ * This signals that the parent {@link com.datatorrent.api.Operator}'s
+ * {@link com.datatorrent.api.Operator#beginWindow(long)} method has
been called.
+ * @param windowId The next windowId of the parent operator.
+ */
+ public void beginWindow(long windowId);
+
+ /**
+ * This signals that the parent {@link com.datatorrent.api.Operator}'s
+ * {@link com.datatorrent.api.Operator#endWindow()} method has been
called.
+ */
+ public void endWindow();
+
+ /**
+ * This is a factory method for creating a {@link SpillableArrayList}.
+ * @param <T> The type of data stored in the {@link SpillableArrayList}.
+ * @param bucket The bucket that this {@link SpillableArrayList} will be
spilled too.
+ * @param serde The Serializer/Deserializer to use for data stored in
the {@link SpillableArrayList}.
+ * @return A {@link SpillableArrayList}.
+ */
+ public <T> SpillableArrayList<T> newIndexedList(long bucket, Serde<T,
byte[]> serde);
--- End diff --
If this doesn't need a prefix, will it create a default identifier?
> Create SpillableFactory Interface
> ---------------------------------
>
> Key: APEXMALHAR-2046
> URL: https://issues.apache.org/jira/browse/APEXMALHAR-2046
> Project: Apache Apex Malhar
> Issue Type: Sub-task
> Reporter: Timothy Farkas
> Assignee: Timothy Farkas
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)