/******************************************************************************* | |
* Copyright (c) 2011 SAP AG, Walldorf | |
* All rights reserved. This program and the accompanying materials | |
* are made available under the terms of the Eclipse Public License v1.0 | |
* which accompanies this distribution, and is available at | |
* http://www.eclipse.org/legal/epl-v10.html | |
* | |
* Contributors: | |
* SAP AG - initial API and implementation | |
*******************************************************************************/ | |
package org.eclipse.platform.discovery.compatibility.internal.contributors.impl; | |
import org.eclipse.platform.discovery.compatibility.internal.readers.ISearchPageDescription; | |
import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription; | |
import static org.eclipse.platform.discovery.util.internal.ContractChecker.nullCheckParam; | |
public class IdCalculator { | |
private static final String SEARCHPROVIDER = "searchprovider"; | |
private static final String OBJECTTYPE = "objecttype"; | |
private static final String DOT = "."; //$NON-NLS-1$ | |
private static final String COMPATIBILITY = "compatibility"; | |
private static final String SEARCHPARAMSUI = "searchparamsui"; | |
private static final String SEARCHRESULTUI = "searchresultui"; | |
public String calculateObjectTypeId(ISearchPageDescription description) { | |
return calculateObjectTypeId(description.getId()); | |
} | |
public String calculateObjectTypeId(String searchPageId) { | |
nullCheckParam(searchPageId); | |
return searchPageId + DOT + COMPATIBILITY + DOT + OBJECTTYPE; //$NON-NLS-1$ | |
} | |
public String calculateSearchProviderId(ISearchPageDescription description) { | |
return calculateSearchProviderId(description.getId()); | |
} | |
public String calculateSearchProviderId(String searchPageId) { | |
nullCheckParam(searchPageId); | |
return searchPageId + DOT + COMPATIBILITY + DOT + SEARCHPROVIDER; //$NON-NLS-1$ | |
} | |
public String calculateSearchParametersUiId(ISearchPageDescription description) { | |
return calculateSearchParametersUiId(description.getId()); | |
} | |
public String calculateSearchParametersUiId(String searhpageId) { | |
nullCheckParam(searhpageId); | |
return searhpageId + DOT + COMPATIBILITY + DOT + SEARCHPARAMSUI; | |
} | |
public String calculateSearchPageId(String searchProviderId) { | |
return searchProviderId.replace(DOT+COMPATIBILITY+DOT+SEARCHPROVIDER, ""); | |
} | |
public String calculateResultUiId(ISearchPageDescription desc) { | |
return calculateSearchResultUiId(desc.getId()); | |
} | |
public String calculateSearchResultUiId(String searchPageId) { | |
return searchPageId + DOT + COMPATIBILITY + DOT + SEARCHRESULTUI; | |
} | |
public boolean isCompatibilitySearchProvider(ISearchProviderDescription providerDescription) { | |
return providerDescription.getId().endsWith(DOT + COMPATIBILITY + DOT + SEARCHPROVIDER); | |
} | |
} |