package at.gv.egovernment.moa.id.auth.builder;
import at.gv.egovernment.moa.util.Constants;
/**
* Builder for the <InfoboxReadRequest>
structure
* used for requesting the identity link from the security layer implementation.
*
* @author Paul Ivancsics
* @version $Id$
*/
public class InfoboxReadRequestBuilder implements Constants {
/**
* Constructor for InfoboxReadRequestBuilder.
*/
public InfoboxReadRequestBuilder() {
}
/**
* Builds an <InfoboxReadRequest>
.
*
* @param slVersion12 specifies whether the Security Layer version is
* version 1.2 or not
* @param businessService specifies whether the online application is a
* business service or not
* @param identityLinkDomainIdentifier the identification number of the business
* company; maybe null
if the OA
* is a public service; must not be null
* if the OA is a business service
*
* @return <InfoboxReadRequest>
as String
*/
public String build(boolean slVersion12, boolean businessService, String identityLinkDomainIdentifier) {
String slPrefix;
String slNsDeclaration;
if (slVersion12) {
slPrefix = SL12_PREFIX;
slNsDeclaration = SL12_NS_URI;
} else {
slPrefix = SL10_PREFIX;
slNsDeclaration = SL10_NS_URI;
}
StringBuffer sb = new StringBuffer("");
sb.append("<");
sb.append(slPrefix);
sb.append(":InfoboxReadRequest xmlns:");
sb.append(slPrefix);
sb.append("=\"");
sb.append(slNsDeclaration);
sb.append("\">");
sb.append("<");
sb.append(slPrefix);
sb.append(":InfoboxIdentifier>IdentityLink");
sb.append(slPrefix);
sb.append(":InfoboxIdentifier>");
sb.append("<");
sb.append(slPrefix);
sb.append(":BinaryFileParameters ContentIsXMLEntity=\"true\"/>");
if (businessService) {
sb.append("<");
sb.append(slPrefix);
sb.append(":BoxSpecificParameters>");
sb.append("<");
sb.append(slPrefix);
sb.append(":IdentityLinkDomainIdentifier>");
sb.append(identityLinkDomainIdentifier);
sb.append("");
sb.append("");
sb.append(slPrefix);
sb.append(":BoxSpecificParameters>");
}
sb.append("");
sb.append(slPrefix);
sb.append(":InfoboxReadRequest>");
return sb.toString();
}
}