Home | History | Annotate | Download | only in samplegrouping
      1 /*
      2  * Copyright 2012 castLabs, Berlin
      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.googlecode.mp4parser.boxes.mp4.samplegrouping;
     18 
     19 import com.coremedia.iso.Hex;
     20 
     21 import java.nio.ByteBuffer;
     22 
     23 /**
     24  *
     25  */
     26 public class UnknownEntry extends GroupEntry {
     27     private ByteBuffer content;
     28 
     29     public UnknownEntry() {
     30     }
     31 
     32     public ByteBuffer getContent() {
     33         return content;
     34     }
     35 
     36     public void setContent(ByteBuffer content) {
     37         this.content = (ByteBuffer) content.duplicate().rewind();
     38     }
     39 
     40     @Override
     41     public void parse(ByteBuffer byteBuffer) {
     42         this.content = (ByteBuffer) byteBuffer.duplicate().rewind();
     43     }
     44 
     45     @Override
     46     public ByteBuffer get() {
     47         return content.duplicate();
     48     }
     49 
     50     @Override
     51     public String toString() {
     52         ByteBuffer bb = content.duplicate();
     53         bb.rewind();
     54         byte[] b = new byte[bb.limit()];
     55         bb.get(b);
     56         return "UnknownEntry{" +
     57                 "content=" + Hex.encodeHex(b) +
     58                 '}';
     59     }
     60 
     61     @Override
     62     public boolean equals(Object o) {
     63         if (this == o) {
     64             return true;
     65         }
     66         if (o == null || getClass() != o.getClass()) {
     67             return false;
     68         }
     69 
     70         UnknownEntry that = (UnknownEntry) o;
     71 
     72         if (content != null ? !content.equals(that.content) : that.content != null) {
     73             return false;
     74         }
     75 
     76         return true;
     77     }
     78 
     79     @Override
     80     public int hashCode() {
     81         return content != null ? content.hashCode() : 0;
     82     }
     83 }
     84