/* * See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * Esri Inc. licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.esri.gpt.catalog.arcgis.agportal.publication; import com.esri.gpt.framework.collection.StringAttributeMap; import com.esri.gpt.framework.context.RequestContext; import com.esri.gpt.framework.util.Val; /** * Publication endpoint. */ public class EndPoint { private String baseArcGISUrl; private String generateTokenUrl; private String referer = ""; /** * Creates instance of the end-point. * @param baseArcGISUrl base ArcGIS portal URL * @param generateTokenUrl URL to generate token * @param referer referer */ public EndPoint(String baseArcGISUrl, String generateTokenUrl, String referer) { this.baseArcGISUrl = Val.chkStr(baseArcGISUrl); this.generateTokenUrl = Val.chkStr(generateTokenUrl); this.referer = Val.chkStr(referer); } /** * Extracts end-point from the configuration * @param ctx request context * @return end-point */ public static EndPoint extract(RequestContext ctx) { StringAttributeMap params = ctx.getCatalogConfiguration().getParameters(); return new EndPoint( params.get("share.with.arcgis.base.url").getValue(), params.get("share.with.arcgis.token.url").getValue(), params.get("share.with.arcgis.referer").getValue()); } /** * Gets base ArcGIS portal URL. * @return base ArcGIS portal URL */ public String getBaseArcGISUrl() { return baseArcGISUrl; } /** * Gets URL to generate token. * @return URL to generate token */ public String getGenerateTokenUrl() { return generateTokenUrl; } /** * Gets referer. * @return referer */ public String getReferer() { return referer; } }