spring-projects / spring-projects/spring-ldap

Distinguish between utility classes e.g. LdapNameBuilder and LdapUtils

Open
#434 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
375
Forks
501
Avg merge
6h 4m
Merged PRs (30d)
63

Description

This one is not a bug report but rather an ux request.

When I started building a method which required me to create new LdapName objects I couldn't tell whether to use LdapNameBuilder or the LdapUtils methods for it. From what I could guess is that I should use the builder class, however, there is nothing that prevents me from using the LdapUtils class which is internally called from the builder anyway.

The JavaDocs for the org.springframework.ldap.support.LdapUtils class has the following opinion:

Generic utility methods for working with LDAP. Mainly for internal use within the framework, but also useful for custom code.

So if this class is for internal use why make it publicy available then? Okay it is usable for custom code, but this custom code could always call the builder too.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the public APIs and JavaDocs for LdapNameBuilder and LdapUtils, including how the builder delegates to the utility methods. Determine and document which class should be used for custom LDAP name creation and whether the public utility API needs a clearer distinction or redesign; completion requires an agreed API direction.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.