OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chromeos/dbus/ibus/ibus_object.h" | 5 #include "chromeos/dbus/ibus/ibus_object.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/values.h" | 8 #include "base/values.h" |
9 #include "chromeos/dbus/ibus/ibus_property.h" | 9 #include "chromeos/dbus/ibus/ibus_property.h" |
10 #include "chromeos/dbus/ibus/ibus_text.h" | 10 #include "chromeos/dbus/ibus/ibus_text.h" |
11 #include "dbus/message.h" | 11 #include "dbus/message.h" |
12 #include "dbus/values_util.h" | 12 #include "dbus/values_util.h" |
13 | 13 |
14 namespace chromeos { | 14 namespace chromeos { |
15 // TODO(nona): Remove ibus namespace after complete libibus removal. | |
16 namespace ibus { | |
17 | 15 |
18 /////////////////////////////////////////////////////////////////////////////// | 16 /////////////////////////////////////////////////////////////////////////////// |
19 // IBusObjectReader | 17 // IBusObjectReader |
20 IBusObjectReader::IBusObjectReader(const std::string& type_name, | 18 IBusObjectReader::IBusObjectReader(const std::string& type_name, |
21 dbus::MessageReader* reader) | 19 dbus::MessageReader* reader) |
22 : type_name_(type_name), | 20 : type_name_(type_name), |
23 original_reader_(reader), | 21 original_reader_(reader), |
24 top_variant_reader_(NULL), | 22 top_variant_reader_(NULL), |
25 contents_reader_(NULL), | 23 contents_reader_(NULL), |
26 check_result_(IBUS_OBJECT_NOT_CHECKED) { | 24 check_result_(IBUS_OBJECT_NOT_CHECKED) { |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
149 | 147 |
150 bool IBusObjectReader::PopArray(dbus::MessageReader* reader) { | 148 bool IBusObjectReader::PopArray(dbus::MessageReader* reader) { |
151 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); | 149 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); |
152 DCHECK(contents_reader_.get()); | 150 DCHECK(contents_reader_.get()); |
153 return IsValid() && contents_reader_->PopArray(reader); | 151 return IsValid() && contents_reader_->PopArray(reader); |
154 } | 152 } |
155 | 153 |
156 bool IBusObjectReader::PopIBusText(IBusText* text) { | 154 bool IBusObjectReader::PopIBusText(IBusText* text) { |
157 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); | 155 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); |
158 DCHECK(contents_reader_.get()); | 156 DCHECK(contents_reader_.get()); |
159 return IsValid() && chromeos::ibus::PopIBusText(contents_reader_.get(), text); | 157 return IsValid() && chromeos::PopIBusText(contents_reader_.get(), text); |
160 } | 158 } |
161 | 159 |
162 bool IBusObjectReader::PopStringFromIBusText(std::string* text) { | 160 bool IBusObjectReader::PopStringFromIBusText(std::string* text) { |
163 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); | 161 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); |
164 DCHECK(contents_reader_.get()); | 162 DCHECK(contents_reader_.get()); |
165 return IsValid() && chromeos::ibus::PopStringFromIBusText( | 163 return IsValid() && chromeos::PopStringFromIBusText( |
166 contents_reader_.get(), text); | 164 contents_reader_.get(), text); |
167 } | 165 } |
168 | 166 |
169 bool IBusObjectReader::PopIBusProperty(IBusProperty* property) { | 167 bool IBusObjectReader::PopIBusProperty(IBusProperty* property) { |
170 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); | 168 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); |
171 DCHECK(contents_reader_.get()); | 169 DCHECK(contents_reader_.get()); |
172 return IsValid() && chromeos::ibus::PopIBusProperty(contents_reader_.get(), | 170 return IsValid() && chromeos::PopIBusProperty(contents_reader_.get(), |
173 property); | 171 property); |
174 } | 172 } |
175 | 173 |
176 bool IBusObjectReader::PopIBusPropertyList(IBusPropertyList* properties) { | 174 bool IBusObjectReader::PopIBusPropertyList(IBusPropertyList* properties) { |
177 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); | 175 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); |
178 DCHECK(contents_reader_.get()); | 176 DCHECK(contents_reader_.get()); |
179 return IsValid() && chromeos::ibus::PopIBusPropertyList( | 177 return IsValid() && chromeos::PopIBusPropertyList( |
180 contents_reader_.get(), properties); | 178 contents_reader_.get(), properties); |
181 } | 179 } |
182 | 180 |
183 const base::Value* IBusObjectReader::GetAttachment(const std::string& key) { | 181 const base::Value* IBusObjectReader::GetAttachment(const std::string& key) { |
184 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); | 182 DCHECK_NE(IBUS_OBJECT_NOT_CHECKED, check_result_); |
185 DCHECK(contents_reader_.get()); | 183 DCHECK(contents_reader_.get()); |
186 if (!IsValid()) | 184 if (!IsValid()) |
187 return NULL; | 185 return NULL; |
188 std::map<std::string, base::Value*>::iterator it = attachments_.find(key); | 186 std::map<std::string, base::Value*>::iterator it = attachments_.find(key); |
189 if (it == attachments_.end()) | 187 if (it == attachments_.end()) |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
246 } | 244 } |
247 | 245 |
248 void IBusObjectWriter::OpenArray(const std::string& signature, | 246 void IBusObjectWriter::OpenArray(const std::string& signature, |
249 dbus::MessageWriter* writer) { | 247 dbus::MessageWriter* writer) { |
250 DCHECK_EQ(state_, INITIALIZED); | 248 DCHECK_EQ(state_, INITIALIZED); |
251 contents_writer_->OpenArray(signature, writer); | 249 contents_writer_->OpenArray(signature, writer); |
252 } | 250 } |
253 | 251 |
254 void IBusObjectWriter::AppendIBusText(const IBusText& text) { | 252 void IBusObjectWriter::AppendIBusText(const IBusText& text) { |
255 DCHECK_EQ(state_, INITIALIZED); | 253 DCHECK_EQ(state_, INITIALIZED); |
256 chromeos::ibus::AppendIBusText(text, contents_writer_.get()); | 254 chromeos::AppendIBusText(text, contents_writer_.get()); |
257 } | 255 } |
258 | 256 |
259 void IBusObjectWriter::AppendStringAsIBusText(const std::string& text) { | 257 void IBusObjectWriter::AppendStringAsIBusText(const std::string& text) { |
260 DCHECK_EQ(state_, INITIALIZED); | 258 DCHECK_EQ(state_, INITIALIZED); |
261 chromeos::ibus::AppendStringAsIBusText(text, contents_writer_.get()); | 259 chromeos::AppendStringAsIBusText(text, contents_writer_.get()); |
262 } | 260 } |
263 | 261 |
264 void IBusObjectWriter::AppendIBusProperty(const IBusProperty& property) { | 262 void IBusObjectWriter::AppendIBusProperty(const IBusProperty& property) { |
265 DCHECK_EQ(state_, INITIALIZED); | 263 DCHECK_EQ(state_, INITIALIZED); |
266 chromeos::ibus::AppendIBusProperty(property, contents_writer_.get()); | 264 chromeos::AppendIBusProperty(property, contents_writer_.get()); |
267 } | 265 } |
268 | 266 |
269 void IBusObjectWriter::AppendIBusPropertyList( | 267 void IBusObjectWriter::AppendIBusPropertyList( |
270 const IBusPropertyList& property_list) { | 268 const IBusPropertyList& property_list) { |
271 DCHECK_EQ(state_, INITIALIZED); | 269 DCHECK_EQ(state_, INITIALIZED); |
272 chromeos::ibus::AppendIBusPropertyList(property_list, contents_writer_.get()); | 270 chromeos::AppendIBusPropertyList(property_list, contents_writer_.get()); |
273 } | 271 } |
274 | 272 |
275 void IBusObjectWriter::CloseContainer(dbus::MessageWriter* writer) { | 273 void IBusObjectWriter::CloseContainer(dbus::MessageWriter* writer) { |
276 DCHECK_EQ(state_, INITIALIZED); | 274 DCHECK_EQ(state_, INITIALIZED); |
277 contents_writer_->CloseContainer(writer); | 275 contents_writer_->CloseContainer(writer); |
278 } | 276 } |
279 | 277 |
280 void IBusObjectWriter::AppendIBusObject(IBusObjectWriter* writer) { | 278 void IBusObjectWriter::AppendIBusObject(IBusObjectWriter* writer) { |
281 DCHECK_EQ(state_, INITIALIZED); | 279 DCHECK_EQ(state_, INITIALIZED); |
282 writer->InitWithParentWriter(contents_writer_.get()); | 280 writer->InitWithParentWriter(contents_writer_.get()); |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
337 dict_writer.AppendString(key); | 335 dict_writer.AppendString(key); |
338 dbus::MessageWriter variant_writer(NULL); | 336 dbus::MessageWriter variant_writer(NULL); |
339 dict_writer.OpenVariant("v", &variant_writer); | 337 dict_writer.OpenVariant("v", &variant_writer); |
340 | 338 |
341 dbus::AppendBasicTypeValueDataAsVariant(&variant_writer, value); | 339 dbus::AppendBasicTypeValueDataAsVariant(&variant_writer, value); |
342 dict_writer.CloseContainer(&variant_writer); | 340 dict_writer.CloseContainer(&variant_writer); |
343 attachment_writer_->CloseContainer(&variant_writer); | 341 attachment_writer_->CloseContainer(&variant_writer); |
344 return true; | 342 return true; |
345 } | 343 } |
346 | 344 |
347 } // namespace ibus | |
348 } // namespace chromeos | 345 } // namespace chromeos |
OLD | NEW |