blob: 76653f55cfe7503d9357938c0a15429e2fba88c6 [file] [log] [blame]
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CONTENT_BROWSER_GEOLOCATION_EMPTY_DEVICE_DATA_PROVIDER_H_
#define CONTENT_BROWSER_GEOLOCATION_EMPTY_DEVICE_DATA_PROVIDER_H_
#include "content/browser/geolocation/device_data_provider.h"
namespace content {
// An implementation of DeviceDataProviderImplBase that does not provide any
// data. Used on platforms where a given data type is not available.
template<typename DataType>
class EmptyDeviceDataProvider : public DeviceDataProviderImplBase<DataType> {
public:
EmptyDeviceDataProvider() {}
virtual ~EmptyDeviceDataProvider() {}
// DeviceDataProviderImplBase implementation
virtual bool StartDataProvider() { return true; }
virtual void StopDataProvider() { }
virtual bool GetData(DataType *data) {
DCHECK(data);
// This is all the data we can get - nothing.
return true;
}
private:
DISALLOW_COPY_AND_ASSIGN(EmptyDeviceDataProvider);
};
} // namespace content
#endif // CONTENT_BROWSER_GEOLOCATION_EMPTY_DEVICE_DATA_PROVIDER_H_