/**
* Published document.
*/
- private final transient Document _my;
+ private final transient Document _mydoc;
/**
* Document state.
*/
*/
private transient String _version;
/**
- * Presentation state.
+ * Presentation state: open, deep open, closed.
+ *
+ * @see DocumentFacade.State
*/
private transient State _display;
/**
setApplicationSettings(applicationSettings);
_owner = opened;
_me = represented;
- _my = _me.value();
- _state = _my.getProgressState();
+ _mydoc = _me.value();
+ _state = _mydoc.getProgressState();
_display = State.closed;
refresh(); // Initializes the presentation of my document //NOPMD:RKV: to be reviewed
setApplicationSettings(applicationSettings);
_owner = opened;
_me = null; // Marks the history context
- _my = represented;
- _state = _my.getProgressState(); // In reality, HISTORY
+ _mydoc = represented;
+ _state = _mydoc.getProgressState(); // In reality, HISTORY
_display = State.open; // Because the given document is a history document
_description = ResourceBundle.getBundle("som",
applicationSettings.getCurrentLocale()).getString(
"history.creation")
- + " " + _my.getAuthor().toString();
- _uses = null;
- _exports = null;
- _history = null;
- _popup = null;
+ + " " + _mydoc.getAuthor().toString();
this.refresh(); // Initializes the presentation of my document
}
public void develop() {
if (_display == State.open) { // Opening the history of document, if exist
if (_history.isEmpty()) {
- collectHistory(_my);
+ collectHistory(_mydoc);
}
_display = State.deepopen;
} else { // Opening the document
}
}
if (_exports == null) {
- List<Relation> relation = _my
+ List<Relation> relation = _mydoc
.getRelations(ConvertsRelation.class);
_exports = new ArrayList<FileFacade>(relation.size());
}
}
if (_history == null) {
- if (_my.getPreviousVersion() != null
+ if (_mydoc.getPreviousVersion() != null
|| _state == ProgressState.inCHECK
|| _state == ProgressState.APPROVED) {
_history = new ArrayList<HistoryFacade>();
}
}
+ /**
+ * Close the presentation tree partially.
+ */
public void reduce() {
if (_display == State.deepopen) {
_display = State.open;
}
}
+ /**
+ * Close the presentation tree.
+ */
public void reduceAll() {
_display = State.closed;
}
// Getters
// ==============================================================================================================================
+ /**
+ * Get a list of attached files presentations.
+ *
+ * @return list of FileFacades
+ */
public List<FileFacade> getAttachments() {
return _exports;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getDate()
+ */
public String getDate() {
return _date;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getDescription()
+ */
public String getDescription() {
return _description;
}
+ /**
+ * Get a document edit icon file name according to the document state.
+ *
+ * @return the icon file name
+ */
public String getEditIcon() {
return "icon.ed" + _state + ICON_EXT;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getFileIcon()
+ */
public String getFileIcon() {
return _icon;
}
+ /**
+ * Get the document history presentation.
+ *
+ * @return the history facade
+ */
public List<HistoryFacade> getHistory() {
return _history;
}
+ /**
+ * Get the document persistent id.
+ *
+ * @return the document persistent id
+ */
public String getIndex() {
- return String.valueOf(_my.getIndex());
+ return String.valueOf(_mydoc.getIndex());
}
+ /**
+ * Get the document contextual popup menu.
+ *
+ * @return the document popup menu
+ */
public PopupMenu getPopup() { // Contextualizes the pop-up
_popup
.setContext("document", new DocumentRights(_owner.getUser(),
return _popup; // callers must "use" the returned pop-up before getting another pop-up
}
+ /**
+ * Get the document presentation state: open, deep open, closed.
+ *
+ * @return the document presentation state
+ * @see DocumentFacade.State
+ */
public String getPresentationState() {
return _display.toString();
}
+ /**
+ * Get document progress state.
+ *
+ * @return the document state
+ * @see ProgressState
+ */
public String getProgressState() {
return _state.toString();
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getSharingIcon()
+ */
public String getSharingIcon() {
return _sharing;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getSize()
+ */
public String getSize() {
return _size;
}
+ /**
+ * Get a document state icon file name according to the document state.
+ *
+ * @return the icon file name
+ */
public String getStateIcon() {
return "icon." + _state + ICON_EXT;
}
+ /**
+ * Get the document title.
+ *
+ * @return the document title
+ */
public String getTitle() {
- return _my.getTitle();
+ return _mydoc.getTitle();
}
+ /**
+ * Get the URL of the document in the repository.
+ *
+ * @return the document URL
+ */
public String getURL() {
return _surl;
}
+ /**
+ * Get the list of used documents presentations.
+ *
+ * @return list of DocumentFacades
+ */
public List<DocumentFacade> getUses() {
return _uses;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getVersion()
+ */
public String getVersion() {
return _version;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.splat.simer.HistoryFacade#getVersioningIcon()
+ */
public String getVersioningIcon() {
return _updated;
}
+ /**
+ * Check if this is a representation of the given document publication.
+ *
+ * @param represented
+ * the document publication
+ * @return true if this facades represents the given document publication
+ */
public boolean isFacadeOf(final Publication represented) {
return _me.equals(represented);
}
SimpleDateFormat datstring = new SimpleDateFormat(custom
.getString("date.format"), getApplicationSettings()
.getCurrentLocale()); // Locale date display format
- Revision.Format verstring = new Revision.Format(getProjectSettings()
- .getRevisionPattern());
- String path = _my.getSourceFile().getRelativePath();
+ String path = _mydoc.getSourceFile().getRelativePath();
String[] mapping = ApplicationSettings.getViewersMapping();
for (int i = 0; i < mapping.length; i++) {
- org.splat.dal.bo.som.File export = _my.getAttachedFile(mapping[i]);
+ org.splat.dal.bo.som.File export = _mydoc
+ .getAttachedFile(mapping[i]);
if (export != null) {
path = export.getRelativePath();
break;
_surl = _surl.replaceAll("'", "\\\\'");
// Document state (overridable by the publication - see below)
- _state = _my.getProgressState();
- _version = _my.getVersion(); // May be null
+ _state = _mydoc.getProgressState();
+ _version = _mydoc.getVersion(); // May be null
initIcons();
// Document description
- VersionsRelation versions = (VersionsRelation) _my
+ VersionsRelation versions = (VersionsRelation) _mydoc
.getFirstRelation(VersionsRelation.class);
if (versions != null) {
_description = versions.getDescription();
}
// File details
if (_state != ProgressState.EXTERN) {
+ Revision.Format verstring = new Revision.Format(
+ getProjectSettings().getRevisionPattern());
_version = verstring.format(_version);
}
- _size = sizstring.format(_my.getSourceFile().asFile().length() / 1000);
- _date = datstring.format(_my.getLastModificationDate());
+ _size = sizstring
+ .format(_mydoc.getSourceFile().asFile().length() / 1000);
+ _date = datstring.format(_mydoc.getLastModificationDate());
// Refresh of the history in case of promotion
if (_display == State.deepopen) {
_history.clear();
- this.collectHistory(_my);
+ this.collectHistory(_mydoc);
}
initPopupMenu();
}
*/
private final void initIcons() {
// Icons definition
- String format = _my.getFormat();
+ String format = _mydoc.getFormat();
if ("xml".equals(format)) {
- format = XMLDocument.getActualFormat(_my.getSourceFile().asFile());
- if ("schema".equals(_my.getType().getName())) {
+ format = XMLDocument.getActualFormat(_mydoc.getSourceFile()
+ .asFile());
+ if ("schema".equals(_mydoc.getType().getName())) {
format = "schema";
}
}
}
if (_me == null) { // Facade in the history folder
- if (_my.isVersioned()) { // History of the last version
- if (_my.isPublished()) {
+ if (_mydoc.isVersioned()) { // History of the last version
+ if (_mydoc.isPublished()) {
_sharing = "image.share.png"; // Not correct if published in a previous version of the study
_updated = "icon.hold.png";
}
}
}
} else {
- if (_me.getOwnerStudy().shares(_my)) {
+ if (_me.getOwnerStudy().shares(_mydoc)) {
_sharing = "image.share.png";
_updated = "icon.hold.png";
}
// Private services
// ==============================================================================================================================
+ /**
+ * Collect the document's previous versions presentation.
+ *
+ * @param given
+ * the document to explore
+ */
private final void collectHistory(final Document given) {
VersionsRelation versions = (VersionsRelation) given
.getFirstRelation(VersionsRelation.class);