blob: 536841fcfb7548c90deafd5c3f0e08b685e84a94 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF 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.
*/
#if !defined(ATTRIBUTEVECTORENTRYEXTENDED_HEADER_GUARD_1357924680)
#define ATTRIBUTEVECTORENTRYEXTENDED_HEADER_GUARD_1357924680
// Base include file. Must be first.
#include <xalanc/PlatformSupport/PlatformSupportDefinitions.hpp>
#include <xalanc/PlatformSupport/AttributeVectorEntry.hpp>
#include <xalanc/Include/XalanMemMgrAutoPtr.hpp>
namespace XALAN_CPP_NAMESPACE {
class XALAN_PLATFORMSUPPORT_EXPORT AttributeVectorEntryExtended : public AttributeVectorEntry
{
public:
AttributeVectorEntryExtended(
const XMLChVectorType& theName,
const XMLChVectorType& theValue,
const XMLChVectorType& theType,
const XMLChVectorType& theURI ,
const XMLChVectorType& theLocalName,
MemoryManager& theManager) :
AttributeVectorEntry(
theName,
theValue,
theType,
theManager),
m_uri(
theURI,
theManager),
m_localName(
theLocalName,
theManager)
{
}
AttributeVectorEntryExtended(
const XMLCh* theName,
const XMLCh* theValue,
const XMLCh* theType,
const XMLCh* theURI,
const XMLCh* theLocalName,
MemoryManager& theManager) :
AttributeVectorEntry(
theName,
theValue,
theType,
theManager),
m_uri(
theURI,
theURI + length(theURI) + 1,
theManager),
m_localName(
theLocalName,
theLocalName + length(theLocalName) + 1,
theManager)
{
}
AttributeVectorEntryExtended(
const XMLCh* theName,
const XMLCh* theValue,
const XMLCh* theType,
MemoryManager& theManager) :
AttributeVectorEntry(
theName,
theValue,
theType,theManager),
m_uri(theManager),
m_localName(theManager)
{
}
AttributeVectorEntryExtended(MemoryManager& theManager) :
AttributeVectorEntry(theManager),
m_uri(theManager),
m_localName(theManager)
{
}
static AttributeVectorEntryExtended*
create(
const XMLCh* theName,
const XMLCh* theValue,
const XMLCh* theType,
const XMLCh* theURI,
const XMLCh* theLocalName,
MemoryManager& theManager)
{
AttributeVectorEntryExtended* theInstance;
return XalanConstruct(
theManager,
theInstance,
theName,
theValue,
theType,
theURI,
theLocalName,
theManager);
}
virtual
~AttributeVectorEntryExtended()
{
}
void
clear()
{
AttributeVectorEntry::clear();
m_uri.clear();
m_localName.clear();
}
XMLChVectorType m_uri;
XMLChVectorType m_localName;
};
}
#endif // ATTRIBUTEVECTORENTRY_HEADER_GUARD_1357924680