Create the following example code in you .thrift file:

struct Track {
  1: string Track_Name,
  2: string Genre,
  3: string Artist,
  4: string Album,
  5: i32 TotalTime,
  6: i32 ElapsedTime,
}

struct mediaList {
	1: list<Track> tracks
}

services to be added later

Compile your .thrift file to generate your gen-js folder with the Javascript Code.

There will now be two Javascript object types created. One that is a Track and one that is a List of Tracks. Both of these will have a .read and a .write access functions for interfacing to them.

The code generated (thrift compiler v0.9.0) should look like this:

veh.track.Track = function(args) {
  this.Track_Name = null;
  this.Genre = null;
  this.Artist = null;
  this.Album = null;
  this.TotalTime = null;
  this.ElapsedTime = null;
  if (args) {
    if (args.Track_Name !== undefined) {
      this.Track_Name = args.Track_Name;
    }
    if (args.Genre !== undefined) {
      this.Genre = args.Genre;
    }
    if (args.Artist !== undefined) {
      this.Artist = args.Artist;
    }
    if (args.Album !== undefined) {
      this.Album = args.Album;
    }
    if (args.TotalTime !== undefined) {
      this.TotalTime = args.TotalTime;
    }
    if (args.ElapsedTime !== undefined) {
      this.ElapsedTime = args.ElapsedTime;
    }
  }
}; 

and

veh.track.mediaList = function(args) {
  this.tracks = null;
  if (args) {
    if (args.tracks !== undefined) {
      this.tracks = args.tracks;
    }
  }
};

I left out the .read/.write routines and leave it to you to check out.

Now, include the .js file into your html page and use the objects such as:

currenttrack = new track.Track({Track_Name:"Hells Bells", Genre:"Rock", Artist:"ac-dc", Album:"Back in Black", TotalTime:1244, ElapsedTime:146665});
  • No labels