Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / mojo / android / javatests / src / org / chromium / mojo / HandleMock.java
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.
4
5 package org.chromium.mojo;
6
7 import org.chromium.mojo.system.Core;
8 import org.chromium.mojo.system.DataPipe;
9 import org.chromium.mojo.system.DataPipe.ConsumerHandle;
10 import org.chromium.mojo.system.DataPipe.ProducerHandle;
11 import org.chromium.mojo.system.Handle;
12 import org.chromium.mojo.system.MessagePipeHandle;
13 import org.chromium.mojo.system.MojoResult;
14 import org.chromium.mojo.system.SharedBufferHandle;
15 import org.chromium.mojo.system.UntypedHandle;
16 import org.chromium.mojo.system.impl.CoreImpl;
17
18 import java.nio.ByteBuffer;
19 import java.util.List;
20
21 /**
22  * A mock handle, that does nothing.
23  */
24 public class HandleMock implements UntypedHandle, MessagePipeHandle,
25         ProducerHandle, ConsumerHandle, SharedBufferHandle {
26
27     /**
28      * @see Handle#close()
29      */
30     @Override
31     public void close() {
32         // Do nothing.
33     }
34
35     /**
36      * @see Handle#wait(Core.HandleSignals, long)
37      */
38     @Override
39     public int wait(Core.HandleSignals signals, long deadline) {
40         // Do nothing.
41         return MojoResult.OK;
42     }
43
44     /**
45      * @see Handle#isValid()
46      */
47     @Override
48     public boolean isValid() {
49         return true;
50     }
51
52     /**
53      * @see Handle#toUntypedHandle()
54      */
55     @Override
56     public UntypedHandle toUntypedHandle() {
57         return this;
58     }
59
60     /**
61      * @see org.chromium.mojo.system.Handle#getCore()
62      */
63     @Override
64     public Core getCore() {
65         return CoreImpl.getInstance();
66     }
67
68     /**
69      * @see org.chromium.mojo.system.UntypedHandle#pass()
70      */
71     @Override
72     public HandleMock pass() {
73         return this;
74     }
75
76     /**
77      * @see Handle#releaseNativeHandle()
78      */
79     @Override
80     public int releaseNativeHandle() {
81         return 0;
82     }
83
84     /**
85      * @see ConsumerHandle#discardData(int, DataPipe.ReadFlags)
86      */
87     @Override
88     public int discardData(int numBytes, DataPipe.ReadFlags flags) {
89         // Do nothing.
90         return 0;
91     }
92
93     /**
94      * @see ConsumerHandle#readData(java.nio.ByteBuffer, DataPipe.ReadFlags)
95      */
96     @Override
97     public int readData(ByteBuffer elements,
98             DataPipe.ReadFlags flags) {
99         // Do nothing.
100         return 0;
101     }
102
103     /**
104      * @see ConsumerHandle#beginReadData(int, DataPipe.ReadFlags)
105      */
106     @Override
107     public ByteBuffer beginReadData(int numBytes,
108             DataPipe.ReadFlags flags) {
109         // Do nothing.
110         return null;
111     }
112
113     /**
114      * @see ConsumerHandle#endReadData(int)
115      */
116     @Override
117     public void endReadData(int numBytesRead) {
118         // Do nothing.
119     }
120
121     /**
122      * @see ProducerHandle#writeData(java.nio.ByteBuffer, DataPipe.WriteFlags)
123      */
124     @Override
125     public int writeData(ByteBuffer elements,
126             DataPipe.WriteFlags flags) {
127         // Do nothing.
128         return 0;
129     }
130
131     /**
132      * @see ProducerHandle#beginWriteData(int, DataPipe.WriteFlags)
133      */
134     @Override
135     public ByteBuffer beginWriteData(int numBytes,
136             DataPipe.WriteFlags flags) {
137         // Do nothing.
138         return null;
139     }
140
141     /**
142      * @see ProducerHandle#endWriteData(int)
143      */
144     @Override
145     public void endWriteData(int numBytesWritten) {
146         // Do nothing.
147     }
148
149     /**
150      * @see MessagePipeHandle#writeMessage(java.nio.ByteBuffer, java.util.List,
151      *      MessagePipeHandle.WriteFlags)
152      */
153     @Override
154     public void writeMessage(ByteBuffer bytes, List<? extends Handle> handles,
155             WriteFlags flags) {
156         // Do nothing.
157     }
158
159     /**
160      * @see MessagePipeHandle#readMessage(java.nio.ByteBuffer, int, MessagePipeHandle.ReadFlags)
161      */
162     @Override
163     public ReadMessageResult readMessage(ByteBuffer bytes, int maxNumberOfHandles,
164             ReadFlags flags) {
165         // Do nothing.
166         return new ReadMessageResult();
167     }
168
169     /**
170      * @see UntypedHandle#toMessagePipeHandle()
171      */
172     @Override
173     public MessagePipeHandle toMessagePipeHandle() {
174         return this;
175     }
176
177     /**
178      * @see UntypedHandle#toDataPipeConsumerHandle()
179      */
180     @Override
181     public ConsumerHandle toDataPipeConsumerHandle() {
182         return this;
183     }
184
185     /**
186      * @see UntypedHandle#toDataPipeProducerHandle()
187      */
188     @Override
189     public ProducerHandle toDataPipeProducerHandle() {
190         return this;
191     }
192
193     /**
194      * @see UntypedHandle#toSharedBufferHandle()
195      */
196     @Override
197     public SharedBufferHandle toSharedBufferHandle() {
198         return this;
199     }
200
201     /**
202      * @see SharedBufferHandle#duplicate(SharedBufferHandle.DuplicateOptions)
203      */
204     @Override
205     public SharedBufferHandle duplicate(DuplicateOptions options) {
206         // Do nothing.
207         return null;
208     }
209
210     /**
211      * @see SharedBufferHandle#map(long, long, SharedBufferHandle.MapFlags)
212      */
213     @Override
214     public ByteBuffer map(long offset, long numBytes, MapFlags flags) {
215         // Do nothing.
216         return null;
217     }
218
219     /**
220      * @see SharedBufferHandle#unmap(java.nio.ByteBuffer)
221      */
222     @Override
223     public void unmap(ByteBuffer buffer) {
224         // Do nothing.
225     }
226
227 }