本文整理汇总了Java中org.eclipse.jgit.lib.ObjectIdRef.PeeledTag方法的典型用法代码示例。如果您正苦于以下问题:Java ObjectIdRef.PeeledTag方法的具体用法?Java ObjectIdRef.PeeledTag怎么用?Java ObjectIdRef.PeeledTag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.jgit.lib.ObjectIdRef
的用法示例。
在下文中一共展示了ObjectIdRef.PeeledTag方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: execute
import org.eclipse.jgit.lib.ObjectIdRef; //导入方法依赖的package包/类
public Ref execute() {
try {
final Ref value = repo.getRefDatabase().getRef(name);
if (value != null) {
return value;
}
final ObjectId treeRef = repo.resolve(name + "^{tree}");
if (treeRef != null) {
final ObjectLoader loader = repo.getObjectDatabase().newReader().open(treeRef);
if (loader.getType() == OBJ_TREE) {
return new ObjectIdRef.PeeledTag(Ref.Storage.NEW,
name,
ObjectId.fromString(name),
treeRef);
}
}
} catch (final Exception ignored) {
}
return null;
}
示例2: rowToRef
import org.eclipse.jgit.lib.ObjectIdRef; //导入方法依赖的package包/类
/**
* Parses a Cassandra refs table row and converts it to a Ref
*
* @param row a single Cassandra row to parse
* @return a ref, or null if the "row" parameter is null
* @throws IOException if an exception occurs when communicating to the
* database
* @throws IllegalStateException if the "type" field read back from the
* database is not one of the four handled
* types (@see RefType).
*/
private Ref rowToRef(Row row) throws IOException {
if (row == null) {
return null;
}
final String name = row.getString("name");
final String value = row.getString("value");
final int refType = row.getInt("type");
if (refType == RefType.PEELED_NONTAG.getValue()) {
return new ObjectIdRef.PeeledNonTag(Ref.Storage.NETWORK, name,
ObjectId.fromString(value));
} else if (refType == RefType.PEELED_TAG.getValue()) {
final String auxValue = row.getString("aux_value");
return new ObjectIdRef.PeeledTag(Ref.Storage.NETWORK, name,
ObjectId.fromString(value),
ObjectId.fromString(auxValue));
} else if (refType == RefType.UNPEELED.getValue()) {
return new ObjectIdRef.Unpeeled(Ref.Storage.NETWORK, name,
ObjectId.fromString(value));
} else if (refType == RefType.SYMBOLIC.getValue()) {
return new SymbolicRef(name, get(value));
} else {
throw new IllegalStateException("Unhandled ref type: " + refType);
}
}
示例3: putRef
import org.eclipse.jgit.lib.ObjectIdRef; //导入方法依赖的package包/类
/**
* Inserts a single ref into the database
*
* @throws IllegalStateException if the reference concrete type is not
* one of the four handled classes
* (@see RefType).
*/
private void putRef(String name, Ref r) throws IOException {
if (r instanceof SymbolicRef) {
putRow(name, RefType.SYMBOLIC, r.getTarget().getName(), "");
} else if (r instanceof ObjectIdRef.PeeledNonTag) {
putRow(name, RefType.PEELED_NONTAG, r.getObjectId().name(), "");
} else if (r instanceof ObjectIdRef.PeeledTag) {
putRow(name, RefType.PEELED_TAG, r.getObjectId().name(),
r.getPeeledObjectId().toString());
} else if (r instanceof ObjectIdRef.Unpeeled) {
putRow(name, RefType.UNPEELED, r.getObjectId().name(), "");
} else {
throw new IllegalStateException("Unhandled ref type: " + r);
}
}
示例4: toRef
import org.eclipse.jgit.lib.ObjectIdRef; //导入方法依赖的package包/类
private static Ref toRef(final RevWalk rw,
final ObjectId id,
final String name,
final boolean mustExist) throws IOException {
if (ObjectId.zeroId().equals(id)) {
return null;
}
try {
RevObject o = rw.parseAny(id);
if (o instanceof RevTag) {
RevObject p = rw.peel(o);
return new ObjectIdRef.PeeledTag(NETWORK,
name,
id,
p.copy());
}
return new ObjectIdRef.PeeledNonTag(NETWORK,
name,
id);
} catch (MissingObjectException e) {
if (mustExist) {
throw e;
}
return new ObjectIdRef.Unpeeled(NETWORK,
name,
id);
}
}