com.trendmicro.grid.acl.ds
Interface PackageProvider

All Superinterfaces:
Repository

public interface PackageProvider
extends Repository

Defines a readonly repository that provides information on packages.

Version:
1.0
Author:
juergen_kellerer, 2010-05-06

Method Summary
 SharedNamedFileIdentifierListPage getFilesContainedInPackageById(com.trendmicro.grid.acl.l0.datatypes.FileIdentifier packageFile, int pageNumber)
          Returns the ids of all files contained inside the given package.
 SharedNamedFileIdentifierListPage getFilesContainedInPackageByName(String packageName, int pageNumber)
          Returns the ids of all files contained inside the given package.
 com.trendmicro.grid.acl.l0.datatypes.NameListPage getMatchingPackageNames(TagQueryExpression expression, com.trendmicro.grid.acl.l0.datatypes.Range range, int pageNumber)
          Returns all known packages that are matched by the given tag expression.
 Collection<SharedPackageDetails> getPackageDetailsListById(Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> files)
          Returns the package details on the given package file ids.
 Collection<SharedPackageDetails> getPackageDetailsListByName(Collection<String> packageNames)
          Returns the package details on the given package names.
 Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> getPackageFileIdentifiersByName(Collection<String> packageNames)
          Returns the file ID of the file that is associated with the given package.
 Collection<SharedPackageInformation> getPackageInformationListById(Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> files)
          Returns the package information list of the given packages.
 Collection<SharedPackageInformation> getPackageInformationListByName(Collection<String> packageNames)
          Returns the package information list of the given packages.
 com.trendmicro.grid.acl.l0.datatypes.NameListPage getPackageNamesInFamily(String packageFamilyName, int pageNumber)
          Returns all package names that are members of the given package family.
 com.trendmicro.grid.acl.l0.datatypes.NameListPage getPackagesContainedInPackageById(com.trendmicro.grid.acl.l0.datatypes.FileIdentifier packageFile, int pageNumber)
          Returns the names of all packages contained inside the given package.
 com.trendmicro.grid.acl.l0.datatypes.NameListPage getPackagesContainedInPackageByName(String packageName, int pageNumber)
          Returns the names of all packages contained inside the given package.
 com.trendmicro.grid.acl.l0.datatypes.NameListPage getReferencingPackageNames(String packageName, int pageNumber)
          Returns the names of all packages that reference the given package directly.
 com.trendmicro.grid.acl.l0.datatypes.NameListPage getReferencingPackageNamesById(com.trendmicro.grid.acl.l0.datatypes.FileIdentifier file, int pageNumber)
          Returns the names of all packages that reference the given file directly.
 Collection<Boolean> isPackagesTaggedWithById(Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> files, String[] tags)
          Returns true if the given packages are tagged with the specified tags.
 Collection<Boolean> isPackagesTaggedWithByName(Collection<String> packageNames, String[] tags)
          Returns true if the given packages are tagged with the specified tags.
 

Method Detail

getPackageNamesInFamily

com.trendmicro.grid.acl.l0.datatypes.NameListPage getPackageNamesInFamily(String packageFamilyName,
                                                                          int pageNumber)
Returns all package names that are members of the given package family.

Parameters:
packageFamilyName - the name of the package family to query package names from.
pageNumber - The number of the list page to return, starting from 0 for the first chunk.
Returns:
A page of package names or 'null' if no page exists under the given number.

isPackagesTaggedWithById

Collection<Boolean> isPackagesTaggedWithById(Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> files,
                                             String[] tags)
Returns true if the given packages are tagged with the specified tags.

Parameters:
files - The package files to verify.
tags - The tags to check against.
Returns:
True if the tags apply to the package, false if not, 'null' if the package is unknown or the file id references a ordinary file not a package.

isPackagesTaggedWithByName

Collection<Boolean> isPackagesTaggedWithByName(Collection<String> packageNames,
                                               String[] tags)
Returns true if the given packages are tagged with the specified tags.

Parameters:
packageNames - The package to verify.
tags - The tags to check against.
Returns:
True if the tags apply to the package, false if not, 'null' if the package is unknown.

getMatchingPackageNames

com.trendmicro.grid.acl.l0.datatypes.NameListPage getMatchingPackageNames(TagQueryExpression expression,
                                                                          com.trendmicro.grid.acl.l0.datatypes.Range range,
                                                                          int pageNumber)
Returns all known packages that are matched by the given tag expression.

Parameters:
expression - An expression following the tag query grammar used to identify files.
range - A range limiting the output or 'null' if no range is specified.
pageNumber - The number of the list page to return, starting from 0 for the first chunk.
Returns:
A page of package names for the packages, matching the given expression or 'null' if no page exists under the given number.

getReferencingPackageNamesById

com.trendmicro.grid.acl.l0.datatypes.NameListPage getReferencingPackageNamesById(com.trendmicro.grid.acl.l0.datatypes.FileIdentifier file,
                                                                                 int pageNumber)
Returns the names of all packages that reference the given file directly.

A package references a file if the file is a direct child of the package.

Parameters:
file - The file to return the referencing package names for.
pageNumber - The number of the list page to return, starting from 0 for the first page.
Returns:
A page of package names or 'null' if no page exists under the given number.

getReferencingPackageNames

com.trendmicro.grid.acl.l0.datatypes.NameListPage getReferencingPackageNames(String packageName,
                                                                             int pageNumber)
Returns the names of all packages that reference the given package directly.

Parameters:
packageName - The package name to return the names of referencing packages.
pageNumber - The number of the list page to return, starting from 0 for the first page.
Returns:
A page of package names or 'null' if no page exists under the given name or pageNumber.

getFilesContainedInPackageById

SharedNamedFileIdentifierListPage getFilesContainedInPackageById(com.trendmicro.grid.acl.l0.datatypes.FileIdentifier packageFile,
                                                                 int pageNumber)
Returns the ids of all files contained inside the given package.

Parameters:
packageFile - The id of the package file to look for its children.
pageNumber - The number of the list page to return, starting from 0 for the first page.
Returns:
the ids of all files contained inside the given package.

getFilesContainedInPackageByName

SharedNamedFileIdentifierListPage getFilesContainedInPackageByName(String packageName,
                                                                   int pageNumber)
Returns the ids of all files contained inside the given package.

Parameters:
packageName - The name of the package to look for its children.
pageNumber - The number of the list page to return, starting from 0 for the first page.
Returns:
the ids of all files contained inside the given package.

getPackagesContainedInPackageById

com.trendmicro.grid.acl.l0.datatypes.NameListPage getPackagesContainedInPackageById(com.trendmicro.grid.acl.l0.datatypes.FileIdentifier packageFile,
                                                                                    int pageNumber)
Returns the names of all packages contained inside the given package.

Parameters:
packageFile - The id of the package file to look for its children.
pageNumber - The number of the list page to return, starting from 0 for the first page.
Returns:
the names of all packages contained inside the given package.

getPackagesContainedInPackageByName

com.trendmicro.grid.acl.l0.datatypes.NameListPage getPackagesContainedInPackageByName(String packageName,
                                                                                      int pageNumber)
Returns the names of all packages contained inside the given package.

Parameters:
packageName - The name of the package to look for its children.
pageNumber - The number of the list page to return, starting from 0 for the first page.
Returns:
the names of all packages contained inside the given package.

getPackageInformationListById

Collection<SharedPackageInformation> getPackageInformationListById(Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> files)
Returns the package information list of the given packages.

Parameters:
files - The ids of the package files to look for.
Returns:
the package information list of the given package or 'null' if no packages exists under the specified arguments.

getPackageInformationListByName

Collection<SharedPackageInformation> getPackageInformationListByName(Collection<String> packageNames)
Returns the package information list of the given packages.

Parameters:
packageNames - The names of the packages to look for.
Returns:
the package information list of the given package or 'null' if no packages exists under the specified arguments.

getPackageDetailsListById

Collection<SharedPackageDetails> getPackageDetailsListById(Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> files)
Returns the package details on the given package file ids.

Parameters:
files - The SHA1 hashes of the package files.
Returns:
the package details on the given package file ids.

getPackageDetailsListByName

Collection<SharedPackageDetails> getPackageDetailsListByName(Collection<String> packageNames)
Returns the package details on the given package names.

Parameters:
packageNames - The names the packages to lookup.
Returns:
the package details on the given package names.

getPackageFileIdentifiersByName

Collection<com.trendmicro.grid.acl.l0.datatypes.FileIdentifier> getPackageFileIdentifiersByName(Collection<String> packageNames)
Returns the file ID of the file that is associated with the given package.

Parameters:
packageNames - The names of the packages to look for.
Returns:
the the file ID of the file that is associated with the given package.