useShortClassNames

Description

With this configuration toggle you can specify that all class names in the diagram should be generated without any package name.

If you only want to shorten the class names in fields and methods, you have to use the useShortClassNamesInFieldsAndMethods configuration option.

This feature is only available with version 2.0.0 or higher.

Default value

The default value of this configuration option is false (no package name is removed).

Example

In the following example there are three dependencies in the maven dependency hierarchy which build the classpath for all further generation:

	<dependencies>
		<dependency>
			<groupId>de.elnarion.util</groupId>
			<artifactId>plantuml-generator-util</artifactId>
			<version>@project.version@</version>
			<classifier>tests</classifier>
			<type>test-jar</type>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.16.1</version>
		</dependency>
		<dependency>
			<groupId>javax.persistence</groupId>
			<artifactId>javax.persistence-api</artifactId>
			<version>2.2</version>
		</dependency>
	</dependencies>

From this classpath all classes of the package "de.elnarion.test.domain.t0025", which are also used by the JUnit-tests of the PlantUML generator utility, should be generated as class diagram with the following plugin configuration:

			<plugin>
				<artifactId>plantuml-generator-maven-plugin</artifactId>
				<groupId>de.elnarion.maven</groupId>
				<version>@project.version@</version>
				<executions>
					<execution>
						<id>generate-simple-diagram</id>
						<goals>
							<goal>generate</goal>
						</goals>
						<phase>generate-test-sources</phase>
						<configuration>
							<outputFilename>testdiagram1.txt</outputFilename>
							<scanPackages>
								<scanPackage>de.elnarion.test.domain.t0025</scanPackage>
							</scanPackages>
							<useShortClassNames>true</useShortClassNames>
						</configuration>
					</execution>
				</executions>
			</plugin>

but all class names should not have a package in the diagram. This configuration leads to this diagram:

0023_use_short_classnames_diagram

and produces this PlantUML diagram text:

@startuml

annotation AnnotationA

interface InterfaceC {
}


abstract class SuperClassC {
}


class TestClassA {
}


class TestClassB {
	{field} -internalField : ClassA
}


class TestClassC {
	{method} +getTestClassA ( paramTestClassB1 : TestClassB ) : TestClassA
}




SuperClassC -->  InterfaceC : interfaceC
TestClassA --  AnnotationA
TestClassB "1" o-- "0..*"  TestClassA : listTestClassA
TestClassC -->  TestClassB : fieldTestClassB
TestClassC --|>  SuperClassC
TestClassC ..|>  InterfaceC


@enduml