mirror of
https://github.com/geometer/FBReaderJ.git
synced 2025-10-06 03:50:19 +02:00
MimeTypes refactoring; ZLLoadableImage is introduced
This commit is contained in:
parent
3f651a9f15
commit
989ea3ab0f
24 changed files with 55 additions and 50 deletions
|
@ -38,13 +38,13 @@ import org.geometerplus.zlibrary.ui.android.R;
|
||||||
|
|
||||||
import org.geometerplus.zlibrary.core.resources.ZLResource;
|
import org.geometerplus.zlibrary.core.resources.ZLResource;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLImage;
|
import org.geometerplus.zlibrary.core.image.ZLImage;
|
||||||
|
import org.geometerplus.zlibrary.core.image.ZLLoadableImage;
|
||||||
|
|
||||||
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageManager;
|
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageManager;
|
||||||
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageData;
|
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageData;
|
||||||
import org.geometerplus.zlibrary.ui.android.library.ZLAndroidLibrary;
|
import org.geometerplus.zlibrary.ui.android.library.ZLAndroidLibrary;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.network.NetworkTree;
|
import org.geometerplus.fbreader.network.NetworkTree;
|
||||||
import org.geometerplus.fbreader.network.NetworkImage;
|
|
||||||
import org.geometerplus.fbreader.network.tree.NetworkBookTree;
|
import org.geometerplus.fbreader.network.tree.NetworkBookTree;
|
||||||
|
|
||||||
import org.geometerplus.android.fbreader.tree.ZLAndroidTree;
|
import org.geometerplus.android.fbreader.tree.ZLAndroidTree;
|
||||||
|
@ -123,21 +123,21 @@ abstract class NetworkBaseActivity extends ListActivity
|
||||||
if (cover != null) {
|
if (cover != null) {
|
||||||
ZLAndroidImageData data = null;
|
ZLAndroidImageData data = null;
|
||||||
final ZLAndroidImageManager mgr = (ZLAndroidImageManager) ZLAndroidImageManager.Instance();
|
final ZLAndroidImageManager mgr = (ZLAndroidImageManager) ZLAndroidImageManager.Instance();
|
||||||
if (cover instanceof NetworkImage) {
|
if (cover instanceof ZLLoadableImage) {
|
||||||
final NetworkImage img = (NetworkImage) cover;
|
final ZLLoadableImage img = (ZLLoadableImage)cover;
|
||||||
if (img.isSynchronized()) {
|
if (img.isSynchronized()) {
|
||||||
data = mgr.getImageData(img);
|
data = mgr.getImageData(img);
|
||||||
} else if (!myAwaitedCovers.contains(img.Url)) {
|
} else if (!myAwaitedCovers.contains(img.getId())) {
|
||||||
final Runnable runnable = new Runnable() {
|
final Runnable runnable = new Runnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
myAwaitedCovers.remove(img.Url);
|
myAwaitedCovers.remove(img.getId());
|
||||||
final ListView view = NetworkBaseActivity.this.getListView();
|
final ListView view = NetworkBaseActivity.this.getListView();
|
||||||
view.invalidateViews();
|
view.invalidateViews();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
final NetworkView networkView = NetworkView.Instance();
|
final NetworkView networkView = NetworkView.Instance();
|
||||||
networkView.performCoverSynchronization(img, runnable);
|
networkView.performCoverSynchronization(img, runnable);
|
||||||
myAwaitedCovers.add(img.Url);
|
myAwaitedCovers.add(img.getId());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
data = mgr.getImageData(cover);
|
data = mgr.getImageData(cover);
|
||||||
|
|
|
@ -36,6 +36,7 @@ import org.geometerplus.zlibrary.ui.android.R;
|
||||||
|
|
||||||
import org.geometerplus.zlibrary.core.resources.ZLResource;
|
import org.geometerplus.zlibrary.core.resources.ZLResource;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLImage;
|
import org.geometerplus.zlibrary.core.image.ZLImage;
|
||||||
|
import org.geometerplus.zlibrary.core.image.ZLLoadableImage;
|
||||||
|
|
||||||
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageManager;
|
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageManager;
|
||||||
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageData;
|
import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageData;
|
||||||
|
@ -189,8 +190,8 @@ public class NetworkBookInfoActivity extends Activity implements NetworkView.Eve
|
||||||
if (cover != null) {
|
if (cover != null) {
|
||||||
ZLAndroidImageData data = null;
|
ZLAndroidImageData data = null;
|
||||||
final ZLAndroidImageManager mgr = (ZLAndroidImageManager) ZLAndroidImageManager.Instance();
|
final ZLAndroidImageManager mgr = (ZLAndroidImageManager) ZLAndroidImageManager.Instance();
|
||||||
if (cover instanceof NetworkImage) {
|
if (cover instanceof ZLLoadableImage) {
|
||||||
final NetworkImage img = (NetworkImage) cover;
|
final ZLLoadableImage img = (ZLLoadableImage)cover;
|
||||||
final NetworkView networkView = NetworkView.Instance();
|
final NetworkView networkView = NetworkView.Instance();
|
||||||
if (networkView.isInitialized()) {
|
if (networkView.isInitialized()) {
|
||||||
networkView.performCoverSynchronization(img, new Runnable() {
|
networkView.performCoverSynchronization(img, new Runnable() {
|
||||||
|
|
|
@ -34,6 +34,7 @@ import android.os.Message;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.image.ZLLoadableImage;
|
||||||
import org.geometerplus.zlibrary.core.network.ZLNetworkException;
|
import org.geometerplus.zlibrary.core.network.ZLNetworkException;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.network.*;
|
import org.geometerplus.fbreader.network.*;
|
||||||
|
@ -231,8 +232,8 @@ class NetworkView {
|
||||||
|
|
||||||
private final CoverSynchronizedHandler myCoverSynchronizedHandler = new CoverSynchronizedHandler();
|
private final CoverSynchronizedHandler myCoverSynchronizedHandler = new CoverSynchronizedHandler();
|
||||||
|
|
||||||
public void performCoverSynchronization(final NetworkImage image, Runnable finishRunnable) {
|
public void performCoverSynchronization(final ZLLoadableImage image, Runnable finishRunnable) {
|
||||||
LinkedList<Runnable> runnables = myOnCoverSyncRunnables.get(image.Url);
|
LinkedList<Runnable> runnables = myOnCoverSyncRunnables.get(image.getId());
|
||||||
if (runnables != null) {
|
if (runnables != null) {
|
||||||
runnables.add(finishRunnable);
|
runnables.add(finishRunnable);
|
||||||
return;
|
return;
|
||||||
|
@ -240,12 +241,12 @@ class NetworkView {
|
||||||
|
|
||||||
runnables = new LinkedList<Runnable>();
|
runnables = new LinkedList<Runnable>();
|
||||||
runnables.add(finishRunnable);
|
runnables.add(finishRunnable);
|
||||||
myOnCoverSyncRunnables.put(image.Url, runnables);
|
myOnCoverSyncRunnables.put(image.getId(), runnables);
|
||||||
|
|
||||||
myPool.execute(new Runnable() {
|
myPool.execute(new Runnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
image.synchronize();
|
image.synchronize();
|
||||||
myCoverSynchronizedHandler.fireMessage(image.Url);
|
myCoverSynchronizedHandler.fireMessage(image.getId());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,13 +21,12 @@ package org.geometerplus.fbreader.formats.fb2;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLImage;
|
import org.geometerplus.zlibrary.core.image.ZLImage;
|
||||||
import org.geometerplus.zlibrary.core.xml.*;
|
import org.geometerplus.zlibrary.core.xml.*;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
|
|
||||||
public class FB2CoverReader extends ZLXMLReaderAdapter {
|
public class FB2CoverReader extends ZLXMLReaderAdapter {
|
||||||
private boolean myReadCoverPage;
|
private boolean myReadCoverPage;
|
||||||
private String myImageReference;
|
private String myImageReference;
|
||||||
|
|
|
@ -21,6 +21,8 @@ package org.geometerplus.fbreader.formats.oeb;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.xml.*;
|
import org.geometerplus.zlibrary.core.xml.*;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
||||||
|
@ -28,8 +30,6 @@ import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
||||||
import org.geometerplus.fbreader.bookmodel.*;
|
import org.geometerplus.fbreader.bookmodel.*;
|
||||||
import org.geometerplus.fbreader.formats.xhtml.XHTMLReader;
|
import org.geometerplus.fbreader.formats.xhtml.XHTMLReader;
|
||||||
import org.geometerplus.fbreader.formats.util.MiscUtil;
|
import org.geometerplus.fbreader.formats.util.MiscUtil;
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
|
|
||||||
class Reference {
|
class Reference {
|
||||||
public final String Title;
|
public final String Title;
|
||||||
|
|
|
@ -19,13 +19,13 @@
|
||||||
|
|
||||||
package org.geometerplus.fbreader.formats.oeb;
|
package org.geometerplus.fbreader.formats.oeb;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLImage;
|
import org.geometerplus.zlibrary.core.image.ZLImage;
|
||||||
import org.geometerplus.zlibrary.core.xml.*;
|
import org.geometerplus.zlibrary.core.xml.*;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.formats.util.MiscUtil;
|
import org.geometerplus.fbreader.formats.util.MiscUtil;
|
||||||
|
|
||||||
class OEBCoverReader extends ZLXMLReaderAdapter implements XMLNamespaces, MimeTypes {
|
class OEBCoverReader extends ZLXMLReaderAdapter implements XMLNamespaces, MimeTypes {
|
||||||
|
|
|
@ -21,11 +21,11 @@ package org.geometerplus.fbreader.formats.oeb;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
||||||
import org.geometerplus.zlibrary.core.xml.*;
|
import org.geometerplus.zlibrary.core.xml.*;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.library.Book;
|
import org.geometerplus.fbreader.library.Book;
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
|
|
||||||
class OEBMetaInfoReader extends ZLXMLReaderAdapter implements XMLNamespaces {
|
class OEBMetaInfoReader extends ZLXMLReaderAdapter implements XMLNamespaces {
|
||||||
private final Book myBook;
|
private final Book myBook;
|
||||||
|
|
|
@ -23,11 +23,11 @@ import java.util.*;
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.nio.charset.CharsetDecoder;
|
import java.nio.charset.CharsetDecoder;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
||||||
import org.geometerplus.zlibrary.core.html.ZLByteBuffer;
|
import org.geometerplus.zlibrary.core.html.ZLByteBuffer;
|
||||||
import org.geometerplus.zlibrary.core.html.ZLHtmlAttributeMap;
|
import org.geometerplus.zlibrary.core.html.ZLHtmlAttributeMap;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.formats.html.HtmlReader;
|
import org.geometerplus.fbreader.formats.html.HtmlReader;
|
||||||
import org.geometerplus.fbreader.formats.html.HtmlTag;
|
import org.geometerplus.fbreader.formats.html.HtmlTag;
|
||||||
import org.geometerplus.fbreader.bookmodel.BookModel;
|
import org.geometerplus.fbreader.bookmodel.BookModel;
|
||||||
|
|
|
@ -23,12 +23,12 @@ import java.io.IOException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.zip.*;
|
import java.util.zip.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
||||||
import org.geometerplus.zlibrary.core.util.ZLInputStreamWithOffset;
|
import org.geometerplus.zlibrary.core.util.ZLInputStreamWithOffset;
|
||||||
import org.geometerplus.zlibrary.core.image.*;
|
import org.geometerplus.zlibrary.core.image.*;
|
||||||
import org.geometerplus.zlibrary.text.model.*;
|
import org.geometerplus.zlibrary.text.model.*;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.bookmodel.*;
|
import org.geometerplus.fbreader.bookmodel.*;
|
||||||
import org.geometerplus.fbreader.formats.pdb.*;
|
import org.geometerplus.fbreader.formats.pdb.*;
|
||||||
|
|
||||||
|
|
|
@ -19,11 +19,11 @@
|
||||||
|
|
||||||
package org.geometerplus.fbreader.formats.xhtml;
|
package org.geometerplus.fbreader.formats.xhtml;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
import org.geometerplus.zlibrary.core.image.ZLFileImage;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.formats.util.MiscUtil;
|
import org.geometerplus.fbreader.formats.util.MiscUtil;
|
||||||
import org.geometerplus.fbreader.bookmodel.BookReader;
|
import org.geometerplus.fbreader.bookmodel.BookReader;
|
||||||
|
|
||||||
|
|
|
@ -21,9 +21,9 @@ package org.geometerplus.fbreader.network;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLBase64EncodedImage;
|
import org.geometerplus.zlibrary.core.image.ZLBase64EncodedImage;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.Paths;
|
import org.geometerplus.fbreader.Paths;
|
||||||
|
|
||||||
final class Base64EncodedImage extends ZLBase64EncodedImage {
|
final class Base64EncodedImage extends ZLBase64EncodedImage {
|
||||||
|
|
|
@ -22,11 +22,11 @@ package org.geometerplus.fbreader.network;
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.net.*;
|
import java.net.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLLoadableImage;
|
import org.geometerplus.zlibrary.core.image.ZLLoadableImage;
|
||||||
import org.geometerplus.zlibrary.core.network.ZLNetworkManager;
|
import org.geometerplus.zlibrary.core.network.ZLNetworkManager;
|
||||||
import org.geometerplus.zlibrary.core.network.ZLNetworkException;
|
import org.geometerplus.zlibrary.core.network.ZLNetworkException;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.Paths;
|
import org.geometerplus.fbreader.Paths;
|
||||||
|
|
||||||
public final class NetworkImage extends ZLLoadableImage implements MimeTypes {
|
public final class NetworkImage extends ZLLoadableImage implements MimeTypes {
|
||||||
|
@ -133,10 +133,17 @@ public final class NetworkImage extends ZLLoadableImage implements MimeTypes {
|
||||||
return makeImageFileName(Url, mimeType());
|
return makeImageFileName(Url, mimeType());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getId() {
|
||||||
|
return Url;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void synchronize() {
|
public void synchronize() {
|
||||||
synchronizeInternal(false);
|
synchronizeInternal(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void synchronizeFast() {
|
public void synchronizeFast() {
|
||||||
synchronizeInternal(true);
|
synchronizeInternal(true);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,10 +22,10 @@ package org.geometerplus.fbreader.network;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.image.ZLImage;
|
import org.geometerplus.zlibrary.core.image.ZLImage;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.tree.FBTree;
|
import org.geometerplus.fbreader.tree.FBTree;
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
|
|
||||||
public abstract class NetworkTree extends FBTree {
|
public abstract class NetworkTree extends FBTree {
|
||||||
protected NetworkTree(int level) {
|
protected NetworkTree(int level) {
|
||||||
|
|
|
@ -21,6 +21,7 @@ package org.geometerplus.fbreader.network.authentication.litres;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.xml.*;
|
import org.geometerplus.zlibrary.core.xml.*;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.network.*;
|
import org.geometerplus.fbreader.network.*;
|
||||||
|
@ -157,7 +158,7 @@ class LitResXMLReader extends LitResAuthenticationXMLReader {
|
||||||
} else if (TAG_BOOK_TITLE == tag) {
|
} else if (TAG_BOOK_TITLE == tag) {
|
||||||
myState = BOOK_TITLE;
|
myState = BOOK_TITLE;
|
||||||
} else if (TAG_ANNOTATION == tag) {
|
} else if (TAG_ANNOTATION == tag) {
|
||||||
myHtmlToString.setupTextContent("text/xhtml");
|
myHtmlToString.setupTextContent(MimeTypes.MIME_TEXT_XHTML);
|
||||||
myState = ANNOTATION;
|
myState = ANNOTATION;
|
||||||
} else if (TAG_DATE == tag) {
|
} else if (TAG_DATE == tag) {
|
||||||
myState = DATE;
|
myState = DATE;
|
||||||
|
|
|
@ -21,9 +21,9 @@ package org.geometerplus.fbreader.network.opds;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
import org.geometerplus.fbreader.network.atom.ATOMLink;
|
import org.geometerplus.fbreader.network.atom.ATOMLink;
|
||||||
|
|
||||||
class CatalogInfoReader implements OPDSFeedReader {
|
class CatalogInfoReader implements OPDSFeedReader {
|
||||||
|
|
|
@ -24,16 +24,14 @@ import java.io.ByteArrayInputStream;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
|
|
||||||
import org.geometerplus.zlibrary.core.html.*;
|
import org.geometerplus.zlibrary.core.html.*;
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.xml.ZLXMLProcessor;
|
import org.geometerplus.zlibrary.core.xml.ZLXMLProcessor;
|
||||||
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
||||||
import org.geometerplus.fbreader.formats.xhtml.XHTMLReader;
|
|
||||||
|
|
||||||
|
import org.geometerplus.fbreader.formats.xhtml.XHTMLReader;
|
||||||
import org.geometerplus.fbreader.network.atom.ATOMConstants;
|
import org.geometerplus.fbreader.network.atom.ATOMConstants;
|
||||||
|
|
||||||
|
|
||||||
public class HtmlToString {
|
public class HtmlToString {
|
||||||
|
|
||||||
private String myLastOpenedTag;
|
private String myLastOpenedTag;
|
||||||
private String myTextType;
|
private String myTextType;
|
||||||
private StringBuilder myTextContent = new StringBuilder();
|
private StringBuilder myTextContent = new StringBuilder();
|
||||||
|
@ -61,8 +59,8 @@ public class HtmlToString {
|
||||||
result = new String(contentArray);
|
result = new String(contentArray);
|
||||||
}
|
}
|
||||||
if (result != null) {
|
if (result != null) {
|
||||||
if (myTextType == ATOMConstants.TYPE_HTML || myTextType == ATOMConstants.TYPE_XHTML
|
if (myTextType == ATOMConstants.TYPE_HTML || myTextType == ATOMConstants.TYPE_XHTML ||
|
||||||
|| myTextType == "text/html" || myTextType == "text/xhtml") {
|
myTextType == MimeTypes.MIME_TEXT_HTML || myTextType == MimeTypes.MIME_TEXT_XHTML) {
|
||||||
myHtmlToStringReader.readFromString(result);
|
myHtmlToStringReader.readFromString(result);
|
||||||
result = myHtmlToStringReader.getString();
|
result = myHtmlToStringReader.getString();
|
||||||
}
|
}
|
||||||
|
@ -73,7 +71,7 @@ public class HtmlToString {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void processTextContent(boolean closeTag, String tag, ZLStringMap attributes, String bufferContent) {
|
public void processTextContent(boolean closeTag, String tag, ZLStringMap attributes, String bufferContent) {
|
||||||
if (myTextType == ATOMConstants.TYPE_XHTML || myTextType == "text/xhtml") {
|
if (myTextType == ATOMConstants.TYPE_XHTML || myTextType == MimeTypes.MIME_TEXT_XHTML) {
|
||||||
if (bufferContent != null) {
|
if (bufferContent != null) {
|
||||||
myTextContent.append(bufferContent);
|
myTextContent.append(bufferContent);
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,10 +21,9 @@ package org.geometerplus.fbreader.network.opds;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
|
|
||||||
import org.geometerplus.fbreader.network.*;
|
import org.geometerplus.fbreader.network.*;
|
||||||
import org.geometerplus.fbreader.network.atom.*;
|
import org.geometerplus.fbreader.network.atom.*;
|
||||||
import org.geometerplus.fbreader.network.authentication.litres.LitResBookshelfItem;
|
import org.geometerplus.fbreader.network.authentication.litres.LitResBookshelfItem;
|
||||||
|
|
|
@ -23,13 +23,12 @@ import java.util.HashMap;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.filesystem.ZLResourceFile;
|
import org.geometerplus.zlibrary.core.filesystem.ZLResourceFile;
|
||||||
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
||||||
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
|
|
||||||
import org.geometerplus.fbreader.network.INetworkLink;
|
import org.geometerplus.fbreader.network.INetworkLink;
|
||||||
import org.geometerplus.fbreader.network.NetworkLibrary;
|
import org.geometerplus.fbreader.network.NetworkLibrary;
|
||||||
import org.geometerplus.fbreader.network.atom.ATOMLink;
|
import org.geometerplus.fbreader.network.atom.ATOMLink;
|
||||||
|
|
|
@ -21,15 +21,12 @@ package org.geometerplus.fbreader.network.opds;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
import org.geometerplus.zlibrary.core.xml.*;
|
import org.geometerplus.zlibrary.core.xml.*;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
|
|
||||||
import org.geometerplus.fbreader.network.atom.*;
|
import org.geometerplus.fbreader.network.atom.*;
|
||||||
|
|
||||||
|
|
||||||
class OPDSXMLReader extends ZLXMLReaderAdapter {
|
class OPDSXMLReader extends ZLXMLReaderAdapter {
|
||||||
|
|
||||||
public static final String KEY_PRICE = "price";
|
public static final String KEY_PRICE = "price";
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -23,13 +23,12 @@ import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.XMLNamespaces;
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
import org.geometerplus.zlibrary.core.util.ZLNetworkUtil;
|
||||||
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
import org.geometerplus.zlibrary.core.xml.ZLStringMap;
|
||||||
import org.geometerplus.zlibrary.core.xml.ZLXMLReaderAdapter;
|
import org.geometerplus.zlibrary.core.xml.ZLXMLReaderAdapter;
|
||||||
|
|
||||||
import org.geometerplus.fbreader.constants.XMLNamespaces;
|
|
||||||
import org.geometerplus.fbreader.constants.MimeTypes;
|
|
||||||
|
|
||||||
class OpenSearchXMLReader extends ZLXMLReaderAdapter {
|
class OpenSearchXMLReader extends ZLXMLReaderAdapter {
|
||||||
|
|
||||||
private final List<OpenSearchDescription> myDescriptions;
|
private final List<OpenSearchDescription> myDescriptions;
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
* 02110-1301, USA.
|
* 02110-1301, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.geometerplus.fbreader.constants;
|
package org.geometerplus.zlibrary.core.constants;
|
||||||
|
|
||||||
public interface MimeTypes {
|
public interface MimeTypes {
|
||||||
// MIME types / application
|
// MIME types / application
|
||||||
|
@ -35,6 +35,8 @@ public interface MimeTypes {
|
||||||
|
|
||||||
// MIME types / text
|
// MIME types / text
|
||||||
String MIME_TEXT_HTML = "text/html";
|
String MIME_TEXT_HTML = "text/html";
|
||||||
|
String MIME_TEXT_XHTML = "text/xhtml";
|
||||||
|
String MIME_TEXT_PLAIN = "text/plain";
|
||||||
|
|
||||||
// MIME images
|
// MIME images
|
||||||
String MIME_IMAGE_PREFIX = "image/";
|
String MIME_IMAGE_PREFIX = "image/";
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
* 02110-1301, USA.
|
* 02110-1301, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.geometerplus.fbreader.constants;
|
package org.geometerplus.zlibrary.core.constants;
|
||||||
|
|
||||||
public interface XMLNamespaces {
|
public interface XMLNamespaces {
|
||||||
String DublinCorePrefix = "http://purl.org/dc/elements";
|
String DublinCorePrefix = "http://purl.org/dc/elements";
|
||||||
|
|
|
@ -36,4 +36,5 @@ public abstract class ZLLoadableImage extends ZLSingleImage {
|
||||||
|
|
||||||
public abstract void synchronize();
|
public abstract void synchronize();
|
||||||
public abstract void synchronizeFast();
|
public abstract void synchronizeFast();
|
||||||
|
public abstract String getId();
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
|
|
||||||
package org.geometerplus.zlibrary.ui.android.image;
|
package org.geometerplus.zlibrary.ui.android.image;
|
||||||
|
|
||||||
|
import org.geometerplus.zlibrary.core.constants.MimeTypes;
|
||||||
import org.geometerplus.zlibrary.core.image.*;
|
import org.geometerplus.zlibrary.core.image.*;
|
||||||
|
|
||||||
public final class ZLAndroidImageManager extends ZLImageManager {
|
public final class ZLAndroidImageManager extends ZLImageManager {
|
||||||
|
@ -27,7 +28,7 @@ public final class ZLAndroidImageManager extends ZLImageManager {
|
||||||
return (ZLAndroidImageData)image;
|
return (ZLAndroidImageData)image;
|
||||||
} else if (image instanceof ZLSingleImage) {
|
} else if (image instanceof ZLSingleImage) {
|
||||||
ZLSingleImage singleImage = (ZLSingleImage)image;
|
ZLSingleImage singleImage = (ZLSingleImage)image;
|
||||||
if ("image/palm".equals(singleImage.mimeType())) {
|
if (MimeTypes.MIME_IMAGE_PALM.equals(singleImage.mimeType())) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
byte[] array = singleImage.byteData();
|
byte[] array = singleImage.byteData();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue