Sun Java System Portal Server 7.1 管理指南

过滤支持函数

过滤期间使用支持函数处理或生成有关资源的信息。然后 robot 可以通过调用过滤函数处理资源。可在 filter.conf 文件中的枚举和生成过滤器中使用这些函数。

assign-source

assign-source 函数会将新值赋予给定的信息源。此函数允许在过滤处理期间进行编辑。此函数可指定一个显式新值,也可从另一信息源复制一个值。

属性

dst

需要更改值的源的名称

value

指定一个显式值

src

要复制到 dst 的信息源

您必须指定 value 属性或 src 属性,但不能同时指定两者。

示例

Data fn=assign-source dst=type src=content-type

assign-type-by-extension

assign-type-by-extension 函数用资源的文件名确定其类型,并将此类型分配给资源以便进一步处理。

在安装过程中必须调用 setup-type-by-extension 函数,之后方可使用 assign-type-by-extension

属性

src

要比较的文件名的源。如果未指定源,则默认值为资源的路径

示例

MetaData fn=assign-type-by-extension

clear-source

clear-source 函数删除指定的数据源。通常不需要执行此函数。您可以使用 assign-source 函数来创建或替代源。

属性

src

要删除的源的名称

示例

以下示例删除路径源:

MetaData fn=clear-source src=path

convert-to-html

如果当前资源的类型匹配指定的 MIME 类型,convert-to-html 函数会将当前资源转换为 HTML 文件以进一步处理。转换过滤器会自动检测要转换的文件的类型。

属性

type

要转换的 MIME 类型

示例

调用以下函数序列会导致过滤器将所有 Adobe Acrobat PDF 文件、Microsoft RTF 文件和 FrameMaker MIF 文件以及提供文件的服务器未指定其类型的任何文件转换为 HTML。

Data fn=convert-to-html type=application/pdf

Data fn=convert-to-html type=application/rtf

Data fn=convert-to-html type=application/x-mif

Data fn=convert-to-html type=unknown

copy-attribute

copy-attribute 函数可将资源描述中的某个字段的值复制到另一个字段中。

属性

src

资源描述中要复制的字段

dst

资源描述中的项目,源将被复制到该项目中

truncate

要复制的源的最大长度

clean

指示是否修复被截断的文本,以防文字不完整的布尔属性。默认情况下此属性为 false

示例

Generate fn=copy-attribute \\

src=partial-text dst=description truncate=200 clean=true

generate-by-exact

仅当现有源与另一个值完全匹配时,generate-by-exact 函数才会利用指定的值生成源。

属性

dst

要生成的源的名称

value

要赋予 dst 的值

src

匹配的源

示例

如果主机为 www.siroe.com,以下示例会将分类设置为 siroe

Generate fn="generate-by-exact" match="www.siroe.com:80" src="host" value="Siroe" dst="classification"

generate-by-prefix

如果现有源的前缀与另一个值匹配,则此 generate-by-prefix 函数会利用指定的值生成源。

属性

dst

要生成的源的名称

value

要赋予 dst 的值

src

匹配的源

match

要与 src 进行比较的值

示例

以下示例当协议前缀为 HTTP 时将分类设为 Compass:

Generate fn="generate-by-prefix" match="http" src="protocol" value="World Wide Web" dst="classification"

generate-by-regex

如果现有源与某个正则表达式匹配,则 generate-by-regex 函数会利用指定的值生成源。

属性

dst

要生成的源的名称

value

要赋予 dst 的值

src

匹配的源

match

要与 src 进行比较的正则表达式字符串

示例

如果主机名与正则表达式 *.siroe.com 匹配,以下示例会将分类设置为 siroe。例如,developer.siroe.comhome.siroe.com 的资源都被分类为 Siroe

Generate fn="generate-by-regex" match="\\\\*.siroe.com" src="host" value="Siroe" dst="classification"

generate-md5

generate-md5 函数会生成 MD5 校验和并添加到资源中。然后,可使用 filter-by-md5 函数拒绝有相同 MD5 校验和的资源。

属性

示例

Data fn=generate-md5

generate-rd-expires

generate-rd-expires 函数会生成到期日期并添加到指定的源。此函数使用元数据(例如 HTTP 标头和 HTML <META> 标记)从资源获取任意到期数据。如果不存在,函数将生成一个距当前日期三个月的到期日期。

属性

dst

源的名称。如果您忽略它,则源默认值为 rd-expires

示例

Generate fn=generate-rd-expires

generate-rd-last-modified

generate-rd-last-modified 函数可将当前时间添加到指定的源。

属性

dst

源的名称。如果您忽略它,则源默认值为 rd-last-modified

示例

Generate fn=generate-last-modified

rename-attribute

rename-attribute 函数可更改资源描述中字段的名称。此函数在以下情况非常有用,例如,extract-html-meta 函数从一个 <META> 标记复制信息到一个字段而您想要更改该字段的名称。

属性

src

包含从一个名称到另一个名称的映射的字符串

示例

以下示例将属性从 author 重命名为 author-name:

Generate fn=rename-attribute src="author->author-name"