导航菜单

页面标题

页面副标题

Easycash v3.75.13 - TwitterNodeRenderer.java 源代码

正在查看: Easycash v3.75.13 应用的 TwitterNodeRenderer.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package br.tiagohm.markdownview.ext.twitter.internal;

import android.os.ConditionVariable;
import android.text.TextUtils;
import br.tiagohm.markdownview.ext.twitter.Twitter;
import com.vladsch.flexmark.html.CustomNodeRenderer;
import com.vladsch.flexmark.html.HtmlWriter;
import com.vladsch.flexmark.html.renderer.LinkType;
import com.vladsch.flexmark.html.renderer.NodeRenderer;
import com.vladsch.flexmark.html.renderer.NodeRendererContext;
import com.vladsch.flexmark.html.renderer.NodeRendererFactory;
import com.vladsch.flexmark.html.renderer.NodeRenderingHandler;
import com.vladsch.flexmark.util.options.DataHolder;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.HashSet;
import java.util.Set;

public class TwitterNodeRenderer implements NodeRenderer {

    private ConditionVariable f1141a = new ConditionVariable(false);

    private String f1142b = null;

    public static class Factory implements NodeRendererFactory {
        public NodeRenderer b(DataHolder dataHolder) {
            return new TwitterNodeRenderer(dataHolder);
        }
    }

    private class LoadTweetRunnable implements Runnable {

        private String f1144a;

        public LoadTweetRunnable(String str) {
            this.f1144a = str;
        }

        @Override
        public void run() {
            throw new UnsupportedOperationException("Method not decompiled: br.tiagohm.markdownview.ext.twitter.internal.TwitterNodeRenderer.LoadTweetRunnable.run():void");
        }
    }

    public TwitterNodeRenderer(DataHolder dataHolder) {
    }

    public void g(Twitter twitter, NodeRendererContext nodeRendererContext, HtmlWriter htmlWriter) {
        String format;
        String obj = twitter.P0().toString();
        if (nodeRendererContext.d()) {
            nodeRendererContext.f(twitter);
            return;
        }
        if (TextUtils.isEmpty(obj)) {
            return;
        }
        try {
            String encode = URLEncoder.encode(nodeRendererContext.c(LinkType.b, twitter.V0().O(), (Boolean) null).d(), "utf-8");
            if (obj.equals("tweet")) {
                format = String.format("https://publish.twitter.com/oembed?url=https://twitter.com/twitter/status/%s", encode);
            } else {
                if (!obj.equals("tweet-hide-cards")) {
                    if (!obj.equals("follow")) {
                        nodeRendererContext.f(twitter);
                        return;
                    } else {
                        this.f1142b = String.format("<a href=\"https://twitter.com/%s\" data-size=\"large\" class=\"twitter-follow-button\" data-show-count=\"true\">Follow @%s</a><script async src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>", encode, encode);
                        htmlWriter.d0(twitter.m()).f(this.f1142b);
                        return;
                    }
                }
                format = String.format("https://publish.twitter.com/oembed?url=https://twitter.com/twitter/status/%s&hide_media=true", encode);
            }
            this.f1142b = null;
            new Thread(new LoadTweetRunnable(format)).start();
            this.f1141a.close();
            this.f1141a.block();
            String str = this.f1142b;
            if (str == null) {
                nodeRendererContext.f(twitter);
            } else {
                this.f1142b = str.replaceAll("src=\"//", "src=\"https://");
                htmlWriter.d0(twitter.m()).f(this.f1142b);
            }
        } catch (UnsupportedEncodingException unused) {
            nodeRendererContext.f(twitter);
        }
    }

    public Set<NodeRenderingHandler<?>> c() {
        HashSet hashSet = new HashSet();
        hashSet.add(new NodeRenderingHandler(Twitter.class, new CustomNodeRenderer<Twitter>() {
            public void a(Twitter twitter, NodeRendererContext nodeRendererContext, HtmlWriter htmlWriter) {
                TwitterNodeRenderer.this.g(twitter, nodeRendererContext, htmlWriter);
            }
        }));
        return hashSet;
    }
}