/** * Copyright 2006 by Know-Center, Graz, Austria * PDF-AS has been contracted by the E-Government Innovation Center EGIZ, a * joint initiative of the Federal Chancellery Austria and Graz University of * Technology. * * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by * the European Commission - subsequent versions of the EUPL (the "Licence"); * You may not use this work except in compliance with the Licence. * You may obtain a copy of the Licence at: * http://www.osor.eu/eupl/ * * Unless required by applicable law or agreed to in writing, software * distributed under the Licence is distributed on an "AS IS" basis, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the Licence for the specific language governing permissions and * limitations under the Licence. * * This product combines work with different licenses. See the "NOTICE" text * file for details on the various modules and licenses. * The "NOTICE" text file is part of the distribution. Any derivative works * that you distribute must include a readable copy of the "NOTICE" text file. */ package at.knowcenter.wag.egov.egiz.sig.sigid; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * @author wprinz * */ public class HotfixIdFormatter implements IdFormatter { /** * The SIG_ID prefix. */ public static final String SIG_ID_PREFIX = "etsi-bka-1.0"; //$NON-NLS-1$ /** * The log. */ private static Log log = LogFactory.getLog(HotfixIdFormatter.class); /** * @see at.knowcenter.wag.egov.egiz.sig.sigid.IdFormatter#formatIds(java.lang.String[]) */ public String formatIds(String[] ids, String algorithmParams) { // ids algorithm: String join = ""; //$NON-NLS-1$ String base = null; for (int arr_idx = 0; arr_idx < ids.length; arr_idx++) { String id = ids[arr_idx]; if (log.isDebugEnabled()) { log.debug("Set BKU id:" + id); //$NON-NLS-1$ } int id_idx = id.lastIndexOf("-"); //$NON-NLS-1$ if (arr_idx == 0) { base = id.substring(0, id_idx); } String cur_id = id.substring(id_idx + 1); join += "-" + cur_id; //$NON-NLS-1$ } String idstr = base + "@" + join.substring(1); //$NON-NLS-1$ String final_ids = SIG_ID_PREFIX + "@" + idstr; return final_ids; } }