René's URL Explorer Experiment


Title: Make usage of http clients (apache, OkHttp, Jetty, Asynch) easier · Issue #343 · cloudinary/cloudinary_java · GitHub

Open Graph Title: Make usage of http clients (apache, OkHttp, Jetty, Asynch) easier · Issue #343 · cloudinary/cloudinary_java

X Title: Make usage of http clients (apache, OkHttp, Jetty, Asynch) easier · Issue #343 · cloudinary/cloudinary_java

Description: Feature request for Cloudinary Java SDK General idea: making the settings of http client library to be used easier for consumers of the SDK, by enabling configuration via new Cloudinary(...) constructor. Explain your use case I want to u...

Open Graph Description: Feature request for Cloudinary Java SDK General idea: making the settings of http client library to be used easier for consumers of the SDK, by enabling configuration via new Cloudinary(...) constr...

X Description: Feature request for Cloudinary Java SDK General idea: making the settings of http client library to be used easier for consumers of the SDK, by enabling configuration via new Cloudinary(...) constr...

Opengraph URL: https://github.com/cloudinary/cloudinary_java/issues/343

X: @github

direct link

Domain: patch-diff.githubusercontent.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Make usage of http clients (apache, OkHttp, Jetty, Asynch) easier","articleBody":"## Feature request for Cloudinary Java SDK\r\n\r\nGeneral idea: making the settings of http client library to be used easier for consumers of the SDK,\r\nby enabling configuration via `new Cloudinary(...)` constructor.\r\n\r\n## Explain your use case\r\nI want to use plain java http client, instead of Apache one.\r\n\r\n## Describe the problem you’re trying to solve\r\nIn `Cloudinary.loadStrategies()` there's a fixed list of strings with classnames, which a consumer of the SDK can't change.\r\nThis means even if I provide my own strategy, this will not loaded and I still being forced to add dependency for apache http.\r\n(hint: technically: when the class `om.cloudinary.http5.ApiStrategy` is not found, an `UnknownError` is thrown, which is bad)\r\n\r\nAlso this brings me to another point: the constructor of Cloudinary should better accept Configuration object, instead of `Map config`. It's very annoying for me as an SDK user, to provide a Map with configs. \r\nI get no auto-completion on Maps and must find details in either source code or documentation (which is just cumbersome).\r\nSo I don't know immediately what config options are available, that I could e.g. provide HTTP proxy address.\r\n\r\n(Sorry, if I mix two problems here ... I came to these two, when I thought about a solution proposal, below)\r\n\r\n## Do you have a proposed solution?\r\nYES.\r\nThe constructor of Cloudinary.class (or better the Configuration.class) could have some new field `apiStrategy` of type `class\u003cAbstractApiStrategy\u003e`. And another one for the UploadStrategy.\r\nThen, the loadStragies() method will not load by name (which can contain typos), but rather by class(type) directly.\r\n\r\nOn the second problem, adding a new (overloaded) constructor to Cloudinary is easy to add, but that's not sufficient.\r\nIdeally, the Configuration class will provide a convenient Builder function, so users of the SDK are better guided,\r\nand plausibility checks can easier be implemented.\r\n\r\nI'm happy to provide a PR, if this resonates with you.","author":{"url":"https://github.com/nitram509","@type":"Person","name":"nitram509"},"datePublished":"2024-10-03T20:45:30.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":6},"url":"https://github.com/343/cloudinary_java/issues/343"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:cb68a145-edf8-85cb-2c10-fa6a8924952a
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-id8B86:2B9D24:C7DE31:10A5C35:697C3786
html-safe-noncebd4a95c322071749737fb3245233e6d173032010b29c0d801c1d72760f38993d
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4Qjg2OjJCOUQyNDpDN0RFMzE6MTBBNUMzNTo2OTdDMzc4NiIsInZpc2l0b3JfaWQiOiI4Nzc3ODUxOTY3MTU5MTU0NTY2IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac366c6f1f316cd60be01b2d1a3f123fcc52db72a985e94c1679d2b0eb91b28946
hovercard-subject-tagissue:2564973443
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/cloudinary/cloudinary_java/343/issue_layout
twitter:imagehttps://opengraph.githubassets.com/ddc53d0fcddd92e3d667b8610b9472125f547c0bc292332a4699eac6e9a95081/cloudinary/cloudinary_java/issues/343
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/ddc53d0fcddd92e3d667b8610b9472125f547c0bc292332a4699eac6e9a95081/cloudinary/cloudinary_java/issues/343
og:image:altFeature request for Cloudinary Java SDK General idea: making the settings of http client library to be used easier for consumers of the SDK, by enabling configuration via new Cloudinary(...) constr...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamenitram509
hostnamegithub.com
expected-hostnamegithub.com
Noneda4f0ee56809799586f8ee546b27f94fe9b5893edfbf87732e82be45be013b52
turbo-cache-controlno-preview
go-importgithub.com/cloudinary/cloudinary_java git https://github.com/cloudinary/cloudinary_java.git
octolytics-dimension-user_id1460763
octolytics-dimension-user_logincloudinary
octolytics-dimension-repository_id6179800
octolytics-dimension-repository_nwocloudinary/cloudinary_java
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id6179800
octolytics-dimension-repository_network_root_nwocloudinary/cloudinary_java
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release787d8d274e314f52ce6d846c7581f9476d8dc736
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues/343#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fcloudinary%2Fcloudinary_java%2Fissues%2F343
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fcloudinary%2Fcloudinary_java%2Fissues%2F343
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=cloudinary%2Fcloudinary_java
Reloadhttps://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues/343
Reloadhttps://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues/343
Reloadhttps://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues/343
cloudinary https://patch-diff.githubusercontent.com/cloudinary
cloudinary_javahttps://patch-diff.githubusercontent.com/cloudinary/cloudinary_java
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Fcloudinary%2Fcloudinary_java
Fork 112 https://patch-diff.githubusercontent.com/login?return_to=%2Fcloudinary%2Fcloudinary_java
Star 172 https://patch-diff.githubusercontent.com/login?return_to=%2Fcloudinary%2Fcloudinary_java
Code https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java
Issues 17 https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues
Pull requests 30 https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/pulls
Actions https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/actions
Projects 0 https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/projects
Security 0 https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/security
Insights https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/pulse
Code https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java
Issues https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues
Pull requests https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/pulls
Actions https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/actions
Projects https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/projects
Security https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/security
Insights https://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/pulse
New issuehttps://patch-diff.githubusercontent.com/login?return_to=https://github.com/cloudinary/cloudinary_java/issues/343
New issuehttps://patch-diff.githubusercontent.com/login?return_to=https://github.com/cloudinary/cloudinary_java/issues/343
Make usage of http clients (apache, OkHttp, Jetty, Asynch) easierhttps://patch-diff.githubusercontent.com/cloudinary/cloudinary_java/issues/343#top
https://github.com/nitram509
https://github.com/nitram509
nitram509https://github.com/nitram509
on Oct 3, 2024https://github.com/cloudinary/cloudinary_java/issues/343#issue-2564973443
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.