OptionDescription (long data) { int _groupName = (int)(data >> 48 & 0xffff); int _id = (int)(data >> 32 & 0xffff); int _hit = (int)(data >> 16 & 0xffff); int _path = (int)(data & 0xffff); assert /*_id >= 0 && */_id < Short.MAX_VALUE; assert /*_hit >= 0 && */_hit <= Short.MAX_VALUE; assert /*_path >= 0 && */_path <= Short.MAX_VALUE; assert /*_groupName >= 0 && */_groupName <= Short.MAX_VALUE; String groupName = _groupName == Short.MAX_VALUE ? null : identifierTable.fromId(_groupName).toString(); String configurableId = identifierTable.fromId(_id).toString(); String hit = _hit == Short.MAX_VALUE ? null : identifierTable.fromId(_hit).toString(); String path = _path == Short.MAX_VALUE ? null : identifierTable.fromId(_path).toString(); return new OptionDescription(null, configurableId, hit, path, groupName); }