2.17.2: 2011-06-17

net.sf.basedb.plugins.batchimport
Interface IdMethod

All Known Implementing Classes:
FallbackIdMethod, InternalIdMethod, MultiPropertyIdMethod, PropertyIdMethod

public interface IdMethod

Represents an 'identification method', eg. a way to find an item among the items that already exists in the database. This can, for example, be done by checking the name or the internal id of the item.

Version:
2.8
Author:
nicklas
Last modified
$Date: 2008-09-11 22:06:36 +0200 (Thu, 11 Sep 2008) $

Method Summary
<I extends BasicItem>
List<I>
find(DbControl dc, ItemQuery<I> query, String identifier)
          Try to find items with this query method.
 String getColumnMappingParameterName()
           
 String getMethod()
          The name of this method, which should be unique among the methods that can be used at a given time.
 String getTitle()
          The display title of the method.
 boolean isTrulyUnique()
          If the identification method is truly unique or not.
<I extends BasicItem>
ItemQuery<I>
prepareQuery(DbControl dc, ItemQuery<I> query)
          Initialise a query to be used by this identification method.
 

Method Detail

getMethod

String getMethod()
The name of this method, which should be unique among the methods that can be used at a given time.

Returns:
The method name

getTitle

String getTitle()
The display title of the method.


isTrulyUnique

boolean isTrulyUnique()
If the identification method is truly unique or not. If this method returns true, the find(DbControl, ItemQuery, String) method will never ever return a list with more than one item.


getColumnMappingParameterName

String getColumnMappingParameterName()

prepareQuery

<I extends BasicItem> ItemQuery<I> prepareQuery(DbControl dc,
                                                ItemQuery<I> query)
Initialise a query to be used by this identification method. The query should be a fresh query without any previous restrictions or other modifications.

Parameters:
query - The query to prepare
Returns:
The query that is used for item lookup

find

<I extends BasicItem> List<I> find(DbControl dc,
                                   ItemQuery<I> query,
                                   String identifier)
Try to find items with this query method.

Parameters:
query - The query to use, which should have been prepared using prepareQuery(DbControl, ItemQuery)
identifier - The identifier of the item
Returns:
A list with the found items, if isTrulyUnique() return true the list is guaranteed to have at most one item

2.17.2: 2011-06-17