<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:52:24 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[JAVA-488] Support serialization to Mongo extended JSON format</title>
                <link>https://jira.mongodb.org/browse/JAVA-488</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;p&gt;Provide full support for serialization to &lt;a href=&quot;http://www.mongodb.org/display/DOCS/Mongo+Extended+JSON&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.mongodb.org/display/DOCS/Mongo+Extended+JSON&lt;/a&gt;.  This can be useful for REST interfaces or other tools that use the java driver.&lt;/p&gt;

&lt;p&gt;So as not to break existing applications that rely on the current behavior, the output of the com.mongodb.util.JSON.serialize method will not be changed.  Instead, use the following:&lt;/p&gt;

&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;com.mongodb.util.JSONSerializers.getStrict().serialize(...)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</description>
                <environment></environment>
        <key id="26546">JAVA-488</key>
            <summary>Support serialization to Mongo extended JSON format</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="bryan.reinero">Bryan Reinero</assignee>
                                    <reporter username="antoine">Antoine Girbal</reporter>
                        <labels>
                    </labels>
                <created>Tue, 13 Dec 2011 23:09:17 +0000</created>
                <updated>Mon, 18 Jun 2012 19:36:08 +0000</updated>
                            <resolved>Fri, 20 Apr 2012 17:22:49 +0000</resolved>
                                                    <fixVersion>2.8.0</fixVersion>
                                                        <votes>2</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="134040" author="jeff.yemin" created="Mon, 18 Jun 2012 19:36:08 +0000"  >&lt;p&gt;Closing for 2.8.0 release.&lt;/p&gt;</comment>
                            <comment id="125908" author="auto" created="Mon, 4 Jun 2012 21:15:17 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-488&quot; title=&quot;Support serialization to Mongo extended JSON format&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-488&quot;&gt;&lt;del&gt;JAVA-488&lt;/del&gt;&lt;/a&gt;: Rolling back unintentional API change&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/0da01d17c97b05e2ceae2556e86ca4cdce2cd5d7&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/0da01d17c97b05e2ceae2556e86ca4cdce2cd5d7&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="125907" author="auto" created="Mon, 4 Jun 2012 21:15:15 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{u&apos;login&apos;: u&apos;jyemin&apos;, u&apos;name&apos;: u&apos;Jeff Yemin&apos;, u&apos;email&apos;: u&apos;jeff.yemin@10gen.com&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-488&quot; title=&quot;Support serialization to Mongo extended JSON format&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-488&quot;&gt;&lt;del&gt;JAVA-488&lt;/del&gt;&lt;/a&gt;: API changes for JSON serialization.  Clients should use static methods in the new JSONSerializers class&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/7d56b141c52b7aaed988abd26dc13b0f84c3925f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/7d56b141c52b7aaed988abd26dc13b0f84c3925f&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="112178" author="jeff.yemin" created="Fri, 20 Apr 2012 22:10:02 +0000"  >&lt;p&gt;There will be a legacy serializer which works as the current driver does, so as not to break existing applications that rely on the current behavior.  As Bryan says, the strict serializer will work as per the spec.&lt;/p&gt;</comment>
                            <comment id="112168" author="antoine" created="Fri, 20 Apr 2012 21:53:04 +0000"  >&lt;p&gt;note that the java serialization may not respect part of the spec..&lt;br/&gt;
For example dates are output as string representing the date, not milliseconds (which is much better for human eye)&lt;/p&gt;</comment>
                            <comment id="112040" author="scotthernandez" created="Fri, 20 Apr 2012 17:53:03 +0000"  >&lt;p&gt;Yep, here is the actual commit: &lt;a href=&quot;https://github.com/mongodb/mongo-java-driver/commit/5db92cb8bd04858eb36d9b81510f40b9188c3bb2&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-java-driver/commit/5db92cb8bd04858eb36d9b81510f40b9188c3bb2&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That was more for Antoine as a reference; sorry if that wasn&apos;t clear.&lt;/p&gt;</comment>
                            <comment id="112039" author="jeff.yemin" created="Fri, 20 Apr 2012 17:51:07 +0000"  >&lt;p&gt;It does.&lt;/p&gt;</comment>
                            <comment id="112037" author="scotthernandez" created="Fri, 20 Apr 2012 17:49:31 +0000"  >&lt;p&gt;The implementation should follow this format, which is our standard: &lt;a href=&quot;http://www.mongodb.org/display/DOCS/Mongo+Extended+JSON&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.mongodb.org/display/DOCS/Mongo+Extended+JSON&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="112035" author="antoine" created="Fri, 20 Apr 2012 17:43:11 +0000"  >&lt;p&gt;what was the implementation like?&lt;br/&gt;
Sorry I wasnt very explicit when creating ticket, I think the idea is to make binary data properly roundtripable through JSON.&lt;br/&gt;
This can be done easily using a subobject like we do for other types.&lt;br/&gt;
So instead of &lt;/p&gt;
{a: &amp;lt;binary&amp;gt;}
&lt;p&gt;Something like {a: {$bin: &quot;base64str&quot;, $type: N}}&lt;/p&gt;</comment>
                            <comment id="112030" author="bryan.reinero@10gen.com" created="Fri, 20 Apr 2012 17:22:49 +0000"  >&lt;p&gt;github commit 5db92cb8bd04858eb36d9b81510f40b9188c3bb2&lt;/p&gt;</comment>
                            <comment id="97669" author="jeff.yemin" created="Sun, 11 Mar 2012 21:35:56 +0000"  >&lt;p&gt;This shouldn&apos;t be the default, since it changes current behavior, and is also not possible to distinguish the base 64 from other text.  How about a method like JSON.serialize(Object o, JSON.Options options) where the Options class allows control over binary data presentation.&lt;/p&gt;

&lt;p&gt;I don&apos;t see an obvious way to allow round-tripping with JSON.parse(String s)&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrhbgv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>14658</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>