Add code for non-covariant build.
authorScott Cantor <cantor.2@osu.edu>
Tue, 21 Nov 2006 18:58:26 +0000 (18:58 +0000)
committerScott Cantor <cantor.2@osu.edu>
Tue, 21 Nov 2006 18:58:26 +0000 (18:58 +0000)
14 files changed:
.cdtproject
saml/saml.vcproj
saml/saml1/binding/SAML1ArtifactDecoder.h
saml/saml1/binding/SAML1POSTDecoder.h
saml/saml1/binding/SAML1SOAPDecoder.h
saml/saml1/binding/impl/SAML1ArtifactDecoder.cpp
saml/saml1/binding/impl/SAML1POSTDecoder.cpp
saml/saml1/binding/impl/SAML1SOAPDecoder.cpp
saml/saml2/binding/SAML2POSTDecoder.h
saml/saml2/binding/SAML2SOAPDecoder.h
saml/saml2/binding/impl/SAML2POSTDecoder.cpp
saml/saml2/binding/impl/SAML2SOAPDecoder.cpp
saml/saml2/core/Assertions.h
saml/saml2/metadata/Metadata.h

index 4fb4fe0..44f6686 100644 (file)
@@ -67,8 +67,6 @@
 <pathentry kind="src" path="saml/saml1/core/impl"/>\r
 <pathentry excluding="impl/" kind="src" path="saml/saml1/binding"/>\r
 <pathentry kind="src" path="saml/saml1/binding/impl"/>\r
-<pathentry excluding="impl/" kind="src" path="saml/saml1/profile"/>\r
-<pathentry kind="src" path="saml/saml1/profile/impl"/>\r
 <pathentry excluding="impl/" kind="src" path="saml/saml2/core"/>\r
 <pathentry kind="src" path="saml/saml2/core/impl"/>\r
 <pathentry excluding="impl/" kind="src" path="saml/saml2/metadata"/>\r
index 0e5acb3..8f121e1 100644 (file)
                                        </Filter>\r
                                </Filter>\r
                                <Filter\r
-                                       Name="profile"\r
-                                       >\r
-                                       <Filter\r
-                                               Name="impl"\r
-                                               >\r
-                                       </Filter>\r
-                               </Filter>\r
-                               <Filter\r
                                        Name="binding"\r
                                        >\r
                                        <Filter\r
                                        </File>\r
                                </Filter>\r
                                <Filter\r
-                                       Name="profile"\r
-                                       >\r
-                               </Filter>\r
-                               <Filter\r
                                        Name="binding"\r
                                        >\r
                                        <File\r
                                                >\r
                                        </File>\r
                                        <File\r
-                                               RelativePath=".\security\MetadataKeyInfoIterator.h"\r
+                                               RelativePath=".\saml2\metadata\MetadataKeyInfoIterator.h"\r
                                                >\r
                                        </File>\r
                                        <File\r
index d1e3e89..f887788 100644 (file)
@@ -36,7 +36,7 @@ namespace opensaml {
             SAML1ArtifactDecoder(const DOMElement* e);
             virtual ~SAML1ArtifactDecoder() {}
             
-            Response* decode(
+            xmltooling::XMLObject* decode(
                 std::string& relayState,
                 const GenericRequest& genericRequest,
                 SecurityPolicy& policy
index ead184b..7367924 100644 (file)
@@ -36,7 +36,7 @@ namespace opensaml {
             SAML1POSTDecoder(const DOMElement* e);
             virtual ~SAML1POSTDecoder() {}
             
-            Response* decode(
+            xmltooling::XMLObject* decode(
                 std::string& relayState,
                 const GenericRequest& genericRequest,
                 SecurityPolicy& policy
index 152da25..d9d58c3 100644 (file)
@@ -36,7 +36,7 @@ namespace opensaml {
             SAML1SOAPDecoder(const DOMElement* e);
             virtual ~SAML1SOAPDecoder() {}
             
-            Request* decode(
+            xmltooling::XMLObject* decode(
                 std::string& relayState,
                 const GenericRequest& genericRequest,
                 SecurityPolicy& policy
index 70cee0f..0f467f0 100644 (file)
@@ -50,7 +50,7 @@ namespace opensaml {
 
 SAML1ArtifactDecoder::SAML1ArtifactDecoder(const DOMElement* e) {}
 
-Response* SAML1ArtifactDecoder::decode(
+XMLObject* SAML1ArtifactDecoder::decode(
     string& relayState,
     const GenericRequest& genericRequest,
     SecurityPolicy& policy
index bccc690..f3018ef 100644 (file)
@@ -52,7 +52,7 @@ namespace opensaml {
 
 SAML1POSTDecoder::SAML1POSTDecoder(const DOMElement* e) {}
 
-Response* SAML1POSTDecoder::decode(
+XMLObject* SAML1POSTDecoder::decode(
     string& relayState,
     const GenericRequest& genericRequest,
     SecurityPolicy& policy
index 6df390b..ffd191f 100644 (file)
@@ -47,7 +47,7 @@ namespace opensaml {
 
 SAML1SOAPDecoder::SAML1SOAPDecoder(const DOMElement* e) {}
 
-Request* SAML1SOAPDecoder::decode(
+XMLObject* SAML1SOAPDecoder::decode(
     string& relayState,
     const GenericRequest& genericRequest,
     SecurityPolicy& policy
index e311366..35b2ee9 100644 (file)
@@ -36,7 +36,7 @@ namespace opensaml {
             SAML2POSTDecoder(const DOMElement* e);
             virtual ~SAML2POSTDecoder() {}
             
-            saml2::RootObject* decode(
+            xmltooling::XMLObject* decode(
                 std::string& relayState,
                 const GenericRequest& genericRequest,
                 SecurityPolicy& policy
index 5043852..f2b24d3 100644 (file)
@@ -36,7 +36,7 @@ namespace opensaml {
             SAML2SOAPDecoder(const DOMElement* e);
             virtual ~SAML2SOAPDecoder() {}
             
-            RequestAbstractType* decode(
+            xmltooling::XMLObject* decode(
                 std::string& relayState,
                 const GenericRequest& genericRequest,
                 SecurityPolicy& policy
index 32aedea..ebb2ec2 100644 (file)
@@ -52,7 +52,7 @@ namespace opensaml {
 
 SAML2POSTDecoder::SAML2POSTDecoder(const DOMElement* e) {}
 
-saml2::RootObject* SAML2POSTDecoder::decode(
+XMLObject* SAML2POSTDecoder::decode(
     std::string& relayState,
     const GenericRequest& genericRequest,
     SecurityPolicy& policy
index 3a100a6..8ff3738 100644 (file)
@@ -47,7 +47,7 @@ namespace opensaml {
 
 SAML2SOAPDecoder::SAML2SOAPDecoder(const DOMElement* e) {}
 
-RequestAbstractType* SAML2SOAPDecoder::decode(
+XMLObject* SAML2SOAPDecoder::decode(
     string& relayState,
     const GenericRequest& genericRequest,
     SecurityPolicy& policy
index ae5018d..512b89f 100644 (file)
@@ -380,7 +380,11 @@ namespace opensaml {
         public:
             virtual ~NameIDTypeBuilder() {}
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual NameIDType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -391,7 +395,11 @@ namespace opensaml {
                     );
                 if (b) {
                     xmltooling::QName schemaType(samlconstants::SAML20_NS,NameIDType::TYPE_NAME,samlconstants::SAML20_PREFIX);
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject(nsURI, localName, prefix, &schemaType);
+#else
+                    return dynamic_cast<NameIDType*>(b->buildObject(nsURI, localName, prefix, &schemaType));
+#endif
                 }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for NameIDType.");
             }
@@ -407,7 +415,11 @@ namespace opensaml {
         public:
             virtual ~KeyInfoConfirmationDataTypeBuilder() {}
             /** Default builder. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual KeyInfoConfirmationDataType* buildObject() const {
+#else
+            virtual xmltooling::XMLObject* buildObject() const {
+#endif
                 xmltooling::QName schemaType(
                     samlconstants::SAML20_NS,KeyInfoConfirmationDataType::TYPE_NAME,samlconstants::SAML20_PREFIX
                     );
@@ -416,7 +428,11 @@ namespace opensaml {
                     );
             }
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual KeyInfoConfirmationDataType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -426,7 +442,11 @@ namespace opensaml {
                     XMLObjectBuilder::getBuilder(xmltooling::QName(samlconstants::SAML20_NS,KeyInfoConfirmationDataType::TYPE_NAME))
                     );
                 if (b)
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject();
+#else
+                    return dynamic_cast<KeyInfoConfirmationDataType*>(b->buildObject());
+#endif
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for KeyInfoConfirmationDataType.");
             }
         };
index 55df4bd..7b995a0 100644 (file)
@@ -434,7 +434,11 @@ namespace opensaml {
         public:
             virtual ~localizedNameTypeBuilder() {}
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual localizedNameType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -445,7 +449,11 @@ namespace opensaml {
                     );
                 if (b) {
                     xmltooling::QName schemaType(samlconstants::SAML20MD_NS,localizedNameType::TYPE_NAME,samlconstants::SAML20MD_PREFIX);
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject(nsURI, localName, prefix, &schemaType);
+#else
+                    return dynamic_cast<localizedNameType*>(b->buildObject(nsURI, localName, prefix, &schemaType));
+#endif
                 }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for localizedNameType.");
             }
@@ -460,7 +468,11 @@ namespace opensaml {
         public:
             virtual ~localizedURITypeBuilder() {}
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual localizedURIType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -471,7 +483,11 @@ namespace opensaml {
                     );
                 if (b) {
                     xmltooling::QName schemaType(samlconstants::SAML20MD_NS,localizedURIType::TYPE_NAME,samlconstants::SAML20MD_PREFIX);
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject(nsURI, localName, prefix, &schemaType);
+#else
+                    return dynamic_cast<localizedURIType*>(b->buildObject(nsURI, localName, prefix, &schemaType));
+#endif
                 }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for localizedURIType.");
             }
@@ -486,7 +502,11 @@ namespace opensaml {
         public:
             virtual ~EndpointTypeBuilder() {}
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual EndpointType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -497,7 +517,11 @@ namespace opensaml {
                     );
                 if (b) {
                     xmltooling::QName schemaType(samlconstants::SAML20MD_NS,EndpointType::TYPE_NAME,samlconstants::SAML20MD_PREFIX);
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject(nsURI, localName, prefix, &schemaType);
+#else
+                    return dynamic_cast<EndpointType*>(b->buildObject(nsURI, localName, prefix, &schemaType));
+#endif
                 }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for EndpointType.");
             }
@@ -512,7 +536,11 @@ namespace opensaml {
         public:
             virtual ~IndexedEndpointTypeBuilder() {}
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual IndexedEndpointType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -523,7 +551,11 @@ namespace opensaml {
                     );
                 if (b) {
                     xmltooling::QName schemaType(samlconstants::SAML20MD_NS,IndexedEndpointType::TYPE_NAME,samlconstants::SAML20MD_PREFIX);
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject(nsURI, localName, prefix, &schemaType);
+#else
+                    return dynamic_cast<IndexedEndpointType*>(b->buildObject(nsURI, localName, prefix, &schemaType));
+#endif
                 }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for IndexedEndpointType.");
             }
@@ -539,7 +571,11 @@ namespace opensaml {
         public:
             virtual ~AuthnQueryDescriptorTypeBuilder() {}
             /** Default builder. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual AuthnQueryDescriptorType* buildObject() const {
+#else
+            virtual xmltooling::XMLObject* buildObject() const {
+#endif
                 xmltooling::QName schemaType(
                     samlconstants::SAML20_NS,AuthnQueryDescriptorType::TYPE_NAME,samlconstants::SAML20MD_QUERY_EXT_PREFIX
                     );
@@ -548,7 +584,11 @@ namespace opensaml {
                     );
             }
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual AuthnQueryDescriptorType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -557,8 +597,13 @@ namespace opensaml {
                 const AuthnQueryDescriptorTypeBuilder* b = dynamic_cast<const AuthnQueryDescriptorTypeBuilder*>(
                     XMLObjectBuilder::getBuilder(xmltooling::QName(samlconstants::SAML20MD_QUERY_EXT_NS,AuthnQueryDescriptorType::TYPE_NAME))
                     );
-                if (b)
+                if (b) {
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject();
+#else
+                    return dynamic_cast<AuthnQueryDescriptorType*>(b->buildObject());
+#endif
+                }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for AuthnQueryDescriptorType.");
             }
         };
@@ -573,7 +618,11 @@ namespace opensaml {
         public:
             virtual ~AttributeQueryDescriptorTypeBuilder() {}
             /** Default builder. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual AttributeQueryDescriptorType* buildObject() const {
+#else
+            virtual xmltooling::XMLObject* buildObject() const {
+#endif
                 xmltooling::QName schemaType(
                     samlconstants::SAML20_NS,AttributeQueryDescriptorType::TYPE_NAME,samlconstants::SAML20MD_QUERY_EXT_PREFIX
                     );
@@ -582,7 +631,11 @@ namespace opensaml {
                     );
             }
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual AttributeQueryDescriptorType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -591,8 +644,13 @@ namespace opensaml {
                 const AttributeQueryDescriptorTypeBuilder* b = dynamic_cast<const AttributeQueryDescriptorTypeBuilder*>(
                     XMLObjectBuilder::getBuilder(xmltooling::QName(samlconstants::SAML20MD_QUERY_EXT_NS,AttributeQueryDescriptorType::TYPE_NAME))
                     );
-                if (b)
+                if (b) {
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject();
+#else
+                    return dynamic_cast<AttributeQueryDescriptorType*>(b->buildObject());
+#endif
+                }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for AttributeQueryDescriptorType.");
             }
         };
@@ -607,7 +665,11 @@ namespace opensaml {
         public:
             virtual ~AuthzDecisionQueryDescriptorTypeBuilder() {}
             /** Default builder. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual AuthzDecisionQueryDescriptorType* buildObject() const {
+#else
+            virtual xmltooling::XMLObject* buildObject() const {
+#endif
                 xmltooling::QName schemaType(
                     samlconstants::SAML20_NS,AuthzDecisionQueryDescriptorType::TYPE_NAME,samlconstants::SAML20MD_QUERY_EXT_PREFIX
                     );
@@ -616,7 +678,11 @@ namespace opensaml {
                     );
             }
             /** Builder that allows element/type override. */
+#ifdef HAVE_COVARIANT_RETURNS
             virtual AuthzDecisionQueryDescriptorType* buildObject(
+#else
+            virtual xmltooling::XMLObject* buildObject(
+#endif
                 const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
                 ) const;
         
@@ -625,8 +691,13 @@ namespace opensaml {
                 const AuthzDecisionQueryDescriptorTypeBuilder* b = dynamic_cast<const AuthzDecisionQueryDescriptorTypeBuilder*>(
                     XMLObjectBuilder::getBuilder(xmltooling::QName(samlconstants::SAML20MD_QUERY_EXT_NS,AuthzDecisionQueryDescriptorType::TYPE_NAME))
                     );
-                if (b)
+                if (b) {
+#ifdef HAVE_COVARIANT_RETURNS
                     return b->buildObject();
+#else
+                    return dynamic_cast<AuthzDecisionQueryDescriptorType*>(b->buildObject());
+#endif
+                }
                 throw xmltooling::XMLObjectException("Unable to obtain typed builder for AuthzDecisionQueryDescriptorType.");
             }
         };