From: jsimomaa Date: Mon, 30 Oct 2017 12:28:10 +0000 (+0200) Subject: Remove http:.. prefix from logging in SCL X-Git-Tag: v1.31.0~80^2 X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=commitdiff_plain;h=58598dd648b043f1eab088d3231b395bc6783ebd;ds=sidebyside Remove http:.. prefix from logging in SCL refs #7549 Change-Id: Id730ceddab04756aabb3669edf2b93c15aac07f1 --- diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/java/LoggingModule.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/java/LoggingModule.java index dadc13aa7..552c93f64 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/java/LoggingModule.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/java/LoggingModule.java @@ -4,6 +4,7 @@ import org.cojen.classfile.TypeDesc; import org.osgi.service.component.annotations.Component; import org.simantics.scl.compiler.commands.CommandSession; import org.simantics.scl.compiler.common.names.Name; +import org.simantics.scl.compiler.compilation.CompilationContext; import org.simantics.scl.compiler.constants.JavaMethod; import org.simantics.scl.compiler.elaboration.contexts.SimplificationContext; import org.simantics.scl.compiler.elaboration.expressions.EApply; @@ -63,12 +64,7 @@ public class LoggingModule extends ConcreteModule { value.setMacroRule(new MacroRule() { @Override public Expression apply(SimplificationContext context, Type[] typeParameters, EApply apply) { - ConcreteModule module = context.getCompilationContext().module; - String identifier; - if (module != null) - identifier = module.getName().replaceAll("/", "."); - else - identifier = CommandSession.class.getName(); + String identifier = resolveModuleIdentifier(context.getCompilationContext()); apply.set(new ELiteral(javaMethod), new Expression[] { new EExternalConstant(LoggerFactory.getLogger(identifier), Logger) }); @@ -84,12 +80,7 @@ public class LoggingModule extends ConcreteModule { value.setMacroRule(new MacroRule() { @Override public Expression apply(SimplificationContext context, Type[] typeParameters, EApply apply) { - ConcreteModule module = context.getCompilationContext().module; - String identifier; - if (module != null) - identifier = module.getName().replaceAll("/", "."); - else - identifier = CommandSession.class.getName(); + String identifier = resolveModuleIdentifier(context.getCompilationContext()); apply.set(new ELiteral(javaMethod), new Expression[] { new EExternalConstant(LoggerFactory.getLogger(identifier), Logger), apply.parameters[0] @@ -106,12 +97,7 @@ public class LoggingModule extends ConcreteModule { value.setMacroRule(new MacroRule() { @Override public Expression apply(SimplificationContext context, Type[] typeParameters, EApply apply) { - ConcreteModule module = context.getCompilationContext().module; - String identifier; - if (module != null) - identifier = module.getName().replaceAll("/", "."); - else - identifier = CommandSession.class.getName(); + String identifier = resolveModuleIdentifier(context.getCompilationContext()); apply.set(new ELiteral(javaMethod), new Expression[] { new EExternalConstant(LoggerFactory.getLogger(identifier), Logger), apply.parameters[0], @@ -129,12 +115,7 @@ public class LoggingModule extends ConcreteModule { value.setMacroRule(new MacroRule() { @Override public Expression apply(SimplificationContext context, Type[] typeParameters, EApply apply) { - ConcreteModule module = context.getCompilationContext().module; - String identifier; - if (module != null) - identifier = module.getName().replaceAll("/", "."); - else - identifier = CommandSession.class.getName(); + String identifier = resolveModuleIdentifier(context.getCompilationContext()); apply.set(new ELiteral(javaMethod), new Expression[] { new EExternalConstant(LoggerFactory.getLogger(identifier), Logger), apply.parameters[0], @@ -152,12 +133,7 @@ public class LoggingModule extends ConcreteModule { value.setMacroRule(new MacroRule() { @Override public Expression apply(SimplificationContext context, Type[] typeParameters, EApply apply) { - ConcreteModule module = context.getCompilationContext().module; - String identifier; - if (module != null) - identifier = module.getName().replaceAll("/", "."); - else - identifier = CommandSession.class.getName(); + String identifier = resolveModuleIdentifier(context.getCompilationContext()); apply.set(new ELiteral(javaMethod), new Expression[] { new EExternalConstant(LoggerFactory.getLogger(identifier), Logger), apply.parameters[0], @@ -181,4 +157,19 @@ public class LoggingModule extends ConcreteModule { private static String capitalizeFirstCharacter(String input) { return input.substring(0, 1).toUpperCase() + input.substring(1); } + + private static String resolveModuleIdentifier(CompilationContext context) { + ConcreteModule module = context.module; + String identifier; + if (module != null) { + String moduleName = module.getName(); + if (moduleName.startsWith("http://")) { + moduleName = moduleName.substring("http://".length()); + } + identifier = moduleName.replaceAll("/", "."); + } else { + identifier = CommandSession.class.getName(); + } + return identifier; + } }