aiShare Your Requirements
Sumit Rathi Oodles

Sumit Rathi (Manager-Enterprise Solutions Architect)

Experience: 13+ yrs

Sumit is a highly experienced Backend Developer with a diverse technological background. He possesses an extensive understanding of the latest technologies and has practical expertise in Core Java, Spring Boot, Hibernate, as well as relational databases like MySQL and PostgreSQL. His proficiency extends to API implementations, Microservices, and Web Services development. Sumit actively contributes to code enhancements and consistently delivers valuable contributions to various client projects, including MyHelpa, NOWcast Church Engagement Development, OptaPlanner - Employee Rostering, Optaplanner customization for a medical practice, Handymen Application Upgradation II, LabVue, and more. He showcases exceptional analytical skills and a creative mindset. Furthermore, he has a passion for reading books and exploring new technologies and innovations.

Sumit Rathi Oodles
Sumit Rathi
(Enterprise Solutions Architect)

Sumit is a highly experienced Backend Developer with a diverse technological background. He possesses an extensive understanding of the latest technologies and has practical expertise in Core Java, Spring Boot, Hibernate, as well as relational databases like MySQL and PostgreSQL. His proficiency extends to API implementations, Microservices, and Web Services development. Sumit actively contributes to code enhancements and consistently delivers valuable contributions to various client projects, including MyHelpa, NOWcast Church Engagement Development, OptaPlanner - Employee Rostering, Optaplanner customization for a medical practice, Handymen Application Upgradation II, LabVue, and more. He showcases exceptional analytical skills and a creative mindset. Furthermore, he has a passion for reading books and exploring new technologies and innovations.

LanguageLanguages

DotEnglish

Conversational

SkillsSkills

DotMQTT

60%

DotERP

80%

DotPayment Gateway Integration

60%

DotOSM

60%

DotLogistics API

60%

DotDjango

80%

DotMySQL

80%

DotStripe API

60%

DotAPI Integration

60%

DotTechnical Project Management

100%

DotGraphHopper

60%

DotRESTful API

60%

DotPython

60%

DotJavascript

80%

DotEDI

60%

DotCloud Platforms

60%

DotRoute Optimization

60%

DotOptaplanner

80%

DotTimefold

60%

DotBiometric Integration

60%

DotWhatsApp API

60%

DotWebhooks

60%

DotNo SQL/Mongo DB

80%

DotJava

100%

DotOAuth

60%

DotNode Js

60%

DotSpring Boot

100%

DotDatabase Management

60%

DotKafka

80%
ExpWork Experience / Trainings / Internship

Dec 2012-Present

Enterprise Solutions Architect

Gurugram


Oodles Technologies

Gurugram

Dec 2012-Present

EducationEducation

2008-2012

Dot

Echelon Institute of Technology

B.tech-Computer Science

Top Blog Posts
Stripe integration in grails While working on a project, I came across a requirement where I had to add payment part. So,In this blog I am going to share the details of how we can integrate stripe. Integration steps: 1. Create a stripe account. click here to create an account on stripe. 2. We will need to set two configuration items in Config.groovy grails.oodles.stripe.secretKey="sk_test..........." grails.oodles.stripe.publishableKey="pk_test......" Logged in your stripe account, click on the top-right link for Your Account and then Account Settings. Here, you can find your API Keys. 3. Next we need to include the JavaScript library provided by Stripe. Stripe.js makes it easy to collect credit card (and other similarly sensitive) details without having the information touch your server. 4. Add these jar files in your lib stripe-java-latest.jar 5. Add these fields in your .gsp <form action="" method="POST" id="payment-form"> <span class="payment-errors"> </span> <div class="form-row"> <label> <span>Card Number </span> <input type="text" size="20" data-stripe="number"/> </label> </div> <div class="form-row"> <label> <span>CVC </span> <input type="text" size="4" data-stripe="cvc"/> </label> </div> <div class="form-row"> <label> <span>Expiration (MM/YYYY)</span> <input type="text" size="2" data-stripe="exp-month"/> </label> <input type="text" size="4" data-stripe="exp-year"/> </div> <button type="submit">Submit Payment</button> </form> 6. If the card information entered by the user returned an error, it gets displayed on the page. If no errors were returned (i.e. a single-use token was created successfully),add the returned token to the form in the stripeToken field and submit the form to the server. we can make your payment request like Stripe.apiKey = grailsApplication.config.grails.plugins.stripe.secretKey Map chargeParams = ["amount":params.amount,"card":params.stripeToken] try { Charge.create(chargeParams); returnObject.put("status", "success") returnObject.put("message", "Transaction complete successfully.") } catch (CardException e) { // Since it's a decline, CardException will be caught returnObject.put("status", "error") returnObject.put("message", e.message) } catch (InvalidRequestException e) { // Invalid parameters were supplied to Stripe's API returnObject.put("status", "error") returnObject.put("message", e.message) } catch (AuthenticationException e) { // Authentication with Stripe's API failed // (maybe you changed API keys recently) returnObject.put("status", "error") returnObject.put("message", e.message) } catch (APIConnectionException e) { // Network communication with Stripe failed returnObject.put("status", "error") returnObject.put("message", e.message) } catch (StripeException e) { // Display a very generic error to the user, and maybe send // yourself an email returnObject.put("status", "error") returnObject.put("message", e.message) } Hope it helps :) Sumit Rathi [email protected]
Implement SocialAuth using Grails While working on a project, I came across a requirement where I had to get information from a social networking service such as Facebook, Twitter or Google+ for web application. There are so many libraries to implement oAuth and OpenID for different social network service. I did some research and found one common api for each social network service i.e. SocialAuth. SocialAuth is a Java library. You can download latest java library form here. Why we use SocialAuth? 1. There are many libraries for implementing Open ID but it is difficult to choose one that will do the integration quickly with the providers you want. 2. Even after implementing social auth using different library, it does not work out of the box for all providers. There are always certain things specific to a certain provider. For example the scopes are different as well as some steps in authorization may be different. How SocialAuth works? 1. Create your developer app account and get API keys from the provider like Facebook, Google+ etc. 2. Make a request for authentication using SocialAuth library.It will redirect the user to Facebook, Google+ etc website where they enter the credentials. 3. The Provider redirect to the user back to your application with a token. 4. You can pass this token to the SocialAuth library to get information about the user. Steps to implement SocialAuth 1. Make a properties file for consumer_key and consumer_secret key like oauth_counsuemr.properties. #googleplus googleapis.com.consumer_key = ----------- googleapis.com.consumer_secret = ---------- #yahoo api.login.yahoo.com.consumer_key = -------------- api.login.yahoo.com.consumer_secret = ------------------- #twitter twitter.com.consumer_key = --------------- twitter.com.consumer_secret = ----------------------- #facebook graph.facebook.com.consumer_key = ---------------- graph.facebook.com.consumer_secret = ------------------- #hotmail #consent.live.com.consumer_key = -------------- #consent.live.com.consumer_secret = ----------------- #LinkedIn api.linkedin.com.consumer_key = --------- api.linkedin.com.consumer_secret = ----------------- 2. Make an Action for Authentication. def authenticate() { SocialAuthConfig config = SocialAuthConfig.getDefault() //You can also pass input stream, properties object or properties file name. config.load() //Create an instance of SocialAuthManager and set config SocialAuthManager manager = new SocialAuthManager() manager.setSocialAuthConfig(config) // URL of YOUR application which will be called after authentication String successUrl, url successUrl= grailsApplication.config.grails.serverURL +"/socialAuthentication/getToken" // get Provider URL to which you should redirect for authentication. // id can have values "facebook", "twitter", "yahoo" etc. or the OpenID URL url = manager.getAuthenticationUrl(params.id, successUrl) // Store in session session.setAttribute("authManager", manager) redirect(url) } 3. Make an Action to get token information def getToken() { try{ // get the social auth manager from session SocialAuthManager manager = (SocialAuthManager)session.getAttribute("authManager") // call connect method of manager which returns the provider object. // Pass request parameter map while calling connect method. AuthProvider provider = manager.connect(SocialAuthUtil.getRequestParametersMap(request)) // get profile Profile profileInfo = provider.getUserProfile(); log.debug"profileInfo "+profileInfo // do your operation here }catch(SocialAuthManagerStateException exception){ log.error("Exception occurs while connecting with SocialAuthManager--->"+exception.getMessage()) }catch(Exception e){ log.error("Exception --->"+e.getMessage()) } For more information click here. Hope it helps :) Sumit Rathi
Show Image and label in Drop down list in Flex In this blog I am going to share the details of how we can show image in drop down list. The DropDownList control pops up a list when the user selects the anchor. When the user selects an item from the drop-down list, the data item appears in the prompt area of the control. MXML Syntax:-User can define a DropDownList control by using <s:DropDownList> tag.Data provider is the default property of the dropdownlist. You can pass data for dropdown list using this property. Example:- We can customise the dropdown list desgin and pass the data according to the desgin requirments. Here is the example to show image and label in a dropdown list. Hope it helps :) Sumit Rathi [email protected]
Draw Circle Line And Rectangle Dynamically Using Flex While working on a project, I came across a requirement where we had to draw annotations over a Video frame by frame. We are using Flex for the purpose. I would like to share the details of how we can draw a Line, a circle, a rectangle dynamically on video using flex. Flex provides easy functions to draw the line, circle, and rectangle. To draw annotations, I am using Canvas container because Canvas is the only container that can explicitly specify the location of its children within the container. MXML Syntax:-User can define a canvas by using mx:Canvas tag and specif its properties. Like, the following code snippet. We can use the Graphics class to draw different shapes like Circle, Line, Rounded Rectangle, Rectangle etc. Here is the sample code to draw the circle:- var component:UIComponent = new UIComponent(); component.graphics.clear() component.graphics.lineStyle(4,0Xffffff,.9); component.graphics.drawCircle(10,10,100); component.graphics.endFill(); addElement(component); Summary of graphics functions:- "clear()" is used to remove all the drawing output associate with the current object. "lineStyle()" is used to define the stroke of lines. The three parameters (thickness, color, and alpha) "drawCircle()" is used to draw the circle. We can pass X, y position and radius of the circle. Here is the one example to draw circle, rectangle, and line dynamically. Hope it helps :) Sumit Rathi [email protected]