[ https://issues.apache.org/jira/browse/FLINK-1984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15424444#comment-15424444 ]
ASF GitHub Bot commented on FLINK-1984: --------------------------------------- Github user tillrohrmann commented on a diff in the pull request: https://github.com/apache/flink/pull/2315#discussion_r75114739 --- Diff: flink-mesos/src/main/java/org/apache/flink/mesos/runtime/clusterframework/store/MesosWorkerStore.java --- @@ -0,0 +1,152 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.flink.mesos.runtime.clusterframework.store; + +import org.apache.mesos.Protos; +import scala.Option; + +import java.io.Serializable; +import java.text.DecimalFormat; +import java.util.List; +import java.util.Objects; + +import static java.util.Objects.requireNonNull; + +/** + * A store of Mesos workers and associated framework information. + * + * Generates a framework ID as necessary. + */ +public interface MesosWorkerStore { + + static final DecimalFormat TASKID_FORMAT = new DecimalFormat("taskmanager-00000"); + + void start() throws Exception; + + void stop() throws Exception; + + Option<Protos.FrameworkID> getFrameworkID() throws Exception; + + void setFrameworkID(Option<Protos.FrameworkID> frameworkID) throws Exception; + + List<Worker> recoverWorkers() throws Exception; + + Protos.TaskID newTaskID() throws Exception; + + void putWorker(Worker worker) throws Exception; + + void removeWorker(Protos.TaskID taskID) throws Exception; + + void cleanup() throws Exception; + + /** + * A stored task. + * + * The assigned slaveid/hostname is valid in Launched and Released states. The hostname is needed + * by Fenzo for optimization purposes. + */ + class Worker implements Serializable { + private Protos.TaskID taskID; + + private Option<Protos.SlaveID> slaveID; + + private Option<String> hostname; + + private TaskState state; + + public Worker(Protos.TaskID taskID, Option<Protos.SlaveID> slaveID, Option<String> hostname, TaskState state) { + requireNonNull(taskID, "taskID"); + requireNonNull(slaveID, "slaveID"); + requireNonNull(hostname, "hostname"); + requireNonNull(state, "state"); + + this.taskID = taskID; + this.slaveID = slaveID; + this.hostname = hostname; + this.state = state; + } + + public Protos.TaskID taskID() { + return taskID; + } + + public Option<Protos.SlaveID> slaveID() { + return slaveID; + } + + public Option<String> hostname() { + return hostname; + } + + public TaskState state() { + return state; + } --- End diff -- Getters in Java classes should follow the Java getter style and no the Scala style. > Integrate Flink with Apache Mesos > --------------------------------- > > Key: FLINK-1984 > URL: https://issues.apache.org/jira/browse/FLINK-1984 > Project: Flink > Issue Type: New Feature > Components: Cluster Management > Reporter: Robert Metzger > Assignee: Eron Wright > Priority: Minor > Attachments: 251.patch > > > There are some users asking for an integration of Flink into Mesos. > -There also is a pending pull request for adding Mesos support for Flink-: > https://github.com/apache/flink/pull/251 > Update (May '16): a new effort is now underway, building on the recent > ResourceManager work. > Design document: ([google > doc|https://docs.google.com/document/d/1WItafBmGbjlaBbP8Of5PAFOH9GUJQxf5S4hjEuPchuU/edit?usp=sharing]) -- This message was sent by Atlassian JIRA (v6.3.4#6332)