if (this.workspaceManager != null) {
synchronized (this.workspaceManager) {
QualifiedName qualifiedTypeName = resolveTypeConsName(type);
if (qualifiedTypeName != null) {
ModuleName moduleName = qualifiedTypeName.getModuleName();
ModuleTypeInfo typeInfo = workspaceManager.getModuleTypeInfo(moduleName);
if (typeInfo == null) {
iceLogger.log(Level.INFO, "The module " + moduleName + " does not exist.");
} else {
String typeName = qualifiedTypeName.getUnqualifiedName();
TypeConstructor typeCons = typeInfo.getTypeConstructor(typeName);
if (typeCons == null) {
iceLogger.log(Level.INFO, "The type constructor " + qualifiedTypeName + " does not exist.");
} else if (typeCons.getNDataConstructors() == 0) {
iceLogger.log(Level.INFO, "The type " + typeCons.getName() + " is not an algebraic type.");
} else {