• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2008 CoreMedia AG, Hamburg
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.coremedia.iso.boxes.vodafone;
18 
19 import com.coremedia.iso.IsoTypeReader;
20 import com.coremedia.iso.IsoTypeWriter;
21 import com.coremedia.iso.Utf8;
22 import com.googlecode.mp4parser.AbstractFullBox;
23 
24 import java.nio.ByteBuffer;
25 
26 /**
27  * Vodafone specific box. Usage unclear.
28  */
29 public class ContentDistributorIdBox extends AbstractFullBox {
30     public static final String TYPE = "cdis";
31 
32     private String language;
33     private String contentDistributorId;
34 
ContentDistributorIdBox()35     public ContentDistributorIdBox() {
36         super(TYPE);
37     }
38 
getLanguage()39     public String getLanguage() {
40         return language;
41     }
42 
getContentDistributorId()43     public String getContentDistributorId() {
44         return contentDistributorId;
45     }
46 
getContentSize()47     protected long getContentSize() {
48         return 2 + Utf8.utf8StringLengthInBytes(contentDistributorId) + 5;
49     }
50 
51     @Override
_parseDetails(ByteBuffer content)52     public void _parseDetails(ByteBuffer content) {
53         parseVersionAndFlags(content);
54         language = IsoTypeReader.readIso639(content);
55         contentDistributorId = IsoTypeReader.readString(content);
56     }
57 
58     @Override
getContent(ByteBuffer byteBuffer)59     protected void getContent(ByteBuffer byteBuffer) {
60         writeVersionAndFlags(byteBuffer);
61         IsoTypeWriter.writeIso639(byteBuffer, language);
62         byteBuffer.put(Utf8.convert(contentDistributorId));
63         byteBuffer.put((byte) 0);
64 
65     }
66 
toString()67     public String toString() {
68         return "ContentDistributorIdBox[language=" + getLanguage() + ";contentDistributorId=" + getContentDistributorId() + "]";
69     }
70 }
71