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