用于基线和标签的基于Java的API id175UB30E05Z
以下基于Java的API允许您创建基线并向基线中的文件添加标签。 这些API以捆绑包形式提供。 您必须在代码中包含此捆绑包才能使用这些API。
捆绑包详细信息:
-
组ID: com.adobe.fmdita
-
项目ID: api
-
版本: 3.5
-
包: com.adobe.fmdita.api.baselines
-
类详细信息:
code language-java public class BaselineUtils extends Object
BaselineUtils 类包含用于创建基线以及将标签应用于基线中的文件的方法。
创建基线
创建基线方法有两个版本 — 一个用于XML Documentation解决方案版本3.5,另一个用于3.5之前的版本\(包括版本3.4、3.3和3.2\)。 3.5版API允许使用映射文件中的标签、直接引用和间接引用创建基线。
API的另一个版本使用日期和时间创建基线。 保留此API是为了与使用XML Documentation解决方案3.4、3.3或3.2的系统保持向后兼容性。
语法\(对于版本3.5\):
public static String createBaseline(Session session,
String sourcePath,
String baselineTitle,
String label,
LinkedHashMap directContext,
LinkedHashMap indirectContext)
throws GuidesApiException
参数:
session
sourcePath
baselineTitle
label
directContext
如果在映射的所有键上迭代后未找到版本,则基线创建过程将失败。
如果HashMap为空\(发送空映射,默认映射不为null\),则默认情况下会填充为:
directContext.put("label", label);
directContext.put("latest", true);
如果您希望基线创建仅选择给定标签的版本,并且如果不存在此类版本,则失败,请放置
label
键和您要创建基线的标签。indirectContext
如果在映射的所有键上迭代后未找到版本,则基线创建过程将失败。
如果哈希映射为空\(发送空映射,默认为null映射\),则默认填充为:
indirectContext.put("label", label);
indirectContext.put "pickAutomatically", null);
如果您希望它成为最新版本而不是自动选取版本,请替换:
indirectContext.put("pickAutomatically", null);
具有:
indirectContext.put("latest", true)
返回:
基线的名称,即JCR存储库中基线的节点名称。 新创建的基线的标题将显示在DITA映射的“基线”页上,供用户使用。
异常:
如果具有相同标题的基线已存在,则抛出ItemExistExceptiom
。
语法\(适用于版本3.4、3.3和3.2\)
public static String createBaseline
(Session session,
String sourcePath,
String baselineTitle,
Date versionDate) throws GuidesApiException
参数:
session
sourcePath
baselineTitle
versionDate
d-MM-yyyy H:mm
格式指定日期。返回:
基线的名称,即JCR存储库中基线的节点名称。 新创建的基线的标题将显示在DITA映射的“基线”页上,供用户使用。
异常:
抛出RepositoryException.
应用标签
applyLabel
方法将一个或多个标签应用于基线中的文件。
语法:
public static void applyLabel(Session session,
String sourcePath,
String baselineName,
String label)
throws RepositoryException, WorkflowException, Exception
参数:
session
sourcePath
baselineName
注意: 标签应用于从基线中的映射文件直接引用的文件版本。
label
如果要设置多个标签,请用逗号分隔标签;例如Label1, Label2。
异常:
抛出RepositoryException
。
删除标签
deleteLabel
方法从基线中的文件删除一个或多个标签。
语法:
public static Map
<String, String> deleteLabel(Session session,
String sourcePath,
String baselineName,
String label) throws GuidesApiException
参数:
session
sourcePath
baselineName
注意: 标签已从直接从基线中的映射文件引用的文件版本中删除。
label
如果要删除多个标签,请用逗号分隔标签;例如Label1、Label2。
返回:
对于基线中的所有文件,映射具有 key:value 对path:deletedlabels
。
异常:
抛出RepositoryException`, `VersionException`, `Exception
。