1cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com/*
2cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com * Copyright 2013 Google Inc.
38cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
4cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com * Use of this source code is governed by a BSD-style license that can be
5cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com * found in the LICENSE file.
6cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com */
78cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
8cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com#include "SkPdfJavascriptDictionary_autogen.h"
98cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com#include "SkPdfNativeDoc.h"
10cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com
118cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::isBeforeAString(SkPdfNativeDoc* doc) {
128cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("Before", "");
138cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
148cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return ret != NULL && ret->isAnyString();
158cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
168cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
178cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comSkString SkPdfJavascriptDictionary::getBeforeAsString(SkPdfNativeDoc* doc) {
188cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("Before", "");
198cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
208cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if ((ret != NULL && ret->isAnyString()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->stringValue2();
218cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  // TODO(edisonn): warn about missing default value for optional fields
228cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return SkString();
238cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
248cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
258cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::isBeforeAStream(SkPdfNativeDoc* doc) {
268cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("Before", "");
278cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
288cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return ret != NULL && ret->hasStream();
298cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
308cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
318cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comSkPdfStream* SkPdfJavascriptDictionary::getBeforeAsStream(SkPdfNativeDoc* doc) {
328cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("Before", "");
338cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
348cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if ((ret != NULL && ret->hasStream()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->getStream();
358cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  // TODO(edisonn): warn about missing default value for optional fields
368cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return NULL;
378cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
388cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
398cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::has_Before() const {
408cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return get("Before", "") != NULL;
418cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
428cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
438cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::isAfterAString(SkPdfNativeDoc* doc) {
448cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("After", "");
458cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
468cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return ret != NULL && ret->isAnyString();
478cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
488cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
498cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comSkString SkPdfJavascriptDictionary::getAfterAsString(SkPdfNativeDoc* doc) {
508cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("After", "");
518cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
528cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if ((ret != NULL && ret->isAnyString()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->stringValue2();
538cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  // TODO(edisonn): warn about missing default value for optional fields
548cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return SkString();
558cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
568cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
578cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::isAfterAStream(SkPdfNativeDoc* doc) {
588cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("After", "");
598cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
608cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return ret != NULL && ret->hasStream();
618cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
628cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
638cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comSkPdfStream* SkPdfJavascriptDictionary::getAfterAsStream(SkPdfNativeDoc* doc) {
648cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("After", "");
658cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
668cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if ((ret != NULL && ret->hasStream()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->getStream();
678cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  // TODO(edisonn): warn about missing default value for optional fields
688cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return NULL;
698cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
708cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
718cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::has_After() const {
728cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return get("After", "") != NULL;
738cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
748cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
758cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comSkPdfArray* SkPdfJavascriptDictionary::Doc(SkPdfNativeDoc* doc) {
768cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfNativeObject* ret = get("Doc", "");
778cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if (doc) {ret = doc->resolveReference(ret);}
788cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  if ((ret != NULL && ret->isArray()) || (doc == NULL && ret != NULL && ret->isReference())) return (SkPdfArray*)ret;
798cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  // TODO(edisonn): warn about missing default value for optional fields
808cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return NULL;
818cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
828cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
838cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.combool SkPdfJavascriptDictionary::has_Doc() const {
848cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  return get("Doc", "") != NULL;
858cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com}
86