1 // Copyright 2014 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.
5 #include "ipc/ipc_channel_factory.h"
11 class PlatformChannelFactory
: public ChannelFactory
{
13 PlatformChannelFactory(ChannelHandle handle
,
15 AttachmentBroker
* broker
)
16 : handle_(handle
), mode_(mode
), broker_(broker
) {}
18 std::string
GetName() const override
{
22 scoped_ptr
<Channel
> BuildChannel(Listener
* listener
) override
{
23 return Channel::Create(handle_
, mode_
, listener
, broker_
);
27 ChannelHandle handle_
;
29 AttachmentBroker
* broker_
;
31 DISALLOW_COPY_AND_ASSIGN(PlatformChannelFactory
);
37 scoped_ptr
<ChannelFactory
> ChannelFactory::Create(const ChannelHandle
& handle
,
39 AttachmentBroker
* broker
) {
40 return scoped_ptr
<ChannelFactory
>(
41 new PlatformChannelFactory(handle
, mode
, broker
));