1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/renderer/media/cast_udp_transport.h"
6
7#include "base/values.h"
8#include "chrome/renderer/media/cast_session.h"
9
10CastUdpTransport::CastUdpTransport(
11    const scoped_refptr<CastSession>& session)
12    : cast_session_(session),
13      options_(new base::DictionaryValue),
14      weak_factory_(this) {
15}
16
17CastUdpTransport::~CastUdpTransport() {
18}
19
20void CastUdpTransport::SetDestination(const net::IPEndPoint& remote_address) {
21  VLOG(1) << "CastUdpTransport::SetDestination = "
22          << remote_address.ToString();
23  remote_address_ = remote_address;
24  cast_session_->StartUDP(remote_address,
25                          make_scoped_ptr(options_->DeepCopy()));
26}
27
28void CastUdpTransport::SetOptions(scoped_ptr<base::DictionaryValue> options) {
29  options_.reset(options.release());
30}
31