didlobjectcontentfilter.java

来自「国外的j2me播放器软件」· Java 代码 · 共 35 行

JAVA
35
字号
package no.auc.one.portableplayer.lms;

import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import javax.microedition.rms.RecordFilter;

public final class DidlObjectContentFilter implements javax.microedition.rms.RecordFilter {
    private int parentId;
    
    public DidlObjectContentFilter(int parentId) {
        this.parentId = parentId;
    }

    public boolean matches(byte[] candidate) {
        int candidateParentId = Integer.MIN_VALUE;

        try {
            ByteArrayInputStream bais = new ByteArrayInputStream(candidate);
            DataInputStream dis = new DataInputStream(bais);

            //
            // Must skip classType + id of the candidate to find the parentId.
            //
            dis.skipBytes(dis.readUnsignedShort() + 4);
            
            candidateParentId = dis.readInt();
        } catch (java.io.IOException ioe) {
            System.out.println("ioexception while filtering records");
            ioe.printStackTrace();
        }

        return (candidateParentId == parentId);
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?