Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[],null,["# ModelCodec\n\nSummary: [Methods](#pubmethods) \\| [Inherited Methods](#inhmethods) \\| [\\[Expand All\\]](#) \n\nModelCodec\n==========\n\n| This package is part of the Android [support library](/topic/libraries/support-library) which is no longer maintained. The support library has been superseded by [AndroidX](/jetpack/androidx) which is part of [Jetpack](/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider [migrating](/jetpack/androidx/migrate) existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library [class\n| mappings](/jetpack/androidx/migrate/class-mappings).\n\n\n`\npublic\n\nfinal\n\nclass\nModelCodec\n`\n\n\n`\n\nextends `[Object](https://developer.android.com/reference/java/lang/Object.html)`\n\n\n`\n\n`\n\n\n`\n\n|---|----------------------------------------------------|\n| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) ||\n| ↳ | android.support.test.espresso.web.model.ModelCodec |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\nEncodes/Decodes JSON.\n\nSummary\n-------\n\n| ### Public methods ||\n|---------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ` static void` | ` `[addDeJSONFactory](/reference/android/support/test/espresso/web/model/ModelCodec#addDeJSONFactory(android.support.test.espresso.web.model.JSONAble.DeJSONFactory))`(`[JSONAble.DeJSONFactory](/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory)` dejson) ` Adds a DeJSONFactory to intercept JSONObjects and replace them with more suitable types. |\n| ` static `[Evaluation](/reference/android/support/test/espresso/web/model/Evaluation) | ` `[decodeEvaluation](/reference/android/support/test/espresso/web/model/ModelCodec#decodeEvaluation(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` json) ` Transforms a JSON string to an evaluation. |\n| ` static `[String](https://developer.android.com/reference/java/lang/String.html) | ` `[encode](/reference/android/support/test/espresso/web/model/ModelCodec#encode(java.lang.Object))`(`[Object](https://developer.android.com/reference/java/lang/Object.html)` javaObject) ` Encodes a Java Object into a JSON string. |\n| ` static void` | ` `[removeDeJSONFactory](/reference/android/support/test/espresso/web/model/ModelCodec#removeDeJSONFactory(android.support.test.espresso.web.model.JSONAble.DeJSONFactory))`(`[JSONAble.DeJSONFactory](/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory)` dejson) ` Removes a DeJSONFactory from the list of factories that transform JSONObjects to java objects. |\n\n| ### Inherited methods |\n|-----------------------|---|\n| From class ` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object.html)` ` |-------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object.html) | ` clone() ` | | ` boolean` | ` equals(`[Object](https://developer.android.com/reference/java/lang/Object.html)` arg0) ` | | ` void` | ` finalize() ` | | ` final `[Class](https://developer.android.com/reference/java/lang/Class.html)`\u003c?\u003e` | ` getClass() ` | | ` int` | ` hashCode() ` | | ` final void` | ` notify() ` | | ` final void` | ` notifyAll() ` | | ` `[String](https://developer.android.com/reference/java/lang/String.html) | ` toString() ` | | ` final void` | ` wait(long arg0, int arg1) ` | | ` final void` | ` wait(long arg0) ` | | ` final void` | ` wait() ` | ||\n\nPublic methods\n--------------\n\n### addDeJSONFactory\n\n```\nvoid addDeJSONFactory (JSONAble.DeJSONFactory dejson)\n```\n\nAdds a DeJSONFactory to intercept JSONObjects and replace them with more suitable types.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|----------|---------------------------------|\n| `dejson` | `JSONAble.DeJSONFactory` \u003cbr /\u003e |\n\n### decodeEvaluation\n\n```\nEvaluation decodeEvaluation (String json)\n```\n\nTransforms a JSON string to an evaluation.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|--------|-----------------|\n| `json` | `String` \u003cbr /\u003e |\n\n| Returns ||\n|-----------------------------------------------------------------------------|--------|\n| [Evaluation](/reference/android/support/test/espresso/web/model/Evaluation) | \u003cbr /\u003e |\n\n### encode\n\n```\nString encode (Object javaObject)\n```\n\nEncodes a Java Object into a JSON string.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|--------------|-----------------|\n| `javaObject` | `Object` \u003cbr /\u003e |\n\n| Returns ||\n|-------------------------------------------------------------------------|--------|\n| [String](https://developer.android.com/reference/java/lang/String.html) | \u003cbr /\u003e |\n\n### removeDeJSONFactory\n\n```\nvoid removeDeJSONFactory (JSONAble.DeJSONFactory dejson)\n```\n\nRemoves a DeJSONFactory from the list of factories that transform JSONObjects to java objects.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|----------|---------------------------------|\n| `dejson` | `JSONAble.DeJSONFactory` \u003cbr /\u003e |\n\n-\n\n Interfaces\n ----------\n\n - [Atom](/reference/android/support/test/espresso/web/model/Atom)\n - [JSONAble](/reference/android/support/test/espresso/web/model/JSONAble)\n - [JSONAble.DeJSONFactory](/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory)\n - [TransformingAtom.Transformer](/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)\n-\n\n Classes\n -------\n\n - [Atoms](/reference/android/support/test/espresso/web/model/Atoms)\n - [ElementReference](/reference/android/support/test/espresso/web/model/ElementReference)\n - [Evaluation](/reference/android/support/test/espresso/web/model/Evaluation)\n - [ModelCodec](/reference/android/support/test/espresso/web/model/ModelCodec)\n - [SimpleAtom](/reference/android/support/test/espresso/web/model/SimpleAtom)\n - [TransformingAtom](/reference/android/support/test/espresso/web/model/TransformingAtom)\n - [WindowReference](/reference/android/support/test/espresso/web/model/WindowReference)\n-\n\n Enums\n -----\n\n - [SimpleAtom.ElementReferencePlacement](/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement)"]]