All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.softicar.platform.common.core.java.classes.name.JavaClassNameDeterminer Maven / Gradle / Ivy

Go to download

The SoftiCAR Platform is a lightweight, Java-based library to create interactive business web applications.

There is a newer version: 50.0.0
Show newest version
package com.softicar.platform.common.core.java.classes.name;

import java.util.Objects;
import java.util.Optional;

/**
 * Determines {@link JavaClassName} instances.
 *
 * @author Alexander Schmidt
 */
public class JavaClassNameDeterminer {

	/**
	 * Determines a {@link JavaClassName} from a given field descriptor.
	 * 

* If the given field descriptor does not designate a class, or if it is an * empty {@link String}, {@link Optional#empty()} is returned. * * @param fieldDescriptor * the field descriptor (never null) * @return the {@link JavaClassName} */ public Optional fromFieldDescriptor(String fieldDescriptor) { Objects.requireNonNull(fieldDescriptor); String output = fieldDescriptor; if (output.endsWith(";")) { output = output.substring(0, output.length() - 1); if (output.startsWith("[")) { output = output.substring(1); } if (output.startsWith("L")) { output = output.substring(1); return Optional.of(new JavaClassName(output)); } } return Optional.empty(); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy