@SuppressWarnings("synthetic-access") @Override public InputStream some( final Some<ZipEntry> s) throws IOException { final InputStream ri = ArchiveZip.this.zip.getInputStream(s.get()); assert ri != null; return ri; } });
/** * Produce a new {@code Some} value. * * @param x The value * @param <T> The type of values * * @return A new {@code Some} value * * @since 1.3.0 */ public static <T> Some<T> some( final T x) { return new Some<T>(x); }
/** * <p> * Return {@link Some} containing {@code x}. * </p> * * @param <T> The type of values * @param x The value * * @return An optional value */ public static <T> OptionType<T> some( final T x) { return Some.some(x); } }
@Override public Long some( final Some<ZipEntry> s) { final Long rs = Long.valueOf(s.get().getSize()); assert rs != null; return rs; } })
/** * <p> * If {@code x == null}, return {@link None}, else return {@link Some} * containing {@code x}. * </p> * * @param <T> The type of values * @param x The value * * @return An optional value */ public static <T> OptionType<T> of( final @Nullable T x) { if (x == null) { return None.none(); } return Some.some(x); }
@Override public Calendar some( final Some<ZipEntry> s) { c.setTimeInMillis(s.get().getTime()); return c; } });
@Override public Calendar some( final Some<FileReference<T>> s) throws FilesystemError { return Archive.this.getModificationTimeActual(s.get()); } });
@Override public Unit some( final Some<String> s) { items.add(s.get()); return Unit.unit(); } });
@Override public Unit some( final Some<PathReal> s) throws FilesystemError { final File real = new File(new File(s.get().toString()), archive); if (real.exists() == false) { throw FilesystemError.archiveNonexistent(archive); } Filesystem.this.mountInternal(new PathReal(real), mount); return Unit.unit(); } });
@Override public String visitSectionNumber( final SASectionNumber sn) throws Exception { final OptionType<SASection> s = document.getSection(sn); if (s.isSome()) { final Some<SASection> some = (Some<SASection>) s; final StringBuilder sb = new StringBuilder(); sb.append(sn.sectionNumberFormat()); sb.append(". "); sb.append(some.get().getTitle().getActual()); return sb.toString(); } throw new UnreachableCodeException(); } });
@Override public Boolean some( final Some<T> s) throws FilesystemError { final T q = s.get(); switch (q.getType()) { case FS_REF_ARCHIVE: { final FSReferenceArchive ra = (FSReferenceArchive) q; final Boolean rq = Boolean.valueOf(ra.ref.getType() == Type.TYPE_DIRECTORY); assert rq != null; return rq; } case FS_REF_VIRTUAL_DIRECTORY: { return Filesystem.TRUE_NOT_NULL; } } throw new UnreachableCodeException(); } });
@Override public Boolean some( final Some<T> s) throws FilesystemError { final T rr = s.get(); switch (rr.getType()) { case FS_REF_ARCHIVE: { final FSReferenceArchive ra = (FSReferenceArchive) rr; final Boolean b = Boolean.valueOf(ra.ref.getType() == Type.TYPE_FILE); assert b != null; return b; } case FS_REF_VIRTUAL_DIRECTORY: { return Filesystem.FALSE_NOT_NULL; } } throw new UnreachableCodeException(); } });
@Override public SortedSet<String> some( final Some<FileReference<ArchiveDirectoryKind>> s) throws FilesystemError { final FileReference<ArchiveDirectoryKind> ar = s.get(); final ArchiveDirectoryReference ra = (ArchiveDirectoryReference) ar; switch (ra.getType()) { case TYPE_DIRECTORY: { final String[] fs = ra.getActual().list(); final SortedSet<String> ts = new TreeSet<String>(); for (final String f : fs) { ts.add(f); } return ts; } case TYPE_FILE: { throw FilesystemError.notDirectory(path.toString()); } } throw new UnreachableCodeException(); } });
@Override public void onBodyEnd( final Element body) { if (inserts.getBodyEnd().isSome()) { final Some<Element> some = (Some<Element>) inserts.getBodyEnd(); body.appendChild(some.get().copy()); } }
@Override public Long some( final Some<FileReference<T>> s) throws FilesystemError { final FileReference<T> r = s.get(); switch (r.getType()) { case TYPE_DIRECTORY: { throw FilesystemError.notFile(path.toString()); } case TYPE_FILE: { final Long k = Long.valueOf(Archive.this.getFileSizeActual(r)); assert k != null; return k; } } throw new UnreachableCodeException(); } })
@SuppressWarnings("synthetic-access") @Override public SortedSet<String> some( final Some<FileReference<ArchiveZipKind>> s) throws FilesystemError { final FileReference<ArchiveZipKind> ar = s.get(); final ArchiveZipReference ra = (ArchiveZipReference) ar; switch (ra.getType()) { case TYPE_DIRECTORY: { return ArchiveZip.this.listDirectoryInternal(ra); } case TYPE_FILE: { throw FilesystemError.notDirectory(path.toString()); } } throw new UnreachableCodeException(); } });
throws FilesystemError final T rf = s.get(); switch (rf.getType()) { case FS_REF_ARCHIVE:
@Override public @Nullable Element onBodyStart( final Element body) { if (inserts.getBodyStart().isSome()) { final Some<Element> some = (Some<Element>) inserts.getBodyStart(); body.appendChild(some.get().copy()); } return null; }
private static Element navigationBarTitleRowCellUp( final SADocument document, final OptionType<SASegmentNumber> current) throws Exception { final String[] c = new String[1]; c[0] = "navbar_up_title_cell"; final Element etc = SXHTML.elementWithClasses("td", SXHTML.NO_TYPE, c); if (current.isSome()) { final Some<SASegmentNumber> current_some = (Some<SASegmentNumber>) current; final OptionType<SASegmentNumber> up = document.segmentGetUp(current_some.get()); if (up.isSome()) { final Some<SASegmentNumber> up_some = (Some<SASegmentNumber>) up; etc.appendChild(SDocumentXHTMLWriterMulti .navigationBarTitleForSegment(document, up_some.get())); } else { etc.appendChild(document.getTitle().getActual()); } } return etc; }
@Override public InputStream some( final Some<FileReference<T>> s) throws FilesystemError { final FileReference<T> r = s.get(); switch (r.getType()) { case TYPE_DIRECTORY: { throw FilesystemError.notFile(path.toString()); } case TYPE_FILE: { return Archive.this.openFileActual(r); } } throw new UnreachableCodeException(); } });