Hi all, Currently, the main String libs we are using are "commons.lang" and "commons.lang3" (either directly or by our facade, "com.cloud.utils"). We have a current discussion about using them directly or via a facade (such as "com.cloud.utils"); however, a third implementation has been added (google.common.base), which adds more to the discussion. "commons.lang" already implement all we need; therefore, adding a third one does not seem to add/improve/help with anything, but adding more moving parts and libraries that we need to watch out for (managing versions, checking for security issues, and so on).
I created a PR (https://github.com/apache/cloudstack/pull/5386) to replace "google.common.base" with "commons.lang3". However, and as Daan suggested too, I'd like to go forward and revisit this discussion to standardize our code. To guide it, I'd like to start with what I think is the main topic: - Should we use a facade to "commons.lang"? Which are the pros and cons, according to your perspective? Best regards, Daniel.