-/*
- * Copyright 2001-2006 Internet2
- *
- * Licensed 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
+/**
+ * Licensed to the University Corporation for Advanced Internet
+ * Development, Inc. (UCAID) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for
+ * additional information regarding copyright ownership.
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * UCAID 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
*
- * 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.
+ * 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.
*/
/**
- * @file saml/saml2/core/SAML2ArtifactType0004.h
+ * @file saml/saml2/binding/SAML2ArtifactType0004.h
*
- * Type 0x0004 SAML 2.0 artifact class
+ * Type 0x0004 SAML 2.0 artifact class.
*/
#ifndef __saml_artifacttype0004_h__
namespace saml2p {
/**
- * Type 0x0004 SAML 2.0 artifact class
+ * Type 0x0004 SAML 2.0 artifact class.
*/
class SAML_API SAML2ArtifactType0004 : public SAML2Artifact
{
*/
SAML2ArtifactType0004(const std::string& sourceid, int index, const std::string& handle);
- virtual ~SAML2ArtifactType0004() {}
-
- virtual SAML2ArtifactType0004* clone() const {
- return new SAML2ArtifactType0004(*this);
- }
+ virtual ~SAML2ArtifactType0004();
- virtual std::string getSource() const {
- return toHex(getSourceID());
- }
+ // Virtual function overrides.
+ SAML2ArtifactType0004* clone() const;
+ std::string getSource() const;
+ std::string getMessageHandle() const;
/**
* Returns the binary data that identifies the source.
*
* @return the binary source ID
*/
- virtual std::string getSourceID() const {
- return m_raw.substr(TYPECODE_LENGTH + INDEX_LENGTH, SOURCEID_LENGTH); // bytes 5-24
- }
+ virtual std::string getSourceID() const;
- virtual std::string getMessageHandle() const {
- return m_raw.substr(TYPECODE_LENGTH + INDEX_LENGTH + SOURCEID_LENGTH, HANDLE_LENGTH); // bytes 25-44
- }
-
/** Length of source ID */
static const unsigned int SOURCEID_LENGTH;
static const unsigned int HANDLE_LENGTH;
protected:
- SAML2ArtifactType0004(const SAML2ArtifactType0004& src) : SAML2Artifact(src) {}
+ /**
+ * Copy constructor.
+ *
+ * @param src object to copy
+ */
+ SAML2ArtifactType0004(const SAML2ArtifactType0004& src);
};
};