Register
Submit a solution
The challenge is finished.

Challenge Overview

Overview

The Hercules Player University apps are a suite of applications (web, iOS, and Android) that allow students on various Universities to get their content delivered over the IP network.  This content includes linear (live TV) and “on demand” content from various providers.

This application is in production and working as expected.  We are maintaining it and adding new features.

This module focuses on DRM provisioning, specifically this module will refactor the implementation of DRM provisioning in the Hercules Player University app JavaScript code, speed up the provisioning/de-provisioning process and implement the DRM token refresh feature.

This assembly will implement all changes to the DRM provisioning code.

DRMService

DRMService is the service that provides DRM related functions, it replaces the "Drm" class in the existing codebase.

Please refer to TCUML "DRM Service Class Diagram" for implementation details of the DRMService.

Dropping "Drm"

The "Drm" class in existing codebase (videoPlayer.js#1274-1735) will be dropped in this assembly.

Miscellaneous Changes

The exact code changes are provided in the forum.  

Reviewers

Reviewers must test the following:

1) Provisioning / token acquisition

2) Token renewal

3) Deprovisioning

4) Playback with the XSCT token acquired

5) Once a user has logged in, they should no longer be prompted for login until:

a) The user clears their cache (saved token is destroyed)

b) The token cannot be renewed

Testing

The code is provided in the forum.  It can be hosted locally in Mac OS X for testing with some simple shell scripts.  The scripts shouldn't be too hard to adapt to Linux or Windows for localhost testing.  No VMs will be available for this contest.

Deliverables

Updated Source Code

Deployment Guide

 

Technology overview

JavaScript

jQuery 2.0.3

SWFObject 2.2

jQuery Mobile 1.3.2

Flash ActionScript 3

 

Existing Documents

Class Diagram

Sequence Diagrams

Application Design Specification

Assembly Specification



Final Submission Guidelines

Please see above

ELIGIBLE EVENTS:

2014 TopCoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30042285