private void parseDevice(String fileName) { if (mCurPath.equals(mRoot) == false) mCurPath = mRoot; constructCurPath(fileName, true); DLNADevice device = mNameDeviceTable.get(fileName); if ((device.getType() != DLNADeviceType.DigitalMediaServer) && (device.getType() != DLNADeviceType.MobileDigitalMediaServer)) return; DLNATempFile fileins = new DLNATempFile(device); mTraceFile.push(fileins); mListContentName.clear(); // mNameContentTable.clear(); server = (MediaServer) device; server.setActionEventListener(mDLNAManager); if (localLOGV) NetLog.v(TAG, "start 1 browse : " + System.currentTimeMillis()); REQUEST_MATCH_NUM = 0; currentID = MediaServer.OBJECT_ID; mBrowseHandle = server.browse( MediaServer.OBJECT_ID, MediaServer.BrowseFlag.BrowseDirectChildren, REQUEST_MATCH_NUM, BROWSE_REQUEST, MediaServer.FILTER_BASIC_INFO, MediaServer.SORT_ASCENDING_CRITERIA_TITLE); if (localLOGV) NetLog.v(TAG, "end 1 browse : " + System.currentTimeMillis()); return; }
private void parseContent(String fileName) throws Exception { int contentType = checkContent(fileName); Content content = null; if (contentType == CONTENT_UNKNOW) { if (localLOGV) NetLog.d(TAG, "Invalid parsing file name: " + fileName); throw new Exception(); } else if (contentType == CONTENT_CHILD) { constructCurPath(fileName, true); content = mNameContentTable.get(fileName); DLNATempFile fileins = new DLNATempFile(content); mTraceFile.push(fileins); } else { content = mTraceFile.peek().getContent(); } mListContentName.clear(); // mNameContentTable.clear(); server = content.getServer(); server.setActionEventListener(mDLNAManager); if (localLOGV) NetLog.v(TAG, "start 2 browse : " + System.currentTimeMillis()); REQUEST_MATCH_NUM = 0; currentID = content.getObjectId(); mBrowseHandle = server.browse( content.getObjectId(), MediaServer.BrowseFlag.BrowseDirectChildren, REQUEST_MATCH_NUM, BROWSE_REQUEST, MediaServer.FILTER_BASIC_INFO, MediaServer.SORT_ASCENDING_CRITERIA_TITLE); if (localLOGV) NetLog.v(TAG, "end 2 browse : " + System.currentTimeMillis()); return; }