You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ma...@apache.org on 2015/01/26 15:16:55 UTC
[39/47] incubator-nifi git commit: NIFI-6: Rebase from develop to
include renaming of directory structure
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/716e03b5/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
----------------------------------------------------------------------
diff --cc nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
index 0000000,6b8ede0..fa48cb3
mode 000000,100644..100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
@@@ -1,0 -1,56 +1,77 @@@
+ /*
+ * 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.nifi.controller;
+
+ import java.util.concurrent.TimeUnit;
+
+ import org.apache.nifi.reporting.ReportingContext;
+ import org.apache.nifi.reporting.ReportingTask;
+ import org.apache.nifi.scheduling.SchedulingStrategy;
+
+ public interface ReportingTaskNode extends ConfiguredComponent {
+
+ Availability getAvailability();
+
+ void setAvailability(Availability availability);
+
+ void setSchedulingStrategy(SchedulingStrategy schedulingStrategy);
+
+ SchedulingStrategy getSchedulingStrategy();
+
+ /**
+ * @return a string representation of the time between each scheduling
+ * period
+ */
+ String getSchedulingPeriod();
+
+ long getSchedulingPeriod(TimeUnit timeUnit);
+
+ /**
+ * Updates how often the ReportingTask should be triggered to run
+ * @param schedulingPeriod
+ */
+ void setScheduldingPeriod(String schedulingPeriod);
+
+ ReportingTask getReportingTask();
+
+ ReportingContext getReportingContext();
+
+ ConfigurationContext getConfigurationContext();
+
+ boolean isRunning();
++
++ /**
++ * Indicates the {@link ScheduledState} of this <code>ReportingTask</code>. A
++ * value of stopped does NOT indicate that the <code>ReportingTask</code> has
++ * no active threads, only that it is not currently scheduled to be given
++ * any more threads. To determine whether or not the
++ * <code>ReportingTask</code> has any active threads, see
++ * {@link ProcessScheduler#getActiveThreadCount(ReportingTask)}.
++ *
++ * @return
++ */
++ ScheduledState getScheduledState();
++
++ void setScheduledState(ScheduledState state);
++
++ void verifyCanStart();
++ void verifyCanStop();
++ void verifyCanDisable();
++ void verifyCanEnable();
++ void verifyCanDelete();
++ void verifyCanUpdate();
+ }
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/716e03b5/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
----------------------------------------------------------------------
diff --cc nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
index 0000000,6f9c237..66bad39
mode 000000,100644..100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
@@@ -1,0 -1,40 +1,47 @@@
+ /*
+ * 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.nifi.controller.service;
+
+ import org.apache.nifi.controller.Availability;
+ import org.apache.nifi.controller.ConfiguredComponent;
+ import org.apache.nifi.controller.ControllerService;
+
+ public interface ControllerServiceNode extends ConfiguredComponent {
+
- ControllerService getControllerService();
++ ControllerService getProxiedControllerService();
++
++ ControllerService getControllerServiceImplementation();
+
+ Availability getAvailability();
+
+ void setAvailability(Availability availability);
+
+ boolean isDisabled();
+
+ void setDisabled(boolean disabled);
+
+ ControllerServiceReference getReferences();
+
+ void addReference(ConfiguredComponent referringComponent);
+
+ void removeReference(ConfiguredComponent referringComponent);
++
++ void verifyCanEnable();
++ void verifyCanDisable();
++ void verifyCanDelete();
++ void verifyCanUpdate();
+ }
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/716e03b5/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
----------------------------------------------------------------------
diff --cc nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
index 0000000,35a255d..03ed779
mode 000000,100644..100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
@@@ -1,0 -1,47 +1,56 @@@
+ /*
+ * 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.nifi.controller.service;
+
-import java.util.Map;
-
++import org.apache.nifi.annotation.lifecycle.OnAdded;
+ import org.apache.nifi.controller.ControllerServiceLookup;
+
+ /**
+ *
+ */
+ public interface ControllerServiceProvider extends ControllerServiceLookup {
+
+ /**
- * Gets the controller service for the specified identifier. Returns null if
- * the identifier does not match a known service.
++ * Creates a new Controller Service of the given type and assigns it the given id. If <code>firstTimeadded</code>
++ * is true, calls any methods that are annotated with {@link OnAdded}
+ *
+ * @param type
+ * @param id
- * @param properties
++ * @param firstTimeAdded
+ * @return
+ */
- ControllerServiceNode createControllerService(String type, String id, Map<String, String> properties);
++ ControllerServiceNode createControllerService(String type, String id, boolean firstTimeAdded);
+
+ /**
+ * Gets the controller service node for the specified identifier. Returns
+ * <code>null</code> if the identifier does not match a known service
+ *
+ * @param id
+ * @return
+ */
+ ControllerServiceNode getControllerServiceNode(String id);
++
++ /**
++ * Removes the given Controller Service from the flow. This will call all appropriate methods
++ * that have the @OnRemoved annotation.
++ *
++ * @param serviceNode the controller service to remove
++ *
++ * @throws IllegalStateException if the controller service is not disabled or is not a part of this flow
++ */
++ void removeControllerService(ControllerServiceNode serviceNode);
+ }