You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2014/12/15 07:16:39 UTC
svn commit: r1645573 - in
/manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces:
INotificationConnection.java INotificationConnectionManager.java
Author: kwright
Date: Mon Dec 15 06:16:39 2014
New Revision: 1645573
URL: http://svn.apache.org/r1645573
Log:
Add interfaces describing notification connections and management.
Added:
manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java (with props)
manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java (with props)
Added: manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java
URL: http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java?rev=1645573&view=auto
==============================================================================
--- manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java (added)
+++ manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java Mon Dec 15 06:16:39 2014
@@ -0,0 +1,86 @@
+/* $Id$ */
+
+/**
+* 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.manifoldcf.crawler.interfaces;
+
+import org.apache.manifoldcf.core.interfaces.*;
+import java.util.*;
+
+/** An instance of this interface represents a paper object that describes a notification connection.
+* This is the paper object meant for editing and manipulation.
+*/
+public interface INotificationConnection
+{
+ public static final String _rcsid = "@(#)$Id$";
+
+ /** Set 'isnew' condition.
+ *@param isnew true if this is a new instance.
+ */
+ public void setIsNew(boolean isnew);
+
+ /** Get 'isnew' condition.
+ *@return true if this is a new connection, false otherwise.
+ */
+ public boolean getIsNew();
+
+ /** Set name.
+ *@param name is the name.
+ */
+ public void setName(String name);
+
+ /** Get name.
+ *@return the name
+ */
+ public String getName();
+
+ /** Set description.
+ *@param description is the description.
+ */
+ public void setDescription(String description);
+
+ /** Get description.
+ *@return the description
+ */
+ public String getDescription();
+
+ /** Set the class name.
+ *@param className is the class name.
+ */
+ public void setClassName(String className);
+
+ /** Get the class name.
+ *@return the class name
+ */
+ public String getClassName();
+
+ /** Get the configuration parameters.
+ *@return the map. Can be modified.
+ */
+ public ConfigParams getConfigParams();
+
+ /** Set the maximum size of the connection pool.
+ *@param maxCount is the maximum connection count per JVM.
+ */
+ public void setMaxConnections(int maxCount);
+
+ /** Get the maximum size of the connection pool.
+ *@return the maximum size.
+ */
+ public int getMaxConnections();
+
+}
Propchange: manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnection.java
------------------------------------------------------------------------------
svn:keywords = Id
Added: manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java
URL: http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java?rev=1645573&view=auto
==============================================================================
--- manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java (added)
+++ manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java Mon Dec 15 06:16:39 2014
@@ -0,0 +1,115 @@
+/* $Id$ */
+
+/**
+* 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.manifoldcf.crawler.interfaces;
+
+import org.apache.manifoldcf.core.interfaces.*;
+
+/** Manager classes of this kind use the database to contain a human description of a notification connection.
+*/
+public interface INotificationConnectionManager
+{
+ public static final String _rcsid = "@(#)$Id$";
+
+ /** Install the manager.
+ */
+ public void install()
+ throws ManifoldCFException;
+
+ /** Uninstall the manager.
+ */
+ public void deinstall()
+ throws ManifoldCFException;
+
+ /** Export configuration */
+ public void exportConfiguration(java.io.OutputStream os)
+ throws java.io.IOException, ManifoldCFException;
+
+ /** Import configuration */
+ public void importConfiguration(java.io.InputStream is)
+ throws java.io.IOException, ManifoldCFException;
+
+ /** Obtain a list of the notification connections, ordered by name.
+ *@return an array of connection objects.
+ */
+ public INotificationConnection[] getAllConnections()
+ throws ManifoldCFException;
+
+ /** Load a notification connection by name.
+ *@param name is the name of the notification connection.
+ *@return the loaded connection object, or null if not found.
+ */
+ public INotificationConnection load(String name)
+ throws ManifoldCFException;
+
+ /** Load a set of notification connections.
+ *@param names are the names of the notification connections.
+ *@return the descriptors of the notification connections, with null
+ * values for those not found.
+ */
+ public INotificationConnection[] loadMultiple(String[] names)
+ throws ManifoldCFException;
+
+ /** Create a new notification connection object.
+ *@return the new object.
+ */
+ public INotificationConnection create()
+ throws ManifoldCFException;
+
+ /** Save a notification connection object.
+ *@param object is the object to save.
+ *@return true if the object is created, false otherwise.
+ */
+ public boolean save(INotificationConnection object)
+ throws ManifoldCFException;
+
+ /** Delete a notification connection.
+ *@param name is the name of the connection to delete. If the
+ * name does not exist, no error is returned.
+ */
+ public void delete(String name)
+ throws ManifoldCFException;
+
+ /** Get a list of notification connections that share the same connector.
+ *@param className is the class name of the connector.
+ *@return the notification connections that use that connector.
+ */
+ public String[] findConnectionsForConnector(String className)
+ throws ManifoldCFException;
+
+ /** Check if underlying connector exists.
+ *@param name is the name of the connection to check.
+ *@return true if the underlying connector is registered.
+ */
+ public boolean checkConnectorExists(String name)
+ throws ManifoldCFException;
+
+ // Schema related
+
+ /** Return the primary table name.
+ *@return the table name.
+ */
+ public String getTableName();
+
+ /** Return the name column.
+ *@return the name column.
+ */
+ public String getConnectionNameColumn();
+
+
+}
Propchange: manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: manifoldcf/branches/CONNECTORS-1119/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/interfaces/INotificationConnectionManager.java
------------------------------------------------------------------------------
svn:keywords = Id