001/* 002 * Licensed under the Apache License, Version 2.0 (the "License"); 003 * you may not use this file except in compliance with the License. 004 * You may obtain a copy of the License at 005 * 006 * http://www.apache.org/licenses/LICENSE-2.0 007 * 008 * Unless required by applicable law or agreed to in writing, software 009 * distributed under the License is distributed on an "AS IS" BASIS, 010 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 011 * See the License for the specific language governing permissions and 012 * limitations under the License. 013 */ 014package org.gbif.api.vocabulary; 015 016import org.gbif.api.util.VocabularyUtils; 017 018/** 019 * Enumeration for all endpoint types. 020 */ 021public enum EndpointType { 022 /** 023 * A single <a href="http://knb.ecoinformatics.org/software/eml/">EML metadata document</a> in any EML version. 024 */ 025 EML, 026 /** 027 * Syndication feeds like RSS or ATOM of various flavors. 028 * The feeds can serve very different purpose, for example if attached to an organisation it can be news items. 029 * Attached to a technical installation like the IPT it should return the latest dataset resources. 030 */ 031 FEED, 032 /** 033 * An OGC Web Feature Service. 034 */ 035 WFS, 036 /** 037 * An OGC Web Map Service. 038 */ 039 WMS, 040 /** 041 * Taxon Concept data given as RDF 042 * based on the <a href="http://rs.tdwg.org/ontology/voc/TaxonConcept.rdf">TDWG ontology</a>. 043 */ 044 TCS_RDF, 045 /** 046 * A <a href="http://www.tdwg.org/standards/117/">Taxon Concept Schema</a> document. 047 */ 048 TCS_XML, 049 /** 050 * A Darwin Core Archive as defined by the <a href="http://rs.tdwg.org/dwc/terms/guides/text/">Darwin Core Text Guidelines</a>. 051 */ 052 DWC_ARCHIVE, 053 /** 054 * A <a href="http://digir.sourceforge.net/">DiGIR</a> service endpoint. 055 */ 056 DIGIR, 057 /** 058 * A DiGIR service slightly modified for the MANIS network. 059 */ 060 DIGIR_MANIS, 061 /** 062 * A <a href="http://www.tdwg.org/dav/subgroups/tapir/1.0/docs/">TAPIR</a> service. 063 */ 064 TAPIR, 065 /** 066 * A <a href="http://www.biocase.org/products/protocols/">BioCASe</a> protocol compliant service. 067 */ 068 BIOCASE, 069 /** 070 * A <a href="http://www.biocase.org/products/protocols/">BioCASe</a> XML Archive, as explained by the 071 * <a href="http://wiki.bgbm.org/bps/index.php/Archiving">BioCASe wiki</a>. 072 */ 073 BIOCASE_XML_ARCHIVE, 074 /** 075 * The Open Archives Initiative Protocol for Metadata Harvesting. 076 * A <a href="http://www.openarchives.org/OAI/openarchivesprotocol.html">OAI-PMH</a> compliant data provider service. 077 */ 078 OAI_PMH, 079 /** 080 * <a href="https://github.com/CatalogueOfLife/coldp">Catalogue of Life Data Packages</a>. 081 */ 082 COLDP, 083 /** 084 * <a href="https://tdwg.github.io/camtrap-dp/">CamTrap DP</a>. 085 */ 086 CAMTRAP_DP, 087 /** 088 * Any other service not covered by this enum so far. 089 */ 090 OTHER; 091 092 /** 093 * @return the matching EndpointType or null 094 */ 095 public static EndpointType fromString(String endpointType) { 096 return VocabularyUtils.lookupEnum(endpointType, EndpointType.class); 097 } 098 099}