1563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark/* 2d0825bca7fe65beaee391d30da42e937db621564Steve Block * Copyright (C) 2010 Google Inc. All rights reserved. 3563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * 4563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * Redistribution and use in source and binary forms, with or without 5563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * modification, are permitted provided that the following conditions 6563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * are met: 7563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * 8563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * 1. Redistributions of source code must retain the above copyright 9563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * notice, this list of conditions and the following disclaimer. 10563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * 2. Redistributions in binary form must reproduce the above copyright 11563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * notice, this list of conditions and the following disclaimer in the 12563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * documentation and/or other materials provided with the distribution. 13563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * its contributors may be used to endorse or promote products derived 15563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * from this software without specific prior written permission. 16563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * 17563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 18563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark */ 28d0825bca7fe65beaee391d30da42e937db621564Steve Block#ifndef IDBDatabaseError_h 29d0825bca7fe65beaee391d30da42e937db621564Steve Block#define IDBDatabaseError_h 30563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark 31d0825bca7fe65beaee391d30da42e937db621564Steve Block#include "PlatformString.h" 32d0825bca7fe65beaee391d30da42e937db621564Steve Block#include <wtf/PassRefPtr.h> 33d0825bca7fe65beaee391d30da42e937db621564Steve Block#include <wtf/RefCounted.h> 34563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark 35d0825bca7fe65beaee391d30da42e937db621564Steve Block#if ENABLE(INDEXED_DATABASE) 36563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark 37d0825bca7fe65beaee391d30da42e937db621564Steve Blocknamespace WebCore { 38d0825bca7fe65beaee391d30da42e937db621564Steve Block 39d0825bca7fe65beaee391d30da42e937db621564Steve Blockclass IDBDatabaseError : public RefCounted<IDBDatabaseError> { 400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochpublic: 41d0825bca7fe65beaee391d30da42e937db621564Steve Block static PassRefPtr<IDBDatabaseError> create() 42d0825bca7fe65beaee391d30da42e937db621564Steve Block { 43d0825bca7fe65beaee391d30da42e937db621564Steve Block return adoptRef(new IDBDatabaseError()); 44d0825bca7fe65beaee391d30da42e937db621564Steve Block } 45d0825bca7fe65beaee391d30da42e937db621564Steve Block ~IDBDatabaseError() { } 46d0825bca7fe65beaee391d30da42e937db621564Steve Block 47d0825bca7fe65beaee391d30da42e937db621564Steve Block unsigned short code() const { return m_code; } 48d0825bca7fe65beaee391d30da42e937db621564Steve Block void setCode(unsigned short value) { m_code = value; } 49d0825bca7fe65beaee391d30da42e937db621564Steve Block String message() const { return m_message; } 50d0825bca7fe65beaee391d30da42e937db621564Steve Block void setMessage(const String& value) { m_message = value; } 51d0825bca7fe65beaee391d30da42e937db621564Steve Block 52d0825bca7fe65beaee391d30da42e937db621564Steve Blockprivate: 53d0825bca7fe65beaee391d30da42e937db621564Steve Block IDBDatabaseError() { } 540bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 55d0825bca7fe65beaee391d30da42e937db621564Steve Block unsigned short m_code; 56d0825bca7fe65beaee391d30da42e937db621564Steve Block String m_message; 570bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch}; 580bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 59d0825bca7fe65beaee391d30da42e937db621564Steve Block} // namespace WebCore 60d0825bca7fe65beaee391d30da42e937db621564Steve Block 61563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark#endif 62d0825bca7fe65beaee391d30da42e937db621564Steve Block 63d0825bca7fe65beaee391d30da42e937db621564Steve Block#endif // IDBDatabaseError_h 64d0825bca7fe65beaee391d30da42e937db621564Steve Block 65