Markwon/library/src/main/java/ru/noties/markwon/UrlProcessorAndroidAssets.java
Dimitry d70a4b7b91
Feature: Revert spans order (#11)
* Basic revert spans functionality

* Defensive copy in SpannableBuilder

* SpannableBuilder

* Removed nullablity from Markwon class (no null markdown)
2017-11-11 15:52:06 +03:00

41 lines
1.1 KiB
Java

package ru.noties.markwon;
import android.net.Uri;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.text.TextUtils;
@SuppressWarnings({"unused", "WeakerAccess"})
public class UrlProcessorAndroidAssets implements UrlProcessor {
private final UrlProcessorRelativeToAbsolute assetsProcessor
= new UrlProcessorRelativeToAbsolute("file:///android_asset/");
private final UrlProcessor processor;
public UrlProcessorAndroidAssets() {
this(null);
}
public UrlProcessorAndroidAssets(@Nullable UrlProcessor parent) {
this.processor = parent;
}
@NonNull
@Override
public String process(@NonNull String destination) {
final String out;
final Uri uri = Uri.parse(destination);
if (TextUtils.isEmpty(uri.getScheme())) {
out = assetsProcessor.process(destination);
} else {
if (processor != null) {
out = processor.process(destination);
} else {
out = destination;
}
}
return out;
}
}