17242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci// Copyright 2014 The Chromium Authors. All rights reserved.
27242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci// Use of this source code is governed by a BSD-style license that can be
37242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci// found in the LICENSE file.
47242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
57242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci#include "config.h"
67242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci#include "modules/geofencing/CircularGeofencingRegion.h"
77242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
87242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci#include "bindings/core/v8/Dictionary.h"
97242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci#include "public/platform/WebString.h"
107242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
117242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tuccinamespace blink {
127242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
137242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano TucciCircularGeofencingRegion* CircularGeofencingRegion::create(const Dictionary& dictionary)
147242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci{
157242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    String id;
167242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    DictionaryHelper::get(dictionary, "id", id);
177242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    WebCircularGeofencingRegion region;
187242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    DictionaryHelper::get(dictionary, "latitude", region.latitude);
197242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    DictionaryHelper::get(dictionary, "longitude", region.longitude);
207242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    DictionaryHelper::get(dictionary, "radius", region.radius);
217242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    return new CircularGeofencingRegion(id, region);
227242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci}
237242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
247242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano TucciCircularGeofencingRegion* CircularGeofencingRegion::create(const WebString& id, const WebCircularGeofencingRegion& region)
257242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci{
267242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    return new CircularGeofencingRegion(id, region);
277242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci}
287242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
297242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano TucciCircularGeofencingRegion::CircularGeofencingRegion(const String& id, const WebCircularGeofencingRegion& region)
307242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    : GeofencingRegion(id)
317242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    , m_webRegion(region)
327242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci{
337242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci}
347242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
357242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano TucciWebCircularGeofencingRegion CircularGeofencingRegion::webRegion() const
367242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci{
377242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    return m_webRegion;
387242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci}
397242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci
407242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci} // namespace blink
41