swagger.yaml :: How to generate properties with “Long” data type and “Timestamp” datatype?









up vote
2
down vote

favorite












I am using swagger-codegen-maven-plugin to generate Java classes based on swagger.yaml spec.



I have added a property phoneNum in the swagger.yaml as below:



phoneNum:
type: number


I am expecting it generate the property with Integer or Long datatype.
But it got generated as BigDecimal phoneNum;



As per the swagger docs, it was mentioned to use format: int64



 phoneNum:
type: number
format: int64


But still, it ends up generating private BigDecimal phoneNum;



If anyone of you have faced similar issue and have a workaround, please share it here.



Thank you.










share|improve this question

























    up vote
    2
    down vote

    favorite












    I am using swagger-codegen-maven-plugin to generate Java classes based on swagger.yaml spec.



    I have added a property phoneNum in the swagger.yaml as below:



    phoneNum:
    type: number


    I am expecting it generate the property with Integer or Long datatype.
    But it got generated as BigDecimal phoneNum;



    As per the swagger docs, it was mentioned to use format: int64



     phoneNum:
    type: number
    format: int64


    But still, it ends up generating private BigDecimal phoneNum;



    If anyone of you have faced similar issue and have a workaround, please share it here.



    Thank you.










    share|improve this question























      up vote
      2
      down vote

      favorite









      up vote
      2
      down vote

      favorite











      I am using swagger-codegen-maven-plugin to generate Java classes based on swagger.yaml spec.



      I have added a property phoneNum in the swagger.yaml as below:



      phoneNum:
      type: number


      I am expecting it generate the property with Integer or Long datatype.
      But it got generated as BigDecimal phoneNum;



      As per the swagger docs, it was mentioned to use format: int64



       phoneNum:
      type: number
      format: int64


      But still, it ends up generating private BigDecimal phoneNum;



      If anyone of you have faced similar issue and have a workaround, please share it here.



      Thank you.










      share|improve this question













      I am using swagger-codegen-maven-plugin to generate Java classes based on swagger.yaml spec.



      I have added a property phoneNum in the swagger.yaml as below:



      phoneNum:
      type: number


      I am expecting it generate the property with Integer or Long datatype.
      But it got generated as BigDecimal phoneNum;



      As per the swagger docs, it was mentioned to use format: int64



       phoneNum:
      type: number
      format: int64


      But still, it ends up generating private BigDecimal phoneNum;



      If anyone of you have faced similar issue and have a workaround, please share it here.



      Thank you.







      java swagger swagger-codegen swagger-editor






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 10 at 3:40









      snmaddula

      21110




      21110






















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          1
          down vote



          accepted










          In order to generate a Long property you have to use integer as type and int64 as format



          phoneNum:
          type: integer
          format: int64


          Looking at AbstractJavaCodegen I think there is no way to generate a Timestamp property.

          The only available types are:



          • org.threeten.bp.LocalDate

          • org.threeten.bp.OffsetDateTime


          • org.joda.time.LocalDate


          • org.joda.time.DateTime

          • java.time.LocalDate

          • java.time.LocalDateTime

          • java.time.OffsetDateTime

          • java.util.Date

          Here's a way to convert OffsetDateTime to Timestamp



          OffsetDateTime dateTime = OffsetDateTime.now();
          Timestamp timestamp = Timestamp.valueOf(dateTime.atZoneSameInstant(ZoneId.systemDefault()).toLocalDateTime());





          share|improve this answer




















            Your Answer






            StackExchange.ifUsing("editor", function ()
            StackExchange.using("externalEditor", function ()
            StackExchange.using("snippets", function ()
            StackExchange.snippets.init();
            );
            );
            , "code-snippets");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "1"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53235812%2fswagger-yaml-how-to-generate-properties-with-long-data-type-and-timestamp%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            1
            down vote



            accepted










            In order to generate a Long property you have to use integer as type and int64 as format



            phoneNum:
            type: integer
            format: int64


            Looking at AbstractJavaCodegen I think there is no way to generate a Timestamp property.

            The only available types are:



            • org.threeten.bp.LocalDate

            • org.threeten.bp.OffsetDateTime


            • org.joda.time.LocalDate


            • org.joda.time.DateTime

            • java.time.LocalDate

            • java.time.LocalDateTime

            • java.time.OffsetDateTime

            • java.util.Date

            Here's a way to convert OffsetDateTime to Timestamp



            OffsetDateTime dateTime = OffsetDateTime.now();
            Timestamp timestamp = Timestamp.valueOf(dateTime.atZoneSameInstant(ZoneId.systemDefault()).toLocalDateTime());





            share|improve this answer
























              up vote
              1
              down vote



              accepted










              In order to generate a Long property you have to use integer as type and int64 as format



              phoneNum:
              type: integer
              format: int64


              Looking at AbstractJavaCodegen I think there is no way to generate a Timestamp property.

              The only available types are:



              • org.threeten.bp.LocalDate

              • org.threeten.bp.OffsetDateTime


              • org.joda.time.LocalDate


              • org.joda.time.DateTime

              • java.time.LocalDate

              • java.time.LocalDateTime

              • java.time.OffsetDateTime

              • java.util.Date

              Here's a way to convert OffsetDateTime to Timestamp



              OffsetDateTime dateTime = OffsetDateTime.now();
              Timestamp timestamp = Timestamp.valueOf(dateTime.atZoneSameInstant(ZoneId.systemDefault()).toLocalDateTime());





              share|improve this answer






















                up vote
                1
                down vote



                accepted







                up vote
                1
                down vote



                accepted






                In order to generate a Long property you have to use integer as type and int64 as format



                phoneNum:
                type: integer
                format: int64


                Looking at AbstractJavaCodegen I think there is no way to generate a Timestamp property.

                The only available types are:



                • org.threeten.bp.LocalDate

                • org.threeten.bp.OffsetDateTime


                • org.joda.time.LocalDate


                • org.joda.time.DateTime

                • java.time.LocalDate

                • java.time.LocalDateTime

                • java.time.OffsetDateTime

                • java.util.Date

                Here's a way to convert OffsetDateTime to Timestamp



                OffsetDateTime dateTime = OffsetDateTime.now();
                Timestamp timestamp = Timestamp.valueOf(dateTime.atZoneSameInstant(ZoneId.systemDefault()).toLocalDateTime());





                share|improve this answer












                In order to generate a Long property you have to use integer as type and int64 as format



                phoneNum:
                type: integer
                format: int64


                Looking at AbstractJavaCodegen I think there is no way to generate a Timestamp property.

                The only available types are:



                • org.threeten.bp.LocalDate

                • org.threeten.bp.OffsetDateTime


                • org.joda.time.LocalDate


                • org.joda.time.DateTime

                • java.time.LocalDate

                • java.time.LocalDateTime

                • java.time.OffsetDateTime

                • java.util.Date

                Here's a way to convert OffsetDateTime to Timestamp



                OffsetDateTime dateTime = OffsetDateTime.now();
                Timestamp timestamp = Timestamp.valueOf(dateTime.atZoneSameInstant(ZoneId.systemDefault()).toLocalDateTime());






                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 10 at 8:26









                Ruben DG

                43828




                43828



























                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.





                    Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                    Please pay close attention to the following guidance:


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53235812%2fswagger-yaml-how-to-generate-properties-with-long-data-type-and-timestamp%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Use pre created SQLite database for Android project in kotlin

                    Darth Vader #20

                    Ondo