package com.droidworks.parsers.rss.itunes; import com.droidworks.util.StringUtils; public class DurationParser { public long parse(String duration) { int colonCount = StringUtils.charCount(duration, ':'); long seconds = 0; // handle seconds if (colonCount == 0) { seconds = Long.parseLong(duration); } else if (colonCount == 1) { String[] parts = duration.split(":"); seconds = Integer.parseInt(parts[0]) * 60; seconds += Integer.parseInt(parts[1]); } else if (colonCount == 2) { // handle hh:mm:ss String[] parts = duration.split(":"); seconds = Integer.parseInt(parts[0]) * 3600; seconds += Integer.parseInt(parts[1]) * 60; seconds += Integer.parseInt(parts[2]); } else { throw new RuntimeException("Failure parsing duration"); } return seconds; } }