00001 /* 00002 * wsdlpull - A C++ parser for WSDL (Web services description language) 00003 * Copyright (C) 2005-2007 Vivek Krishna 00004 * 00005 * This library is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU Library General Public 00007 * License as published by the Free Software Foundation; either 00008 * version 2 of the License, or (at your option) any later version. 00009 * 00010 * This library is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 * Library General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU Library General Public 00016 * License along with this library; if not, write to the Free 00017 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00018 * 00019 */ 00020 00021 #ifndef KEYREF_H 00022 00023 #define KEYREF_H 00024 // ********************************************************************* 00025 // Include files: 00026 // ********************************************************************* 00027 00028 #include "schemaparser/Constraint.h" 00029 00030 namespace Schema { 00031 class WSDLPULL_EXPORT Keyref : public WSDLPULL_EXPORT Constraint 00032 { 00033 public: 00034 Keyref(); 00035 std::string getRefer()const; 00036 void setRefer(const std::string & n); 00037 Schema::ConstraintType getConstraintType() {return m_constraintType;} 00038 00039 00040 private: 00041 Attribute m_refer; 00042 }; 00043 00044 Keyref::Keyref():m_constraintType(Keyref) 00045 { 00046 m_refer( "refer", 0, true, "", "", true); 00047 } 00048 00049 void Keyref::setRefer(const std::string & n) 00050 { 00051 m_refer( "refer", 0, true, "", n, true); 00052 } 00053 00054 std::string Keyref::getRefer() const 00055 { 00056 return m_refer.fixedVal(); 00057 } 00058 00059 } 00060 #endif