question: @ NotNull private static DefaultMutableTreeNode updateTreeStructure ( @ NotNull DefaultMutableTreeNode treeNode , @ NotNull ZipFile compressedApk ) { long compressedSize = 0 ; ApkEntry entry = ApkEntry . fromNode ( treeNode ) ; assert entry != null ; if ( treeNode . getChildCount ( ) > 0 ) { for ( int i = 0 ; i < treeNode . getChildCount ( ) ; i ++ ) { DefaultMutableTreeNode childNode = updateTreeStructure ( ( DefaultMutableTreeNode ) treeNode . getChildAt ( i ) , compressedApk ) ; compressedSize += ( ( ApkEntry ) childNode . getUserObject ( ) ) . getCompressedSize ( ) ; } } else { ZipEntry ze = compressedApk . getEntry ( ApkFileSystem . getInstance ( ) . getRelativePath ( entry . getFile ( ) ) ) ; if ( ze == null ) { compressedSize = - 1 ; } else { compressedSize = ze . getCompressedSize ( ) ; } } entry . setCompressedSize ( compressedSize ) ; return treeNode ; }
target:  Updates and returns the given tree structure with info about the compressed size of each node.