use of com.intellij.openapi.diagnostic.Logger in project android by JetBrains.
the class RenderErrorContributor method reportRelevantCompilationErrors.
private void reportRelevantCompilationErrors(@NotNull RenderLogger logger, @NotNull RenderTask renderTask) {
Module module = logger.getModule();
if (module == null) {
return;
}
Project project = module.getProject();
WolfTheProblemSolver wolfgang = WolfTheProblemSolver.getInstance(project);
if (!wolfgang.hasProblemFilesBeneath(module)) {
return;
}
HtmlBuilder builder = new HtmlBuilder();
String summary = null;
if (logger.seenTagPrefix(TAG_RESOURCES_PREFIX)) {
// Do we have errors in the res/ files?
// See if it looks like we have aapt problems
boolean haveResourceErrors = wolfgang.hasProblemFilesBeneath(virtualFile -> virtualFile.getFileType() == StdFileTypes.XML);
if (haveResourceErrors) {
summary = "Resource errors";
builder.addBold("This project contains resource errors, so aapt did not succeed, " + "which can cause rendering failures. Fix resource problems first.").newline().newline();
}
} else if (renderTask.getLayoutlibCallback().isUsed()) {
boolean hasJavaErrors = wolfgang.hasProblemFilesBeneath(virtualFile -> virtualFile.getFileType() == StdFileTypes.JAVA);
if (hasJavaErrors) {
summary = "Compilation errors";
builder.addBold("This project contains Java compilation errors, " + "which can cause rendering failures for custom views. " + "Fix compilation problems first.").newline().newline();
}
}
if (summary == null) {
return;
}
addIssue().setSeverity(HighlightSeverity.ERROR).setSummary(summary).setHtmlContent(builder).build();
}
use of com.intellij.openapi.diagnostic.Logger in project intellij-elixir by KronicDeth.
the class CallDefinitionClause method renderObject.
private void renderObject(@NotNull LookupElement lookupElement) {
Logger logger = Logger.getInstance(CallDefinitionClause.class);
Object object = lookupElement.getObject();
String userMessage = "CallDefinitionClause render called on LookupElement with null getPsiElement\n" + "## name\n" + "\n" + "```\n" + name + "\n" + "```\n" + "\n" + "## getObject()\n" + "\n" + "### toString()\n" + "\n" + "```\n" + object.toString() + "\n" + "```\n" + "\n" + "### getClass().getName()\n" + "\n" + "```\n" + object.getClass().getName() + "\n" + "```\n";
String details = Joiner.on("\n").join(new Throwable().getStackTrace());
String title = "CallDefinitionClause render called on LookupElement with null getPsiElement";
logger.error(LogMessageEx.createEvent(userMessage, details, title, null, (Attachment) null));
}
use of com.intellij.openapi.diagnostic.Logger in project intellij-community by JetBrains.
the class PortUnificationServerHandler method decode.
protected void decode(@NotNull ChannelHandlerContext context, @NotNull ByteBuf buffer) throws Exception {
ChannelPipeline pipeline = context.pipeline();
if (detectSsl && SslHandler.isEncrypted(buffer)) {
SSLEngine engine = SSL_SERVER_CONTEXT.getValue().createSSLEngine();
engine.setUseClientMode(false);
pipeline.addLast(new SslHandler(engine), new ChunkedWriteHandler(), new PortUnificationServerHandler(delegatingHttpRequestHandler, false, detectGzip));
} else {
int magic1 = buffer.getUnsignedByte(buffer.readerIndex());
int magic2 = buffer.getUnsignedByte(buffer.readerIndex() + 1);
if (detectGzip && magic1 == 31 && magic2 == 139) {
pipeline.addLast(ZlibCodecFactory.newZlibEncoder(ZlibWrapper.GZIP), ZlibCodecFactory.newZlibDecoder(ZlibWrapper.GZIP), new PortUnificationServerHandler(delegatingHttpRequestHandler, detectSsl, false));
} else if (isHttp(magic1, magic2)) {
NettyUtil.addHttpServerCodec(pipeline);
pipeline.addLast("delegatingHttpHandler", delegatingHttpRequestHandler);
final Logger logger = Logger.getInstance(BuiltInServer.class);
if (logger.isDebugEnabled()) {
pipeline.addLast(new ChannelOutboundHandlerAdapter() {
@Override
public void write(ChannelHandlerContext context, Object message, ChannelPromise promise) throws Exception {
if (message instanceof HttpResponse) {
HttpResponse response = (HttpResponse) message;
logger.debug("OUT HTTP: " + response.toString());
}
super.write(context, message, promise);
}
});
}
} else if (magic1 == 'C' && magic2 == 'H') {
buffer.skipBytes(2);
pipeline.addLast(new CustomHandlerDelegator());
} else {
Logger.getInstance(BuiltInServer.class).warn("unknown request, first two bytes " + magic1 + " " + magic2);
context.close();
}
}
// must be after new channels handlers addition (netty bug?)
pipeline.remove(this);
// Buffer will be automatically released after messageReceived, but we pass it to next handler, and next handler will also release, so, we must retain.
// We can introduce Decoder.isAutoRelease, but in this case, if error will be thrown while we are executing, buffer will not be released.
// So, it is robust solution just always release (Decoder does) and just retain (we - client) if autorelease behavior is not suitable.
buffer.retain();
// we must fire channel read - new added handler must read buffer
context.fireChannelRead(buffer);
}
use of com.intellij.openapi.diagnostic.Logger in project intellij-community by JetBrains.
the class UnsupportedFeaturesUtil method fillMaps.
private static void fillMaps() throws IOException {
Logger log = Logger.getInstance(UnsupportedFeaturesUtil.class.getName());
FileReader reader = new FileReader(PythonHelpersLocator.getHelperPath("/tools/versions.xml"));
try {
XMLReader xr = XMLReaderFactory.createXMLReader();
VersionsParser parser = new VersionsParser();
xr.setContentHandler(parser);
xr.parse(new InputSource(reader));
} catch (SAXException e) {
log.error("Improperly formed \"versions.xml\". " + e.getMessage());
} finally {
reader.close();
}
}
use of com.intellij.openapi.diagnostic.Logger in project android by JetBrains.
the class SdkModuleSetupStep method logAndroidSdkHomeNotFound.
private static void logAndroidSdkHomeNotFound() {
Logger log = getLog();
log.warn("Path to Android SDK not set");
List<Sdk> sdks = IdeSdks.getInstance().getEligibleAndroidSdks();
log.warn("# of eligible SDKs: " + sdks.size());
for (Sdk sdk : sdks) {
log.info("sdk: " + sdk.toString());
}
}
Aggregations