public abstract class

SaveAsTransform

extends FolderObjectExplorerTransform
java.lang.Object
   ↳ com.microstrategy.web.transform.AbstractTransform
     ↳ com.microstrategy.web.transform.AbstractLayoutTransform
       ↳ com.microstrategy.web.app.transforms.AbstractAppTransform
         ↳ com.microstrategy.web.app.transforms.AbstractEditorTransform
           ↳ com.microstrategy.web.app.transforms.AbstractObjectExplorerTransform
             ↳ com.microstrategy.web.app.transforms.AbstractObjectExplorerTreeTransform
               ↳ com.microstrategy.web.app.transforms.FolderObjectExplorerTransform
                 ↳ com.microstrategy.web.app.transforms.SaveAsTransform
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

This transform renders the save as dialog to the user.

Summary

Constants
String FP_CREATE_FOLDER_JS Name for the formal parameter: createFolderJS
String FP_FOLDER_BROWSER_STYLE Constant for the name of the folderBrowserStyle Formal Parameter.
String FP_SAVE_BUTTON_LABEL_ID Constant for the name of the saveButtonLabelID Formal Parameter.
String FP_SAVE_LABEL_ID Constant for the name of the saveLabelID Formal Parameter.
String FP_SHOW_CREATE_FOLDER_BUTTON Constant for the name of the showCreateFolderButton Formal Parameter.
String FP_SHOW_CREATE_FOLDER_DIAOLOG Constant for the name of the showCreateFolderDialog Formal Parameter.
[Expand]
Inherited Constants
From class com.microstrategy.web.app.transforms.AbstractObjectExplorerTreeTransform
From class com.microstrategy.web.app.transforms.AbstractObjectExplorerTransform
From class com.microstrategy.web.app.transforms.AbstractEditorTransform
From class com.microstrategy.web.app.transforms.AbstractAppTransform
Fields
public FormalParameter confirmOWHelpTopic Indicates the help topic for inner confirm overwrite dialog.
public FormalParameter createFolderJS Formal parameter: The JavaScript code to execute when clicking on the create Folder Button
public FormalParameter folderBrowserStyle Indicates the style to use when rendering the contents of the folder to save the object to.
public FormalParameter newFloderHelpTopic Indicates the help topic for inner new folder dialog.
public FormalParameter saveButtonLabelID Indicates the descriptor Id for the save button.
public FormalParameter saveLabelID Indicates the descriptor Id for the save as label.
public FormalParameter showCreateFolderButton Indicates if the create folder toggle button is to be shown or not.
public FormalParameter showCreateFolderDialog Indicates if the create new folder dialog is to be shown or not.
[Expand]
Inherited Fields
From class com.microstrategy.web.app.transforms.FolderObjectExplorerTransform
From class com.microstrategy.web.app.transforms.AbstractObjectExplorerTreeTransform
From class com.microstrategy.web.app.transforms.AbstractObjectExplorerTransform
From class com.microstrategy.web.app.transforms.AbstractEditorTransform
From class com.microstrategy.web.app.transforms.AbstractAppTransform
Public Constructors
SaveAsTransform()
Default constructor.
Public Methods
abstract String getConfirmationTitle()
Returns the title for the save as confirmation dialog
String getDescription()
Returns the textual description of the transform
String getOverwriteTitle()
Return the title for the Overwrite dialog
SaveAsBean getSaveAsBean()
Get the SaveAsBean instance being transformed
Class getSupportedBeanType()
Returns the supported bean type.
void initializeTransform(Transformable data)
Initializes properties of this transform required for the proper generation of the HTML to present to the user.
boolean isEmptyList()
Returns true if the list of elements from this folder available for display (getContents()) is empty or not.
void renderAdvancedOptionsDialog(MarkupOutput out)
Generates the Advanced Options dialog in the Save As page
abstract void renderConfirmationButtonBar(MarkupOutput out)
Renders the confirmation buttons to the MarkupOutput instance
void renderConfirmationContents(MarkupOutput out)
This method renders the confimation page after the save as action.
void renderConfirmationSuccessfulMessage(MarkupOutput out)
Renders the confirmation title to the MarkupOutput instance
void renderConfirmationTitle(MarkupOutput out)
Renders the confirmation title to the MarkupOutput instance
void renderCreateFolderButton(MarkupOutput out)
Renders the button that opens the create folder dialog
void renderEditorContents(MarkupOutput out)
Renders the contents of the current tab displayed on the Save As dialog.
void renderFolderBrowsingOptions(MarkupOutput out)
Generates the HTML for showing the user the possible options for navigating the hierarchy of folder ancestors of the current folder being viewed, or a set of fixed folders where the new object can be saved.
void renderFolderCreateButtonBar(MarkupOutput out)
Renders the HTML for displaying the button bar contents for the Folder Create dialog.
void renderFolderCreateDescription(MarkupOutput out)
Renders the HTML for displaying a text field where the user can type in the description of the new folder to create.
void renderFolderCreateName(MarkupOutput out)
Renders the HTML for displaying a text field where the user can type in the name of the new folder to create.
void renderFolderCreateOptionsDialog(MarkupOutput out)
Generates the dialog for allowing the user to create a new folder with its description.
abstract void renderOptions(MarkupOutput out)
Renders the prompt and/or linked filter template options as the case may be.
abstract void renderOverwriteButtonBar(MarkupOutput out)
Renders the button bar for the overwrite dialog when the object that the user is trying to save already exists.
void renderOverwriteContents(MarkupOutput out)
Render the content to facilitate overwriting of a report/filter/template.
abstract void renderOverwriteMessage(MarkupOutput out)
The message to render on the overwrite dialog when the object that the user is trying to save already exists.
void renderOverwriteTitle(MarkupOutput out)
Renders the title for the Overwrite dialog to the MarkupOutput instance
void renderSaveAsContents(MarkupOutput out)
Generates the Save As dialog contents, including the HTML information for presenting the user the Save As options for the object and the dialog for creating new folders if required.
void renderSaveAsDescription(MarkupOutput out)
Renders the HTML for displaying a text field where the user can type in the description of the new object to create.
void renderSaveAsFolderContents(MarkupOutput out)
This method renders the contents of the current folder for the Save As dialog.
void renderSaveAsJavaScript(MarkupOutput out)
Renders any JavaScript content required at the end of the Save As dialog.
void renderSaveAsName(MarkupOutput out)
Renders the HTML for displaying a text field where the user can type in the name of the new object to create.
void transformForRequestSuccessful(MarkupOutput out)
Transform when the status is "Successful".
void transformForRequestWaitingForUserInput(MarkupOutput out)
Generates the graphical output for the SaveAsBean instance being transformed.
Protected Methods
ArrayList generateAncestorsOptionTags()
Generates the series of option tags to add to the combo box for showing the user the possible places where the new object can be saved, based on privileges, access rights and current location of the object.
AnchorTag generateAnchor(WebEvent event)
Overwrites the parent method by setting default attribute information
Editor generateSimpleEditor()
Generic method that creates an Editor instance and initializes it with basic settings.
SelectTag getAncestorsSelectTag()
Returns a >select< Tag instance object containing the list\ of the object's ancestors
WebEvent getBrowseParentEvent()
Obtain an instance of the WebEvent to use for browsing to the folder where the object has just been saved.
WebEvent getCancelEvent()
Obtain an instance of the WebEvent to use for cancelling the Save As request
WebEvent getCancelOverwriteEvent()
Obtain an instance of the WebEvent to use for cancelling the overwritting of the new object
WebEvent getComboBrowseEvent()
WebEvent to associate to the folder browse navigation available with the combo box provided with ancestor and fixed folder information.
WebEvent getCreateFolderEvent()
Obtain an instance of the WebEvent to use for creating a new folder
WebEvent getHelpEvent()
This method is deprecated. No replacement.
String getObjectDescription()
Obtain the object description to use for the new object to create
String getObjectName()
Obtain the object name to use for the new object to create
WebEvent getRepromptEvent()
WebEvent getReturnToEvent()
Obtain an instance of the WebEvent to use for returning to the original object that was saved
abstract WebEvent getSaveEvent()
Obtain an instance of the WebEvent to use for saving the new object
boolean hasReadBrowseAccess(FolderBean fb, int sysFolder)
Checks to see if the given sysFolder has browse and read access.
void initEditor(Editor editor)
Initializes the editor with the global settings.
void renderJavascript(MarkupOutput out)
This method should be used by the Editor transforms to generate any javascript necessary.
void updateAncestorFolderArray(ArrayList tags, String sysFolderName, int sysFolder)
Create an option tag entry on the ancestor folder array for the given system folder.
[Expand]
Inherited Methods
From class com.microstrategy.web.app.transforms.FolderObjectExplorerTransform
From class com.microstrategy.web.app.transforms.AbstractObjectExplorerTreeTransform
From class com.microstrategy.web.app.transforms.AbstractObjectExplorerTransform
From class com.microstrategy.web.app.transforms.AbstractEditorTransform
From class com.microstrategy.web.app.transforms.AbstractAppTransform
From class com.microstrategy.web.transform.AbstractLayoutTransform
From class com.microstrategy.web.transform.AbstractTransform
From class java.lang.Object
From interface com.microstrategy.web.app.transforms.AppTransform
From interface com.microstrategy.web.transform.LayoutTransform
From interface com.microstrategy.web.transform.Transform

Constants

public static final String FP_CREATE_FOLDER_JS

Name for the formal parameter: createFolderJS

Constant Value: "createFolderJS"

public static final String FP_FOLDER_BROWSER_STYLE

Constant for the name of the folderBrowserStyle Formal Parameter.

Constant Value: "folderBrowserStyle"

public static final String FP_SAVE_BUTTON_LABEL_ID

Constant for the name of the saveButtonLabelID Formal Parameter.

Constant Value: "saveButtonLabelID"

public static final String FP_SAVE_LABEL_ID

Constant for the name of the saveLabelID Formal Parameter.

See Also
Constant Value: "saveLabelID"

public static final String FP_SHOW_CREATE_FOLDER_BUTTON

Constant for the name of the showCreateFolderButton Formal Parameter.

Constant Value: "showCreateFolderButton"

public static final String FP_SHOW_CREATE_FOLDER_DIAOLOG

Constant for the name of the showCreateFolderDialog Formal Parameter.

Constant Value: "showCreateFolderDialog"

Fields

public FormalParameter confirmOWHelpTopic

Indicates the help topic for inner confirm overwrite dialog.

public FormalParameter createFolderJS

Formal parameter: The JavaScript code to execute when clicking on the create Folder Button

public FormalParameter folderBrowserStyle

Indicates the style to use when rendering the contents of the folder to save the object to.

public FormalParameter newFloderHelpTopic

Indicates the help topic for inner new folder dialog.

public FormalParameter saveButtonLabelID

Indicates the descriptor Id for the save button.

public FormalParameter saveLabelID

Indicates the descriptor Id for the save as label.

public FormalParameter showCreateFolderButton

Indicates if the create folder toggle button is to be shown or not. The value can true or false. If the value is false, the button to open the create folder dialog will not be shown. If the value is set to false and the value of the showCreateFolderDialog formal parameter is set to true, the create folder dialog will always be shown open on the save page. This formal parameter is applicaable only in DHTML mode as in HTML mode the create fodler dialog is always open.

public FormalParameter showCreateFolderDialog

Indicates if the create new folder dialog is to be shown or not. The value can true or false. If the value is false, then the user will never be able to see the create new folder dialog and he will never see the toggle button used to open the create folder dialog either. Please note the the toggle button is available only in the DHTML mode.

Public Constructors

public SaveAsTransform ()

Default constructor. Initializes formal parameters.

Public Methods

public abstract String getConfirmationTitle ()

Returns the title for the save as confirmation dialog

Returns
  • The title for the save as confirmation dialog

public String getDescription ()

Returns the textual description of the transform

Returns
  • the description of the transform

public String getOverwriteTitle ()

Return the title for the Overwrite dialog

Returns
  • the title for the Overwrite dialog

public SaveAsBean getSaveAsBean ()

Get the SaveAsBean instance being transformed

Returns
  • the current SaveAsBean instance being transformed

public Class getSupportedBeanType ()

Returns the supported bean type. This transform supports SaveAsBean instances

Returns
  • the class of the bean supported by this transform.

public void initializeTransform (Transformable data)

Initializes properties of this transform required for the proper generation of the HTML to present to the user.

Parameters
data Transformableinstance to transform with this class.

public boolean isEmptyList ()

Returns true if the list of elements from this folder available for display (getContents()) is empty or not.

public void renderAdvancedOptionsDialog (MarkupOutput out)

Generates the Advanced Options dialog in the Save As page

Parameters
out MarkupOutput instance with the output

public abstract void renderConfirmationButtonBar (MarkupOutput out)

Renders the confirmation buttons to the MarkupOutput instance

Parameters
out MarkupOutput instance with the output

public void renderConfirmationContents (MarkupOutput out)

This method renders the confimation page after the save as action. If the object saved is a report the user will have the option to either run the new report or go back to the old report or browse other reports from the parent folder of the old report.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderConfirmationSuccessfulMessage (MarkupOutput out)

Renders the confirmation title to the MarkupOutput instance

Parameters
out MarkupOutput instance with the output

public void renderConfirmationTitle (MarkupOutput out)

Renders the confirmation title to the MarkupOutput instance

Parameters
out MarkupOutput instance with the output

public void renderCreateFolderButton (MarkupOutput out)

Renders the button that opens the create folder dialog

Parameters
out MarkupOutput

public void renderEditorContents (MarkupOutput out)

Renders the contents of the current tab displayed on the Save As dialog. Internally calls the following methods: renderFolderBrowsingOptions, renderSaveAsFolderContents, renderSaveAsName, renderSaveAsDescription and renderSaveAsAdvancedOptions. Except for the advanced options, currently there's no major difference between the contents generated for the dialog if a Report, Template or Filter are selected, since they are mainly inner fields sent for identifying the type of object to save.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderFolderBrowsingOptions (MarkupOutput out)

Generates the HTML for showing the user the possible options for navigating the hierarchy of folder ancestors of the current folder being viewed, or a set of fixed folders where the new object can be saved.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderFolderCreateButtonBar (MarkupOutput out)

Renders the HTML for displaying the button bar contents for the Folder Create dialog.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderFolderCreateDescription (MarkupOutput out)

Renders the HTML for displaying a text field where the user can type in the description of the new folder to create. The event argument related with the identifier of this field comes from the getCreateFolderEvent WebEvent, named EnumFolderBeanEvents.FOLDER_EVENT_ARGUMENT_FOLDER_DESCRIPTION

Parameters
out MarkupOutput instance with the output by this transoform

public void renderFolderCreateName (MarkupOutput out)

Renders the HTML for displaying a text field where the user can type in the name of the new folder to create. The event argument related with the identifier of this field comes from the getCreateFolderEvent WebEvent, named EnumFolderBeanEvents.FOLDER_EVENT_ARGUMENT_FOLDER_NAME

Parameters
out MarkupOutput instance with the output by this transoform

public void renderFolderCreateOptionsDialog (MarkupOutput out)

Generates the dialog for allowing the user to create a new folder with its description. Internally calls renderFolderCreateName and renderFolderCreateDescription for displaying the fields available to the user.

Parameters
out MarkupOutput instance with the output by this transoform

public abstract void renderOptions (MarkupOutput out)

Renders the prompt and/or linked filter template options as the case may be.

Parameters
out MarkupOutput instance with the output by this transoform

public abstract void renderOverwriteButtonBar (MarkupOutput out)

Renders the button bar for the overwrite dialog when the object that the user is trying to save already exists.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderOverwriteContents (MarkupOutput out)

Render the content to facilitate overwriting of a report/filter/template.

Parameters
out MarkupOutput instance with the output by this transoform

public abstract void renderOverwriteMessage (MarkupOutput out)

The message to render on the overwrite dialog when the object that the user is trying to save already exists.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderOverwriteTitle (MarkupOutput out)

Renders the title for the Overwrite dialog to the MarkupOutput instance

Parameters
out MarkupOutput instance with the output

public void renderSaveAsContents (MarkupOutput out)

Generates the Save As dialog contents, including the HTML information for presenting the user the Save As options for the object and the dialog for creating new folders if required. Calls the renderEditor and renderFolderCreateOptionsDialog methods.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderSaveAsDescription (MarkupOutput out)

Renders the HTML for displaying a text field where the user can type in the description of the new object to create. The event argument related with the identifier of this field comes from the getSaveEvent WebEvent, named EnumSaveAsEvents.WebEventArgumentSaveAsReportDescription

Parameters
out MarkupOutput instance with the output by this transoform

public void renderSaveAsFolderContents (MarkupOutput out)

This method renders the contents of the current folder for the Save As dialog. It shows the contents of the current folder the user is in by rendering the FolderBean instance of the SaveAsBean bean with the style specified on its folderContentStyle property.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderSaveAsJavaScript (MarkupOutput out)

Renders any JavaScript content required at the end of the Save As dialog.

Parameters
out MarkupOutput instance with the output by this transoform

public void renderSaveAsName (MarkupOutput out)

Renders the HTML for displaying a text field where the user can type in the name of the new object to create. The event argument related with the identifier of this field comes from the getSaveEvent WebEvent, named EnumSaveAsEvents.WebEventArgumentSaveAsReportName

Parameters
out MarkupOutput instance with the output by this transoform

public void transformForRequestSuccessful (MarkupOutput out)

Transform when the status is "Successful". Just calls transformForRequestWaitingForUserInput, which is the correct status. This transform, after collecting and saving the information, expects to go back to its previous page.

Parameters
out output by this transform

public void transformForRequestWaitingForUserInput (MarkupOutput out)

Generates the graphical output for the SaveAsBean instance being transformed. Calls the renderOverwriteContents method if the name given to the new object is the same as another object already existing on the folder; renderConfirmationContents if the save method went successful; or renderSaveAsContents if the save options should be presented to the user.

Parameters
out MarkupOutput instance with the output by this transoform

Protected Methods

protected ArrayList generateAncestorsOptionTags ()

Generates the series of option tags to add to the combo box for showing the user the possible places where the new object can be saved, based on privileges, access rights and current location of the object.

Returns
  • an array of Tag instances corresponding to the different OPTION that will be provided to the user.

protected AnchorTag generateAnchor (WebEvent event)

Overwrites the parent method by setting default attribute information

Parameters
event WebEvent instance to use as base for the link
Returns
  • AnchorTag instance initialized with the event information

protected Editor generateSimpleEditor ()

Generic method that creates an Editor instance and initializes it with basic settings. The dialog to use it should customize it as required for the final desired output to be achieved.

Returns
  • An instance of the editor with some basic properties like webcomponent and CSS styles already set on it.

protected SelectTag getAncestorsSelectTag ()

Returns a >select< Tag instance object containing the list\ of the object's ancestors

Returns
  • SelectTag

protected WebEvent getBrowseParentEvent ()

Obtain an instance of the WebEvent to use for browsing to the folder where the object has just been saved.

Returns
  • WebEvent instance initialized, null if it could not be created.

protected WebEvent getCancelEvent ()

Obtain an instance of the WebEvent to use for cancelling the Save As request

Returns
  • WebEvent instance initialized, null if it could not be created.

protected WebEvent getCancelOverwriteEvent ()

Obtain an instance of the WebEvent to use for cancelling the overwritting of the new object

Returns
  • WebEvent instance initialized, null if it could not be created.

protected WebEvent getComboBrowseEvent ()

WebEvent to associate to the folder browse navigation available with the combo box provided with ancestor and fixed folder information.

Returns
  • WebEvent instance initialized if available, null if event could not be found.

protected WebEvent getCreateFolderEvent ()

Obtain an instance of the WebEvent to use for creating a new folder

Returns
  • WebEvent instance initialized, null if it could not be created.

protected WebEvent getHelpEvent ()

This method is deprecated.
No replacement.

Obtain an instance of the WebEvent to use for getting help on the the Save As action

Returns
  • WebEvent instance initialized, null if it could not be created.

protected String getObjectDescription ()

Obtain the object description to use for the new object to create

Returns
  • String value with the description of the new object to be created. It can come from the original object or whatever the user might had previously specified for it.

protected String getObjectName ()

Obtain the object name to use for the new object to create

Returns
  • String value with the name of the new object to be created. It can come from the original object name or whatever the user might had previously specified for it.

protected WebEvent getRepromptEvent ()

protected WebEvent getReturnToEvent ()

Obtain an instance of the WebEvent to use for returning to the original object that was saved

Returns
  • WebEvent instance initialized, null if it could not be created.

protected abstract WebEvent getSaveEvent ()

Obtain an instance of the WebEvent to use for saving the new object

Returns
  • WebEvent instance initialized, null if it could not be created.

protected boolean hasReadBrowseAccess (FolderBean fb, int sysFolder)

Checks to see if the given sysFolder has browse and read access.

Parameters
fb The folder bean which uses the given sysFolder to determine the access rights.
sysFolder The value of the named folder EnumDSSXMLFolderNames for which we want to check for read and browse access.
Returns
  • true if the given sysFolder has browse and read access.

protected void initEditor (Editor editor)

Initializes the editor with the global settings.

Parameters
editor the Editor to modify.

protected void renderJavascript (MarkupOutput out)

This method should be used by the Editor transforms to generate any javascript necessary.
The default implementation includes a call to the ClientSideHelper to render the dynamic scrips and the registerBone call.

Parameters
out MarkupOutput where the output should be rendered.

protected void updateAncestorFolderArray (ArrayList tags, String sysFolderName, int sysFolder)

Create an option tag entry on the ancestor folder array for the given system folder. Also, it checks if this ends up being a parent of the current folder viewed. If so, then finds out all the ancestor hierarchy for displaying it also to the user. Marks the current folder viewed as selected.

Parameters
tags The list of ancestor folder options
sysFolderName The name of the system fodler which we want to render in the list of ancestor options
sysFolder The system folder for which we want to obtain ancestor information for