public class FileMultiUploadFieldImpl extends AbstractComponent<JmixFileUpload> implements FileMultiUploadField, org.springframework.beans.factory.InitializingBean
FileMultiUploadField.QueueUploadCompleteEvent
UploadField.DropZone, UploadField.FileUploadErrorEvent, UploadField.FileUploadEvent, UploadField.FileUploadFinishEvent, UploadField.FileUploadStartEvent
Component.Alignment, Component.BelongToFrame, Component.Disposable, Component.Editable, Component.Focusable, Component.HasCaption, Component.HasDescription, Component.HasIcon, Component.HasXmlDescriptor, Component.Wrapper
HasContextHelp.ContextHelpIconClickEvent
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
accept |
protected static int |
BYTES_IN_MEGABYTE |
protected UiComponentProperties |
componentProperties |
protected UploadField.DropZone |
dropZone |
protected java.lang.String |
dropZonePrompt |
protected java.util.Map<java.util.UUID,java.lang.String> |
files |
protected long |
fileSizeLimit |
protected io.jmix.core.Messages |
messages |
protected ComponentContainer |
pasteZone |
protected java.util.Set<java.lang.String> |
permittedExtensions |
protected java.util.UUID |
tempFileId |
protected TemporaryStorage |
temporaryStorage |
alignment, applicationContext, component, contextHelpIconClickHandler, contextHelpIconClickListener, descriptionAsHtml, element, frame, htmlSanitizerEnabled, icon, ICON_STYLE, id, parent
NAME
AUTO_SIZE, AUTO_SIZE_PX, FULL_SIZE
Constructor and Description |
---|
FileMultiUploadFieldImpl() |
Modifier and Type | Method and Description |
---|---|
io.jmix.core.common.event.Subscription |
addFileUploadErrorListener(java.util.function.Consumer<UploadField.FileUploadErrorEvent> listener)
Adds file upload error listener.
|
io.jmix.core.common.event.Subscription |
addFileUploadFinishListener(java.util.function.Consumer<UploadField.FileUploadFinishEvent> listener)
Adds file upload finish listener.
|
io.jmix.core.common.event.Subscription |
addFileUploadStartListener(java.util.function.Consumer<UploadField.FileUploadStartEvent> listener)
Adds file upload start listener.
|
io.jmix.core.common.event.Subscription |
addQueueUploadCompleteListener(java.util.function.Consumer<FileMultiUploadField.QueueUploadCompleteEvent> listener)
Adds queue upload complete listener.
|
void |
afterPropertiesSet() |
void |
clearUploads()
Clear uploads list
|
protected JmixFileUpload |
createComponent() |
protected void |
fireFileUploadError(java.lang.String fileName,
long contentLength,
java.lang.Exception cause) |
protected void |
fireFileUploadFinish(java.lang.String fileName,
long contentLength) |
protected void |
fireFileUploadStart(java.lang.String fileName,
long contentLength) |
protected void |
fireQueueUploadComplete() |
void |
focus()
Sets focus to this component
|
java.lang.String |
getAccept()
Returns comma separated types of files.
|
UploadField.DropZone |
getDropZone() |
java.lang.String |
getDropZonePrompt() |
long |
getFileSizeLimit()
Returns maximum allowed file size in bytes.
|
protected java.lang.String |
getFileSizeLimitString() |
ComponentContainer |
getPasteZone() |
java.util.Set<java.lang.String> |
getPermittedExtensions()
Returns white list of file extensions.
|
int |
getTabIndex()
Gets the tabulator index of the
HasTabIndex component. |
java.util.Map<java.util.UUID,java.lang.String> |
getUploadsMap()
Get uploads map
|
protected void |
initComponent(JmixFileUpload impl) |
void |
setAccept(java.lang.String accept)
Sets the mask for files to filter them in the file selection dialog.
|
void |
setComponentProperties(UiComponentProperties componentProperties) |
void |
setDropZone(UploadField.DropZone dropZone)
Sets drop zone reference to this upload component.
|
void |
setDropZonePrompt(java.lang.String dropZonePrompt)
Sets drop zone prompt that will be shown on drag over window with file.
|
void |
setFileSizeLimit(long fileSizeLimit)
Sets maximum allowed file size in bytes.
|
void |
setIcon(java.lang.String icon)
Set an icon by its source: "font-icon:ADD", "icons/myicon.png", "theme://createIcon", etc.
|
void |
setMessages(io.jmix.core.Messages messages) |
void |
setPasteZone(ComponentContainer pasteZone)
Sets paste zone reference to this upload component.
|
void |
setPermittedExtensions(java.util.Set<java.lang.String> permittedExtensions)
Sets white list of file extensions.
|
void |
setTabIndex(int tabIndex)
Sets the tabulator index of the
Focusable component. |
void |
setTemporaryStorage(TemporaryStorage temporaryStorage) |
addAttachListener, addDetachListener, addStyleName, assignDebugId, attached, detached, getAlignment, getCaption, getComponent, getComposition, getContextHelpIconClickHandler, getContextHelpText, getDebugId, getDescription, getEventHub, getFrame, getHeight, getHeightSizeUnit, getHtmlSanitizer, getIcon, getIconName, getIconResource, getId, getParent, getStyleName, getUiComponentProperties, getUiProperties, getWidth, getWidthSizeUnit, getXmlDescriptor, hasSubscriptions, hasValidationError, isAttached, isCaptionAsHtml, isContextHelpTextHtmlEnabled, isDescriptionAsHtml, isEnabled, isEnabledRecursive, isHtmlSanitizerEnabled, isResponsive, isVisible, isVisibleRecursive, onContextHelpIconClick, publish, removeStyleName, sanitize, setAlignment, setApplicationContext, setCaption, setCaptionAsHtml, setContextHelpIconClickHandler, setContextHelpText, setContextHelpTextHtmlEnabled, setDebugId, setDescription, setDescriptionAsHtml, setEnabled, setFrame, setHeight, setHtmlSanitizerEnabled, setIconFromSet, setId, setParent, setResponsive, setStyleName, setValidationError, setVisible, setWidth, setXmlDescriptor, unsubscribe, unwrap, unwrapComposition, unwrapCompositionOrNull, unwrapOrNull, withUnwrapped, withUnwrappedComposition
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getFrame, setFrame
getIcon, setIconFromSet
isFocusable, setFocusable
addStyleName, getAlignment, getHeight, getHeightSizeUnit, getId, getParent, getStyleName, getWidth, getWidthSizeUnit, isEnabled, isEnabledRecursive, isResponsive, isVisible, isVisibleRecursive, removeStyleName, setAlignment, setEnabled, setHeight, setHeightAuto, setHeightFull, setId, setParent, setResponsive, setSizeAuto, setSizeFull, setStyleName, setVisible, setWidth, setWidthAuto, setWidthFull, unwrap, unwrapComposition, unwrapCompositionOrNull, unwrapOrNull, withUnwrapped, withUnwrappedComposition
isCaptionAsHtml, setCaptionAsHtml
getCaption, setCaption
getDescription, setDescription
isDescriptionAsHtml, setDescriptionAsHtml
isHtmlSanitizerEnabled, setHtmlSanitizerEnabled
protected static final int BYTES_IN_MEGABYTE
protected final java.util.Map<java.util.UUID,java.lang.String> files
protected long fileSizeLimit
protected java.util.Set<java.lang.String> permittedExtensions
protected UploadField.DropZone dropZone
protected ComponentContainer pasteZone
protected java.lang.String dropZonePrompt
protected UiComponentProperties componentProperties
protected io.jmix.core.Messages messages
protected TemporaryStorage temporaryStorage
protected java.util.UUID tempFileId
protected java.lang.String accept
@Autowired public void setTemporaryStorage(TemporaryStorage temporaryStorage)
@Autowired public void setMessages(io.jmix.core.Messages messages)
@Autowired public void setComponentProperties(UiComponentProperties componentProperties)
public void afterPropertiesSet()
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
protected JmixFileUpload createComponent()
protected void initComponent(JmixFileUpload impl)
public java.util.Map<java.util.UUID,java.lang.String> getUploadsMap()
getUploadsMap
in interface FileMultiUploadField
public void clearUploads()
FileMultiUploadField
clearUploads
in interface FileMultiUploadField
public io.jmix.core.common.event.Subscription addQueueUploadCompleteListener(java.util.function.Consumer<FileMultiUploadField.QueueUploadCompleteEvent> listener)
FileMultiUploadField
addQueueUploadCompleteListener
in interface FileMultiUploadField
listener
- a listener to addpublic void setIcon(@Nullable java.lang.String icon)
Component.HasIcon
setIcon
in interface Component.HasIcon
setIcon
in class AbstractComponent<JmixFileUpload>
@Nullable public java.lang.String getAccept()
UploadField
getAccept
in interface UploadField
public void setAccept(@Nullable java.lang.String accept)
UploadField
uploadField.setAccept(".png,.jpeg");
setAccept
in interface UploadField
accept
- comma separated types of files@Nullable public UploadField.DropZone getDropZone()
getDropZone
in interface UploadField
public void setDropZone(@Nullable UploadField.DropZone dropZone)
UploadField
setDropZone
in interface UploadField
dropZone
- drop zone descriptor@Nullable public ComponentContainer getPasteZone()
getPasteZone
in interface UploadField
public void setPasteZone(@Nullable ComponentContainer pasteZone)
UploadField
setPasteZone
in interface UploadField
pasteZone
- paste zone container@Nullable public java.lang.String getDropZonePrompt()
getDropZonePrompt
in interface UploadField
public void setDropZonePrompt(@Nullable java.lang.String dropZonePrompt)
UploadField
setDropZonePrompt
in interface UploadField
dropZonePrompt
- drop zone promptprotected void fireFileUploadStart(java.lang.String fileName, long contentLength)
protected void fireFileUploadFinish(java.lang.String fileName, long contentLength)
protected void fireFileUploadError(java.lang.String fileName, long contentLength, java.lang.Exception cause)
protected void fireQueueUploadComplete()
public long getFileSizeLimit()
UploadField
getFileSizeLimit
in interface UploadField
public void setFileSizeLimit(long fileSizeLimit)
UploadField
setFileSizeLimit
in interface UploadField
@Nullable public java.util.Set<java.lang.String> getPermittedExtensions()
UploadField
getPermittedExtensions
in interface UploadField
public void setPermittedExtensions(@Nullable java.util.Set<java.lang.String> permittedExtensions)
UploadField
uploadField.setPermittedExtensions(Sets.newHashSet(".png", ".jpg"));
setPermittedExtensions
in interface UploadField
permittedExtensions
- permitted extensions.public void focus()
Component.Focusable
focus
in interface Component.Focusable
public int getTabIndex()
Component.Focusable
HasTabIndex
component.getTabIndex
in interface Component.Focusable
HasTabIndex
componentpublic void setTabIndex(int tabIndex)
Component.Focusable
Focusable
component.
The tab index property is used to specify the order in which the
fields are focused when the user presses the Tab key. Components with
a defined tab index are focused sequentially first, and then the
components with no tab index.setTabIndex
in interface Component.Focusable
tabIndex
- tab indexprotected java.lang.String getFileSizeLimitString()
public io.jmix.core.common.event.Subscription addFileUploadStartListener(java.util.function.Consumer<UploadField.FileUploadStartEvent> listener)
UploadField
addFileUploadStartListener
in interface UploadField
listener
- a listener to addpublic io.jmix.core.common.event.Subscription addFileUploadFinishListener(java.util.function.Consumer<UploadField.FileUploadFinishEvent> listener)
UploadField
addFileUploadFinishListener
in interface UploadField
listener
- a listener to addpublic io.jmix.core.common.event.Subscription addFileUploadErrorListener(java.util.function.Consumer<UploadField.FileUploadErrorEvent> listener)
UploadField
addFileUploadErrorListener
in interface UploadField
listener
- a listener to add