UnixOwnersHeader.java
package com.github.junrar.rarfile;
import com.github.junrar.io.Raw;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class UnixOwnersHeader extends SubBlockHeader {
private static final Logger logger = LoggerFactory.getLogger(UnixOwnersHeader.class);
private int ownerNameSize;
private int groupNameSize;
private String owner;
private String group;
public UnixOwnersHeader(SubBlockHeader sb, byte[] uoHeader) {
super(sb);
int pos = 0;
ownerNameSize = Raw.readShortLittleEndian(uoHeader, pos) & 0xFFFF;
pos += 2;
groupNameSize = Raw.readShortLittleEndian(uoHeader, pos) & 0xFFFF;
pos += 2;
if (pos + ownerNameSize < uoHeader.length) {
owner = new String(uoHeader, pos, ownerNameSize);
}
pos += ownerNameSize;
if (pos + groupNameSize < uoHeader.length) {
group = new String(uoHeader, pos, groupNameSize);
}
}
/**
* @return the group
*/
public String getGroup() {
return group;
}
/**
* @param group the group to set
*/
public void setGroup(String group) {
this.group = group;
}
/**
* @return the groupNameSize
*/
public int getGroupNameSize() {
return groupNameSize;
}
/**
* @param groupNameSize the groupNameSize to set
*/
public void setGroupNameSize(int groupNameSize) {
this.groupNameSize = groupNameSize;
}
/**
* @return the owner
*/
public String getOwner() {
return owner;
}
/**
* @param owner the owner to set
*/
public void setOwner(String owner) {
this.owner = owner;
}
/**
* @return the ownerNameSize
*/
public int getOwnerNameSize() {
return ownerNameSize;
}
/**
* @param ownerNameSize the ownerNameSize to set
*/
public void setOwnerNameSize(int ownerNameSize) {
this.ownerNameSize = ownerNameSize;
}
/* (non-Javadoc)
* @see de.innosystec.unrar.rarfile.SubBlockHeader#print()
*/
public void print() {
super.print();
if (logger.isInfoEnabled()) {
logger.info("ownerNameSize: {}", ownerNameSize);
logger.info("owner: {}", owner);
logger.info("groupNameSize: {}", groupNameSize);
logger.info("group: {}", group);
}
}
}